@import "https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500;600&family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@400;500;600;700;800&display=swap";:root{--bg-dark:#070913;--bg-card:#111827b3;--bg-glass:#ffffff08;--border-glass:#ffffff14;--border-hover:#38bdf84d;--primary-cyan:#38bdf8;--primary-purple:#a855f7;--primary-orange:#f97316;--primary-green:#10b981;--text-main:#f3f4f6;--text-muted:#9ca3af;--text-dim:#6b7280;--font-sans:"Inter", system-ui, sans-serif;--font-heading:"Outfit", system-ui, sans-serif;--font-mono:"Fira Code", monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);font-family:var(--font-sans);background-image:radial-gradient(circle at 15% 15%,#38bdf814 0%,#0000 40%),radial-gradient(circle at 85% 75%,#a855f714 0%,#0000 40%);background-attachment:fixed;min-height:100vh;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5{font-family:var(--font-heading);color:#fff;letter-spacing:-.02em}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:16px;transition:transform .2s,border-color .2s,box-shadow .2s;box-shadow:0 8px 32px #0000005e}.glass-panel:hover{border-color:var(--border-hover)}.glass-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#38bdf826,#a855f726);border:1px solid #38bdf84d;border-radius:10px;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-weight:600;transition:all .2s;display:inline-flex}.glass-button:hover{border-color:var(--primary-cyan);background:linear-gradient(135deg,#38bdf84d,#a855f74d);transform:translateY(-2px);box-shadow:0 0 15px #38bdf866}.glass-button-secondary{border:1px solid var(--border-glass);color:var(--text-main);cursor:pointer;background:#ffffff0d;border-radius:10px;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-weight:500;transition:all .2s;display:inline-flex}.glass-button-secondary:hover{border-color:var(--text-muted);background:#ffffff1a}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0003}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}pre,code{font-family:var(--font-mono)}pre{color:#e6edf3;border:1px solid #ffffff1a;border-radius:12px;margin:1rem 0;padding:1.2rem;font-size:.9rem;overflow-x:auto;background:#0d1117!important}code{color:var(--primary-cyan);background:#ffffff14;border-radius:6px;padding:.2rem .4rem;font-size:.9em}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:9999px;align-items:center;gap:.3rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-cyan{color:var(--primary-cyan);background:#38bdf826;border:1px solid #38bdf84d}.badge-orange{color:var(--primary-orange);background:#f9731626;border:1px solid #f973164d}.badge-purple{color:var(--primary-purple);background:#a855f726;border:1px solid #a855f74d}.badge-green{color:var(--primary-green);background:#10b98126;border:1px solid #10b9814d}.progress-bar-bg{background:#ffffff14;border-radius:9999px;width:100%;height:8px;overflow:hidden}.progress-bar-fill{border-radius:9999px;height:100%;transition:width .4s}@keyframes pulseGlow{0%,to{opacity:.8}50%{opacity:1;filter:drop-shadow(0 0 10px #38bdf899)}}.pulse-glow{animation:2s ease-in-out infinite pulseGlow}.markdown-body h3{color:#fff;border-bottom:1px solid var(--border-glass);margin:1.75rem 0 .8rem;padding-bottom:.4rem;font-size:1.3rem;font-weight:800}.markdown-body>h3:first-child{margin-top:0}.markdown-body p{color:#e5e7eb;margin:0 0 1rem}.markdown-body ul,.markdown-body ol{margin:0 0 1.1rem;padding-left:1.4rem}.markdown-body li{color:#e5e7eb;margin-bottom:.45rem}.markdown-body li::marker{color:var(--primary-cyan)}.markdown-body strong{color:#fff;font-weight:700}.markdown-body em{color:var(--text-muted)}.markdown-body code{color:#7dd3fc;white-space:nowrap;background:#38bdf81f;border:1px solid #38bdf833;border-radius:5px;padding:.12em .4em;font-family:Fira Code,JetBrains Mono,Consolas,monospace;font-size:.9em}.markdown-body table{border-collapse:collapse;width:100%;margin:0 0 1.25rem;font-size:.95rem;display:block;overflow-x:auto}.markdown-body th,.markdown-body td{border:1px solid var(--border-glass);text-align:left;padding:.6rem .8rem}.markdown-body th{color:#fff;background:#38bdf81a;font-weight:700}.markdown-body td{color:#e5e7eb}.markdown-body tr:nth-child(2n) td{background:#ffffff08}.login-screen{background:radial-gradient(1200px 700px at 15% -10%,#38bdf829,#0000 60%),radial-gradient(1000px 700px at 85% 110%,#a855f72e,#0000 60%),#070913;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;animation:.55s both loginFadeIn;display:flex;position:relative;overflow:hidden}.login-leaving{animation:.5s forwards loginFadeOut}@keyframes loginFadeIn{0%{opacity:0}to{opacity:1}}@keyframes loginFadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.04)}}.login-orbs{pointer-events:none;position:absolute;inset:0}.login-orb{filter:blur(70px);opacity:.5;will-change:transform;border-radius:50%;position:absolute}.login-orb-1{background:linear-gradient(135deg,#38bdf8,#6366f1);width:340px;height:340px;animation:16s ease-in-out infinite orbA;top:-80px;left:-70px}.login-orb-2{background:linear-gradient(135deg,#a855f7,#ec4899);width:300px;height:300px;animation:19s ease-in-out infinite orbB;bottom:-90px;right:-60px}.login-orb-3{opacity:.32;background:linear-gradient(135deg,#10b981,#38bdf8);width:210px;height:210px;animation:22s ease-in-out infinite reverse orbA;top:55%;left:8%}.login-orb-4{opacity:.25;background:linear-gradient(135deg,#f59e0b,#ef4444);width:170px;height:170px;animation:17s ease-in-out infinite reverse orbB;top:8%;right:16%}@keyframes orbA{0%,to{transform:translate(0)scale(1)}33%{transform:translate(70px,50px)scale(1.12)}66%{transform:translate(-40px,90px)scale(.92)}}@keyframes orbB{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-80px,-60px)scale(1.15)}}.login-particles{pointer-events:none;position:absolute;inset:0}.login-particle{opacity:0;background:#38bdf8bf;border-radius:50%;width:5px;height:5px;animation:linear infinite particleRise;position:absolute;bottom:-12px;box-shadow:0 0 10px #38bdf8cc}@keyframes particleRise{0%{opacity:0;transform:translateY(0)scale(.6)}12%{opacity:.9}80%{opacity:.35}to{opacity:0;transform:translateY(-100vh)scale(1.15)}}.login-card{z-index:2;text-align:center;border-radius:24px;width:100%;max-width:420px;padding:2.75rem 2.25rem 2rem;animation:.7s cubic-bezier(.22,1,.36,1) both loginRise;position:relative}@keyframes loginRise{0%{opacity:0;transform:translateY(34px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.login-logo-wrap{width:116px;height:116px;margin:0 auto 1.4rem;position:relative}.login-logo{background:linear-gradient(135deg,#38bdf8 0%,#6366f1 50%,#a855f7 100%);border-radius:24px;justify-content:center;align-items:center;animation:4.2s ease-in-out infinite logoFloat,2.6s ease-in-out infinite logoGlow;display:flex;position:absolute;inset:18px;box-shadow:0 12px 34px #38bdf866,inset 0 0 0 1px #ffffff24}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes logoGlow{0%,to{box-shadow:0 12px 34px #38bdf866,inset 0 0 0 1px #ffffff24}50%{box-shadow:0 16px 46px #a855f78c,inset 0 0 0 1px #ffffff38}}.login-ring{border:1.5px dashed #38bdf873;border-radius:50%;animation:14s linear infinite ringSpin;position:absolute;inset:0}.login-ring-reverse{border-style:solid;border-color:#a855f759;animation:9s linear infinite reverse ringSpin;inset:8px}@keyframes ringSpin{to{transform:rotate(360deg)}}.login-orbit-dot{background:#fbbf24;border-radius:50%;width:9px;height:9px;margin:-4.5px;animation:5.5s linear infinite orbit;position:absolute;top:50%;left:50%;box-shadow:0 0 12px #fbbf24e6}@keyframes orbit{0%{transform:rotate(0)translate(58px)rotate(0)}to{transform:rotate(360deg)translate(58px)rotate(-360deg)}}.login-brand{animation:.7s cubic-bezier(.22,1,.36,1) .12s both loginRise}.login-badge{animation:.7s cubic-bezier(.22,1,.36,1) .24s both loginRise}.login-form{margin-top:1.6rem;animation:.7s cubic-bezier(.22,1,.36,1) .34s both loginRise}.login-skip{animation:.7s cubic-bezier(.22,1,.36,1) .46s both loginRise}.login-note{animation:.7s cubic-bezier(.22,1,.36,1) .54s both loginRise}.login-title{letter-spacing:-.03em;margin-bottom:.35rem;font-size:2.1rem;font-weight:800}.login-title-accent{background:linear-gradient(120deg,#38bdf8,#a855f7);color:#0000;-webkit-background-clip:text;background-clip:text}.login-subtitle{color:var(--text-muted);justify-content:center;align-items:center;gap:.4rem;margin-bottom:1rem;font-size:.85rem;display:flex}.login-badge{color:#38bdf8;background:#38bdf81f;border:1px solid #38bdf84d;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .7rem;font-size:.7rem;font-weight:700;display:inline-flex}.login-form{text-align:left;flex-direction:column;gap:.9rem;display:flex}.login-field{flex-direction:column;gap:.35rem;display:flex}.login-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:.75rem;font-weight:700}.login-input-wrap{align-items:center;display:flex;position:relative}.login-input-icon{color:var(--text-muted);pointer-events:none;transition:color .2s;position:absolute;left:.85rem}.login-input{border:1px solid var(--border-glass);color:#fff;background:#ffffff0d;border-radius:12px;outline:none;width:100%;padding:.8rem .9rem .8rem 2.5rem;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s,background .2s}.login-input::placeholder{color:#6b7280}.login-input:focus{background:#38bdf812;border-color:#38bdf8b3;box-shadow:0 0 0 4px #38bdf826}.login-input:focus~.login-input-icon,.login-input-wrap:focus-within .login-input-icon{color:#38bdf8}.login-input-password{padding-right:2.6rem}.login-eye{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.25rem;transition:color .2s,background .2s;display:flex;position:absolute;right:.6rem}.login-eye:hover{color:#38bdf8;background:#38bdf81f}.login-error{color:#f87171;margin:-.3rem 0 0;font-size:.8rem;font-weight:600;animation:.36s loginShake}@keyframes loginShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.login-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#38bdf8e6,#6366f1e6);border:1px solid #38bdf866;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-top:.4rem;padding:.85rem 1.2rem;font-family:inherit;font-size:.95rem;font-weight:700;transition:transform .18s,box-shadow .18s,opacity .18s;display:inline-flex;position:relative;overflow:hidden}.login-submit:after{content:"";background:linear-gradient(100deg,#0000,#ffffff6b,#0000);width:60%;height:100%;transition:left .6s;position:absolute;top:0;left:-120%}.login-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px #38bdf859}.login-submit:hover:not(:disabled):after{left:130%}.login-submit:active:not(:disabled){transform:translateY(0)}.login-submit:disabled{opacity:.45;cursor:not-allowed}.login-skip{color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin:1.1rem auto 0;font-family:inherit;font-size:.85rem;font-weight:600;transition:color .2s;display:block}.login-skip:hover{color:#38bdf8}.login-note{color:#6b7280;margin:1.1rem 0 0;font-size:.68rem;line-height:1.5}.logout-btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px #f8717140;background:#f871713d!important;border-color:#f8717199!important}.logout-btn:active{transform:translateY(0)}.logout-btn:focus-visible{outline-offset:2px;outline:2px solid #f87171}.perm-overlay{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#04060fc7;justify-content:center;align-items:center;padding:1.5rem;animation:.3s both permFadeIn;display:flex;position:fixed;inset:0}@keyframes permFadeIn{0%{opacity:0}to{opacity:1}}.perm-card{text-align:center;border-radius:22px;width:100%;max-width:430px;padding:2rem 1.9rem 1.7rem;animation:.38s cubic-bezier(.22,1,.36,1) both permPop;position:relative}@keyframes permPop{0%{opacity:0;transform:translateY(22px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.perm-close{border:1px solid var(--border-glass);width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:#ffffff0d;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:.85rem;right:.85rem}.perm-close:hover:not(:disabled){color:#fff;background:#f871712e;border-color:#f8717173}.perm-close:disabled{opacity:.4;cursor:not-allowed}.perm-icon{background:linear-gradient(135deg,#f59e0b,#ef4444);border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 1rem;animation:3.4s ease-in-out infinite logoFloat;display:flex;box-shadow:0 10px 26px #f59e0b59}.perm-title{font-size:1.35rem;font-weight:800;font-family:var(--font-heading);margin:0 0 .3rem}.perm-sub{color:var(--text-muted);margin:0 0 1.2rem;font-size:.86rem}.perm-credentials{border:1px solid var(--border-glass);text-align:left;background:#ffffff0a;border-radius:12px;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:.85rem 1rem;display:flex}.perm-cred-row{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.82rem;display:flex}.perm-cred-label{text-transform:uppercase;letter-spacing:.06em;min-width:68px;font-size:.66rem;font-weight:700}.perm-cred-value{color:#fff;word-break:break-all;font-weight:600}.perm-cred-mask{letter-spacing:.14em}.perm-warning{color:#fbbf24;text-align:left;background:#f59e0b1a;border:1px solid #f59e0b52;border-radius:10px;align-items:flex-start;gap:.5rem;margin-bottom:1.1rem;padding:.7rem .85rem;font-size:.73rem;line-height:1.5;display:flex}.perm-warning svg{flex-shrink:0;margin-top:2px}.perm-warning strong{color:#fcd34d}.perm-error{text-align:center;margin-bottom:.8rem}.perm-actions{flex-direction:column;gap:.6rem;display:flex}.perm-save{color:#fff;cursor:pointer;background:linear-gradient(135deg,#38bdf8eb,#6366f1eb);border:1px solid #38bdf866;border-radius:12px;justify-content:center;align-items:center;gap:.45rem;width:100%;padding:.8rem 1.1rem;font-family:inherit;font-size:.92rem;font-weight:700;transition:transform .18s,box-shadow .18s,opacity .18s;display:inline-flex;position:relative;overflow:hidden}.perm-save:after{content:"";background:linear-gradient(100deg,#0000,#fff6,#0000);width:60%;height:100%;transition:left .6s;position:absolute;top:0;left:-120%}.perm-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 26px #38bdf859}.perm-save:hover:not(:disabled):after{left:130%}.perm-save:disabled{opacity:.7;cursor:progress}.perm-skip{border:1px solid var(--border-glass);width:100%;color:var(--text-muted);cursor:pointer;background:#ffffff0a;border-radius:12px;padding:.75rem 1.1rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:all .2s}.perm-skip:hover:not(:disabled){color:#fff;background:#ffffff17;border-color:#fff3}.perm-skip:disabled{opacity:.45;cursor:not-allowed}.perm-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:15px;height:15px;animation:.7s linear infinite permSpin}@keyframes permSpin{to{transform:rotate(360deg)}}.perm-hint{color:var(--text-muted);margin:.85rem 0 0;font-size:.7rem}.perm-hint code{background:#ffffff12;border-radius:5px;padding:.1rem .35rem;font-size:.68rem}
