/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */:root{--galson-radius-control:16px;--galson-radius-card:24px;--bg:#f1e1c3;--bg-card:#fff2d7;--bg-elevated:#fff8ec;--bg-hover:#c0561f12;--bg-input:#1b170d0d;--bg-subtle:#1b170d0d;--bg-image:#c0561f0f;--border:#1b170d1f;--border-soft:#1b170d14;--border-subtle:#1b170d0f;--border-strong:#1b170d33;--text:#1b170d;--text-2:#3d3528;--text-muted:#6d5b4a;--text-dim:#8a7a64;--text-faint:#ab9c86;--text-heading:#1b170d;--accent:#c0561f;--accent-hover:#99441a;--accent-soft:#c0561f1a;--accent-glow:#c0561f29;--on-accent:#fff8ec;--terracotta:#c0561f;--gold:#f5c518;--success:#2f8f4e;--success-bg:#2f8f4e1f;--danger:#c0392b;--danger-bg:#c0392b1a;--sidebar-width:260px;--header-h:56px;--content-max:780px;--r-xs:4px;--r-sm:6px;--r:8px;--r-md:10px;--r-lg:12px;--r-xl:20px;--r-pill:999px;--shadow-sm:0 2px 6px #1b170d12;--shadow:0 6px 20px #1b170d1a;--shadow-lg:0 16px 48px #1b170d24;--shadow-xl:0 24px 64px #1b170d2e;--font-sans:"PortalMontserrat",Arial,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--ease:.15s ease;--ease-slow:.25s ease}[data-theme=dark]{--bg:#0f0f0f;--bg-card:#1a1a1a;--bg-elevated:#1f1f1f;--bg-hover:#ecb00a14;--bg-input:#ffffff0a;--bg-subtle:#ffffff0f;--bg-image:#ecb00a0f;--border-soft:#ffffff14;--border-subtle:#ffffff0f;--border-strong:#ffffff2e;--text-2:#e5e5e5;--text-muted:#9ca3af;--text-dim:#6b7280;--text-faint:#4b5563;--accent-soft:#ecb00a1f;--accent-glow:#ecb00a33;--on-accent:#0f0f0f;--terracotta:#c76830;--gold:#ecb00a;--success:#4ade80;--success-bg:#4ade801f;--danger:#f87171;--danger-bg:#f871711f;--shadow-sm:0 2px 8px #00000073;--shadow:0 8px 24px #00000080;--shadow-lg:0 16px 48px #00000094;--shadow-xl:0 24px 64px #0000009e}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:none;background-size:auto;width:100%;font-size:15px;line-height:1.65;overflow-x:clip}iframe,img,pre,table,video{max-width:100%}h1,h2,h3,h4,h5,h6,li,p{overflow-wrap:break-word;word-wrap:break-word}*,:after,:before{transition:background-color .25s,border-color .25s,color .2s,fill .2s,stroke .2s,box-shadow .2s}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation:none!important}}:focus{outline:none}:focus-visible{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent-glow);border-radius:var(--r-sm);outline:none}.iconButton:active,a.primaryButton:active,a.secondaryButton:active,button:active:not(:disabled){transform:scale(.97)}.iconButton,a.primaryButton,a.secondaryButton,button{transition:background-color .2s,border-color .2s,color .2s,transform .1s,box-shadow .2s}h1,h2,h3,h4,h5,h6{color:var(--text-heading);font-family:var(--font-sans);letter-spacing:-.01em;font-weight:600;line-height:1.3}h1{letter-spacing:-.02em;margin-bottom:1rem;font-size:1.75rem;font-weight:700}h2{margin:2rem 0 .75rem;font-size:1.35rem}h3{margin:1.5rem 0 .5rem;font-size:1.1rem}h4{margin:1.25rem 0 .5rem;font-size:1rem}p{margin-bottom:1rem}strong{color:var(--text-heading);font-weight:600}a{color:var(--accent);transition:color var(--ease);text-decoration:none}a:hover{color:var(--accent-hover)}ol,ul{margin-bottom:1rem;padding-left:1.5rem}li{margin-bottom:.35rem}hr{border:none;border-top:1px solid var(--border);margin:2rem 0}img{border-radius:var(--r);max-width:100%;height:auto}input[type=email],input[type=number],input[type=password],input[type=search],input[type=text],input[type=url],select,textarea{background:var(--bg-input);border:1px solid var(--border-soft);border-radius:var(--r);color:var(--text);font-family:var(--font-sans);transition:border-color var(--ease);outline:none;width:100%;padding:.65rem .85rem;font-size:.92rem}input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{border-color:var(--accent)}input::placeholder,textarea::placeholder{color:var(--text-faint)}a.primaryButton,a.secondaryButton,button.primaryButton,button.secondaryButton,button[type=submit]{box-sizing:border-box;border-radius:var(--r-sm);height:36px;font-family:var(--font-sans);letter-spacing:0;cursor:pointer;transition:background var(--ease),border-color var(--ease),color var(--ease);white-space:nowrap;justify-content:center;align-items:center;padding:0 1rem;font-size:.82rem;font-weight:500;line-height:1;display:inline-flex;text-decoration:none!important}a.primaryButton,button.primaryButton,button[type=submit]{background:var(--accent);border:1px solid var(--accent);color:var(--on-accent);font-weight:600}a.primaryButton:hover,button.primaryButton:hover:not(:disabled),button[type=submit]:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:var(--on-accent)}button.primaryButton:disabled,button[type=submit]:disabled{cursor:not-allowed;opacity:.5}a.secondaryButton,button.secondaryButton{border:1px solid var(--border-strong);color:var(--text);background:0 0}a.secondaryButton:hover,button.secondaryButton:hover{border-color:var(--accent);color:var(--accent)}label{color:var(--text-2);margin-bottom:.4rem;font-size:.82rem;font-weight:500;display:block}.iconButton{border-radius:var(--r-sm);width:32px;height:32px;color:var(--text-dim);cursor:pointer;transition:background var(--ease),color var(--ease);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.iconButton:hover{background:var(--bg-hover);color:var(--accent)}.iconButton svg{flex-shrink:0;width:18px;height:18px}form{gap:.85rem}.authForm,form{flex-direction:column;display:flex}.authForm{gap:1rem}.authForm .field{flex-direction:column;gap:.35rem;display:flex}.authForm .field span{color:var(--text-2);font-size:.82rem;font-weight:500}.authForm .field input{background:var(--bg-input);border:1px solid var(--border-soft);border-radius:var(--r);color:var(--text);font-family:var(--font-sans);transition:border-color var(--ease);outline:none;width:100%;padding:.7rem .85rem;font-size:.92rem}.authForm .field input:focus{border-color:var(--accent)}.authForm button[type=submit]{border-radius:var(--r);width:100%;height:44px;margin-top:.25rem;font-size:.95rem}.formError{color:var(--danger);background:var(--danger-bg);border-radius:var(--r-sm);margin:0;padding:.5rem .75rem;font-size:.85rem}.divider{color:var(--text-dim);align-items:center;gap:.75rem;font-size:.8rem;display:flex}.divider:after,.divider:before{content:"";background:var(--border-soft);flex:1;height:1px}.socialButtons{gap:.5rem;display:flex}.socialButtons a,.socialButtons button{flex:1}.socialButtons .telegramLoginButton{background:var(--accent);border:1px solid var(--accent);border-radius:var(--r);color:#141413;cursor:pointer;min-height:52px;transition:background var(--ease),border-color var(--ease),transform var(--ease);justify-content:center;align-items:center;gap:.5rem;padding:0 1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.socialButtons .telegramLoginButton:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#141413;transform:translateY(-1px)}.socialButtons .telegramLoginButton:disabled{cursor:wait;opacity:.78;transform:none}.telegramLoginAvatar{border-radius:var(--r-pill);object-fit:cover;width:28px;height:28px}.telegramLoginSpinner{border-radius:var(--r-pill);border:2px solid #14141338;border-top-color:#141413;width:16px;height:16px;animation:telegramLoginSpin .8s linear infinite}@keyframes telegramLoginSpin{to{transform:rotate(1turn)}}.mutedCopy{color:var(--text-dim);margin:0;font-size:.82rem;line-height:1.5}.mutedCopy a{color:var(--accent);text-decoration:none}.mutedCopy a:hover{text-decoration:underline}code{font-family:var(--font-mono);background:var(--bg-input);border:1px solid var(--border-soft);border-radius:var(--r-xs);color:var(--accent);padding:.15em .4em;font-size:.85em}pre{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);white-space:pre-wrap;word-wrap:break-word;margin:1.25rem 0;padding:1rem 1.25rem;position:relative;overflow-x:auto}pre code{color:var(--text);background:0 0;border:none;padding:0;font-size:.85rem;line-height:1.6}table{border-collapse:collapse;width:100%;margin:1.25rem 0;font-size:.9rem}td,th{text-align:left;border-bottom:1px solid var(--border-soft);padding:.6rem .75rem}th{color:var(--text-heading);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:600}tr:hover td{background:var(--bg-hover)}blockquote{border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 var(--r) var(--r) 0;color:var(--text);margin:1.25rem 0;padding:.75rem 1rem}blockquote p:last-child{margin-bottom:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#1b170d2e;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#1b170d4d}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#f3e8d224}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#f3e8d23d}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color var(--ease);padding:1.5rem}.card:hover{border-color:var(--border-strong)}.card-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.card-header h2{margin:0;font-size:1.1rem}.card-actions{border-top:1px solid var(--border-soft);margin-top:1.25rem;padding-top:1.25rem}.badge{border-radius:var(--r-xs);letter-spacing:.01em;align-items:center;padding:.2rem .55rem;font-size:.7rem;font-weight:600;line-height:1.4;display:inline-flex}.badge-accent{background:var(--accent);color:var(--on-accent)}.badge-success{background:var(--success-bg);color:var(--success)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-muted{background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border-soft)}.btn{font-family:var(--font-sans);border-radius:var(--r-sm);cursor:pointer;transition:all var(--ease);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.82rem;font-weight:500;line-height:1.4;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--on-accent);font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover);color:var(--on-accent)}.btn-outline{border:1px solid var(--border-strong);color:var(--text);background:0 0}.btn-outline:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-ghost{color:var(--text-muted);background:0 0;border:none;padding:.35rem .6rem}.btn-ghost:hover:not(:disabled){color:var(--text);background:var(--bg-hover)}.btn-danger{color:var(--danger);background:0 0;border:1px solid #ef44444d}.btn-danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger)}.btn-sm{padding:.3rem .65rem;font-size:.75rem}.btn-lg{padding:.65rem 1.5rem;font-size:.95rem}.btn-full,.input{width:100%}.input{background:var(--bg-input);border:1px solid var(--border-soft);border-radius:var(--r);color:var(--text);font-size:.9rem;font-family:var(--font-sans);transition:border-color var(--ease);outline:none;padding:.6rem .75rem}.input:focus{border-color:var(--accent)}.input::placeholder{color:var(--text-dim)}.status-badge{border-radius:var(--r-xs);letter-spacing:.01em;padding:.2rem .55rem;font-size:.7rem;font-weight:600}.status-active{background:var(--success-bg);color:var(--success)}.status-inactive{color:var(--text-muted)}.status-inactive,kbd{background:var(--bg-subtle)}kbd{font-family:var(--font-mono);border-radius:var(--r-xs);color:var(--text-dim);padding:2px 6px;font-size:.7rem}.text-muted{color:var(--text-muted)}.text-accent{color:var(--accent)}.text-center{text-align:center}.text-sm{font-size:.85rem}.text-xs{font-size:.75rem}.text-mono{font-family:var(--font-mono)}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:.5rem}.gap-2{gap:.75rem}.gap-3{gap:1rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:768px){h1{font-size:1.5rem}h2{font-size:1.2rem}body{font-size:14px}html{overflow-x:hidden}}@font-face{font-family:PortalMontserrat;src:url(/images/portal/fonts/Montserrat-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:PortalMontserrat;src:url(/images/portal/fonts/Montserrat-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:PortalMontserrat;src:url(/images/portal/fonts/Montserrat-ExtraBold.woff2)format("woff2");font-weight:800;font-display:swap}@font-face{font-family:PortalMontserrat;src:url(/images/portal/fonts/Montserrat-Black.woff2)format("woff2");font-weight:900;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/images/portal/fonts/JetBrainsMono-Regular.woff2)format("woff2");font-weight:400;font-display:swap}:root{--r-sm:var(--galson-radius-control);--r:var(--galson-radius-control);--r-md:var(--galson-radius-card);--r-lg:var(--galson-radius-card);--r-xl:var(--galson-radius-card);--header-h:80px;--sidebar-width:256px;--bg:#f5f5f3;--bg-card:#fff;--bg-elevated:#f0f0ee;--accent:#a47700;--accent-hover:#896200;--accent-soft:#a4770017;--text:#242424;--text-heading:#191919;--text-muted:#606060}[data-theme=dark]{--bg:#191919;--bg-card:#252525;--bg-elevated:#2d2d2d;--text:#fff;--text-heading:#fff;--text-muted:#b9b9b9;--text-dim:#a0a0a0;--text-faint:#909090;--accent:#ecb00a;--accent-hover:#f5c518;--accent-soft:#ecb00a1a;--border:#ffffff1f}body{font-size:14px;line-height:1.7}h1,h2,h3{letter-spacing:-.035em;font-weight:800}:is(h1,h2,h3,h4,h5,h6) :is(strong,b){font-weight:inherit}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;box-shadow:none}a.primaryButton,a.secondaryButton,button.primaryButton,button.secondaryButton,button[type=submit]{white-space:normal;height:auto;min-height:48px;padding:14px 22px;font-size:13px;font-weight:600}@media (max-width:768px){:root{--header-h:68px}}