@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Roboto+Mono:wght@400;500&family=Silkscreen&family=Noto+Sans+SC:wght@300;400&family=Noto+Sans+JP:wght@300;400&display=swap";:root{--bg:#030303;--card-0:#2d2d2d;--card-1:#1d1d1e;--card-2:#151515;--brand-green:#cdff44;--brand-base:#e5ff8f;--brand-dark:#c1f540;--brand-pill-bg:#4e5733;--accent-blue:#427aea;--accent-red:#d53057;--accent-orange:#ff9e00;--accent-purple:#b86e9f;--border-0:#383737;--border-1:#a3a3a3;--border-2:#b9b9b929;--border-soft:#f5efeb29;--text:#fff;--text-90:#ffffffe6;--text-80:#fffc;--text-70:#ffffffb3;--text-60:#fff9;--text-50:#ffffff80;--text-muted:#737373;--text-dim:#3c3c3c;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:20px;--space-xl:24px;--space-2xl:32px;--radius-sm:8px;--radius-md:12px;--radius-full:999px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"Roboto Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-pixel:"Silkscreen", "Roboto Mono", monospace;--font-cjk:"Noto Sans SC", "Noto Sans JP", "Inter", sans-serif;--shadow-xs:0 1px 2px 0 #1018280a;--ring-blue:0 0 0 3px var(--accent-blue)}@keyframes anim-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes anim-fade-in{0%{opacity:0}to{opacity:1}}@keyframes anim-scale-in{0%{opacity:0;transform:scale(.96)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes anim-slide-in-right{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes anim-skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes anim-glitch-in{0%{opacity:0;filter:drop-shadow(3px 0 #ef4444d9)drop-shadow(-3px 0 #22d3eed9)blur(.6px);clip-path:inset(0 0 78%);transform:translate(-14px,6px)}9%{opacity:1;filter:drop-shadow(-5px 0 #ef4444bf)drop-shadow(5px 0 #22d3eebf);clip-path:inset(40% 0 14%);transform:translate(11px,-3px)}18%{opacity:.28;filter:drop-shadow(4px 0 #ef444499);clip-path:inset(0 30% 52% 0);transform:translate(-9px,2px)}29%{opacity:1;filter:drop-shadow(-3px 0 #22d3ee99)drop-shadow(3px 0 #ef444499);clip-path:inset(18% 0 0 22%);transform:translate(6px,-1px)}40%{opacity:.55;clip-path:inset(0 0 35% 8%);filter:drop-shadow(2px 0 #ef444466);transform:translate(-4px,1px)}55%{opacity:1;clip-path:inset(0);filter:drop-shadow(-2px 0 #22d3ee59);transform:translate(3px)}72%{opacity:.85;filter:drop-shadow(1px 0 #ef44442e);transform:translate(-1px)}to{opacity:1;filter:none;clip-path:inset(0);transform:translate(0,0)}}.anim-page{animation:.32s cubic-bezier(.22,.61,.36,1) both anim-fade-up}.anim-fade-in{animation:.22s ease-out both anim-fade-in}.anim-fade-up{animation:.32s cubic-bezier(.22,.61,.36,1) both anim-fade-up}.anim-scale-in{animation:.22s cubic-bezier(.22,.61,.36,1) both anim-scale-in}.anim-slide-in-right{animation:.26s cubic-bezier(.22,.61,.36,1) both anim-slide-in-right}.anim-stagger>*{--_step:var(--anim-stagger-step,40ms);--_base:var(--anim-stagger-delay,0s);animation:.32s cubic-bezier(.22,.61,.36,1) both anim-fade-up;animation-delay:calc(var(--_base) + var(--i,0) * var(--_step))}.anim-stagger>:first-child{--i:0}.anim-stagger>:nth-child(2){--i:1}.anim-stagger>:nth-child(3){--i:2}.anim-stagger>:nth-child(4){--i:3}.anim-stagger>:nth-child(5){--i:4}.anim-stagger>:nth-child(6){--i:5}.anim-stagger>:nth-child(7){--i:6}.anim-stagger>:nth-child(8){--i:7}.anim-stagger>:nth-child(9){--i:8}.anim-stagger>:nth-child(10){--i:9}.anim-stagger>:nth-child(11){--i:10}.anim-stagger>:nth-child(12){--i:11}.anim-stagger>:nth-child(13){--i:12}.anim-stagger>:nth-child(14){--i:13}.anim-stagger>:nth-child(15){--i:14}.anim-stagger>:nth-child(16){--i:15}.anim-stagger>:nth-child(17){--i:16}.anim-stagger>:nth-child(18){--i:17}.anim-stagger>:nth-child(19){--i:18}.anim-stagger>:nth-child(20){--i:19}.anim-stagger>:nth-child(21){--i:20}.anim-stagger>:nth-child(22){--i:21}.anim-stagger>:nth-child(23){--i:22}.anim-stagger>:nth-child(24){--i:23}.anim-stagger>:nth-child(25){--i:24}.anim-stagger>:nth-child(26){--i:25}.anim-stagger>:nth-child(27){--i:26}.anim-stagger>:nth-child(28){--i:27}.anim-stagger>:nth-child(29){--i:28}.anim-stagger>:nth-child(30){--i:29}.anim-stagger--glitch>*{will-change:transform, filter, clip-path, opacity;animation-name:anim-glitch-in;animation-duration:.64s;animation-timing-function:cubic-bezier(.5,.05,.3,1)}.skeleton{border-radius:var(--radius-sm,8px);background:linear-gradient(90deg,#ffffff08 0%,#ffffff14 50%,#ffffff08 100%) 0 0/200% 100%;animation:1.4s ease-in-out infinite anim-skeleton-shimmer;position:relative;overflow:hidden}.skeleton-row{height:48px;margin-bottom:8px}.skeleton-card{height:96px;margin-bottom:12px}.skeleton-text{width:60%;height:14px;margin-bottom:8px}.anim-tab-swap{animation:.2s ease-out both anim-fade-in}@media (prefers-reduced-motion:reduce){.anim-page,.anim-fade-in,.anim-fade-up,.anim-scale-in,.anim-slide-in-right,.anim-tab-swap,.anim-stagger>*,.anim-stagger--glitch>*,.skeleton{animation:none!important}}*{box-sizing:border-box}html,body,#root{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-size:14px;line-height:20px}body{min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;padding:0;font-family:inherit}input,select,textarea{color:inherit;background:0 0;border:none;outline:none;font-family:inherit}p{margin:0}::selection{background:var(--brand-green);color:#000}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--card-0);border-radius:4px}.star-logo{color:var(--brand-green);align-items:center;gap:3px;display:inline-flex}.star-logo svg{display:block}.auth{background:var(--bg);width:100%;min-height:100vh;position:relative;overflow:hidden}.auth__poem{width:289px;font-family:var(--font-mono), var(--font-cjk);color:var(--text);font-size:10px;line-height:1.5;position:absolute;top:96px;left:84px}.auth__brand{font-family:var(--font-pixel);letter-spacing:2px;color:var(--text-50);font-size:26px;position:absolute;top:79px;right:64px}.auth__date{width:91px;height:20px;font-family:var(--font-mono);color:var(--text);transform-origin:0 0;font-size:15px;position:absolute;top:396px;left:81px;transform:rotate(-90deg)translateY(91px)}.auth__bar-v{background:linear-gradient(#fff0 0%,#ffffff80 50%,#fff0 100%);width:1px;height:160px;position:absolute;top:316px;right:78px}.auth__ticks{transform-origin:100% 0;flex-direction:column;gap:3px;display:flex;position:absolute;top:598px;right:78px;transform:rotate(25deg)}.auth__ticks span{background:var(--text-50);width:14px;height:1px;display:block}.auth__cursor{background:#d9d9d9;width:7px;height:24px;animation:1.1s steps(2,end) infinite blink;position:absolute;top:666px;left:86px}@keyframes blink{50%{opacity:0}}.auth__content{flex-direction:column;align-items:center;gap:32px;width:350px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.auth__title{color:var(--text);text-align:center;margin:0;font-size:32px;font-weight:600;line-height:1.15}.auth__form{flex-direction:column;gap:24px;width:100%;display:flex}@media (width<=720px){.auth__poem,.auth__date,.auth__ticks,.auth__bar-v,.auth__cursor{display:none}.auth__brand{letter-spacing:1px;font-size:16px;top:16px;right:16px}.auth__content{width:100%;max-width:360px;margin:0 auto;padding:72px 20px 40px;position:static;transform:none}.auth__title{font-size:26px;line-height:1.1}.auth__form{gap:18px}}.tf{align-items:center;gap:var(--space-xs);min-height:36px;padding:7.5px var(--space-sm);background:var(--card-0);border:1px solid var(--card-0);border-radius:var(--radius-md);width:100%;transition:box-shadow .15s;display:flex}.tf--focus,.tf:focus-within{box-shadow:var(--ring-blue)}.tf__input{min-width:0;color:var(--text);flex:1;font-size:14px;line-height:20px}.tf__input::placeholder{color:var(--text-50)}.tf__lead{color:var(--text);-webkit-user-select:none;user-select:none;font-size:14px;line-height:20px}.tf--select{cursor:pointer;color:var(--text-muted);box-shadow:var(--shadow-xs);border-color:var(--border-1)}.tf--select select{appearance:none;color:var(--text-muted);cursor:pointer}.tf--select svg{pointer-events:none;color:var(--text-muted)}.tf--select-filled,.tf--select-filled select{color:var(--text)}.tf--select-filled svg{color:var(--text-80)}.tf--select option{color:var(--text);background:var(--card-0)}.btn{justify-content:center;align-items:center;gap:var(--space-xs);min-height:40px;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);font-size:14px;font-weight:500;line-height:20px;transition:filter .15s,transform 50ms;display:inline-flex}.btn:hover{filter:brightness(1.05)}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--brand-green);color:#000;width:100%}.btn--icon{min-height:auto;color:var(--text-90);padding:0}.btn--icon:hover{color:var(--text)}.helper{color:var(--text-60);align-self:stretch;font-size:10px;line-height:20px}.helper u{text-decoration:underline}.auth-socials{color:var(--text-80);justify-content:center;align-items:center;gap:24px;display:flex}.auth-socials a{width:24px;height:24px;display:inline-flex}.auth-socials a:hover{color:var(--text)}.auth-subtle{color:var(--text-60);text-align:center;font-size:10px;line-height:20px}.auth-subtle button,.auth-subtle a{color:inherit;cursor:pointer;text-decoration:none}.auth-subtle button:hover,.auth-subtle a:hover{color:var(--text)}.divider{background:var(--card-0);width:100%;height:1px}.password-hint-group{flex-direction:column;gap:8px;width:100%;display:flex}.auth-error{letter-spacing:.005em;text-align:left;color:#ff7a96;background:linear-gradient(#d5305724,#d530570d),#00000059;border:1px solid #d5305752;border-radius:10px;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;font-size:12px;line-height:16px;animation:.2s ease-out both auth-error-in;display:flex;box-shadow:0 10px 28px -18px #d53057b3}.auth-error:before{content:"";background:var(--accent-red);flex:0 0 14px;width:14px;height:14px;margin-top:1px;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8 1.5L15 14H1ZM7.25 5.5h1.5v4h-1.5zM7.25 10.5h1.5v1.5h-1.5z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8 1.5L15 14H1ZM7.25 5.5h1.5v4h-1.5zM7.25 10.5h1.5v1.5h-1.5z'/%3E%3C/svg%3E") 50%/contain no-repeat}@keyframes auth-error-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.auth-signup{text-align:center;margin:0}.auth-signup button{cursor:pointer;color:var(--brand-green);background:0 0;border:none;padding:0;font-size:14px;font-weight:600;line-height:20px}.auth-signup button:hover{color:var(--brand-base)}.helper-link{cursor:pointer;color:var(--brand-green);font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.helper-link:hover{color:var(--brand-base)}.helper-link:disabled{opacity:.5;cursor:not-allowed}.auth-forgot{text-align:center;margin:0}.auth-forgot button{cursor:pointer;color:var(--text-60);background:0 0;border:none;padding:0;font-size:10px;line-height:20px}.auth-forgot button:hover{color:var(--text)}.auth-socials button{color:var(--text-80);cursor:pointer;background:0 0;border:none;padding:0}.auth-socials button:hover{color:var(--text)}.auth-socials button:disabled{cursor:not-allowed;opacity:.35}.dialog-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0009;justify-content:center;align-items:center;padding:24px;animation:.18s ease-out both dialog-backdrop-in;display:flex;position:fixed;inset:0}.dialog{background:var(--card-1);border:.5px solid var(--border-0);border-radius:var(--radius-md);width:100%;max-width:420px;color:var(--text);flex-direction:column;gap:0;animation:.22s cubic-bezier(.22,.61,.36,1) both dialog-pop-in;display:flex;box-shadow:0 40px 60px #00000080}@keyframes dialog-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-pop-in{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (prefers-reduced-motion:reduce){.dialog-backdrop,.dialog{animation:none!important}}.dialog__head{border-bottom:.5px solid var(--card-0);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dialog__head h2{margin:0;font-size:16px;font-weight:600}.dialog__head button{color:var(--text-70);border-radius:var(--radius-sm);background:0 0;padding:2px 8px;font-size:20px;line-height:1}.dialog__head button:hover{color:var(--text);background:var(--card-0)}.dialog__body{color:var(--text-80);flex-direction:column;gap:14px;padding:20px;font-size:13px;line-height:18px;display:flex}.dialog__actions{justify-content:flex-end;gap:10px;padding:0 20px 20px;display:flex}.dialog__body .dialog__actions{margin-top:6px;padding:0}.dialog__actions .btn--auto{width:auto;min-width:120px}.dialog__actions .btn--outline{border-radius:var(--radius-md);border:.5px solid var(--border-1);min-width:120px;height:auto;min-height:40px;padding:8px 16px;font-size:14px;font-weight:500}.btn--danger{background:var(--accent-red)!important;color:#fff!important}.fullscreen-loader{background:var(--bg,#030303);color:var(--text-60,#a3a3a3);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:18px;animation:.22s ease-out both fullscreen-loader-fade;display:flex;position:fixed;inset:0}.fullscreen-loader__ring{border:2px solid #ffffff0f;border-top-color:var(--brand-green,#b6f700);border-right-color:var(--brand-green,#b6f700);border-radius:50%;width:44px;height:44px;animation:.9s linear infinite fullscreen-loader-spin;position:relative}.fullscreen-loader__ring:after{content:"";filter:blur(4px);pointer-events:none;background:radial-gradient(closest-side,#b6f7002e,#0000 70%);border-radius:50%;position:absolute;inset:-8px}.fullscreen-loader__label{letter-spacing:.18em;text-transform:uppercase;color:var(--text-60,#a3a3a3);margin:0;font-size:12px}@keyframes fullscreen-loader-spin{to{transform:rotate(360deg)}}@keyframes fullscreen-loader-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.sidebar{flex-direction:column;flex-shrink:0;gap:14px;width:199px;height:100vh;padding:20px;transition:width .25s;display:flex;position:sticky;top:0}.sidebar--collapsed{align-items:center;width:96px}.sidebar__logo{align-items:center;gap:3px;height:29px;margin-bottom:40px;display:flex}.sidebar__nav{flex-direction:column;flex:1;justify-content:center;gap:14px;margin-top:-80px;display:flex}.sidebar__item{border-radius:var(--radius-md);background:var(--card-2);border:.5px solid var(--border-2);min-height:56px;color:var(--text-90);white-space:nowrap;align-items:center;gap:16px;padding:16px 20px;font-size:14px;line-height:20px;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:flex}.sidebar__item:hover{background:var(--card-1);color:var(--text)}.sidebar__item--active{background:var(--card-0);border-color:var(--border-1);color:var(--brand-base)}.sidebar__label{flex:1;min-width:0;transition:opacity .15s}.sidebar--collapsed .sidebar__label,.sidebar--collapsed .sidebar__scans span:first-child{display:none}.sidebar--collapsed .sidebar__item{justify-content:center;width:56px;height:56px;min-height:56px;padding:0}.sidebar__footer{flex-direction:column;gap:14px;display:flex}.sidebar__scans{background:var(--brand-pill-bg);border:2px solid var(--brand-base);border-radius:var(--radius-md);height:48px;color:var(--brand-green);text-align:center;white-space:nowrap;justify-content:center;align-items:center;gap:16px;width:100%;padding:16px 20px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;line-height:20px;display:flex;overflow:hidden}.sidebar__scans>span:first-child{flex:0 auto}.sidebar--collapsed .sidebar__scans{justify-content:center;gap:0;width:56px;height:56px;padding:0}.sidebar__scans-count{font-size:24px;font-weight:500;line-height:1}.sidebar--collapsed .sidebar__scans-count{font-size:22px}.sidebar__actions{gap:14px;display:flex}.sidebar--collapsed .sidebar__footer{align-items:center}.sidebar--collapsed .sidebar__actions{flex-direction:column}@media (width<=860px){.sidebar{z-index:20;background:var(--card-2);border-bottom:.5px solid var(--border-2);flex-direction:row;align-items:center;gap:10px;width:100%;height:auto;padding:10px 12px;position:sticky;top:0}.sidebar--collapsed{align-items:center;width:100%}.sidebar__logo{flex-shrink:0;height:auto;margin:0}.sidebar__nav{scrollbar-width:none;flex-direction:row;flex:1;justify-content:flex-start;gap:6px;min-width:0;margin:0;padding:2px 0;overflow:auto hidden}.sidebar__nav::-webkit-scrollbar{display:none}.sidebar__item,.sidebar--collapsed .sidebar__item{flex-shrink:0;justify-content:center;width:40px;height:40px;min-height:40px;padding:0}.sidebar__label,.sidebar--collapsed .sidebar__label{display:none}.sidebar__footer{flex-direction:row;flex-shrink:0;align-items:center;gap:8px}.sidebar__scans{border-width:1px;gap:8px;height:40px;padding:0 12px;font-size:12px}.sidebar__scans span:first-child{display:none}.sidebar--collapsed .sidebar__scans,.sidebar__scans{justify-content:center;width:auto;height:40px;padding:0 12px}.sidebar__scans-count,.sidebar--collapsed .sidebar__scans-count{font-size:18px}.sidebar__actions,.sidebar--collapsed .sidebar__actions{flex-direction:row;gap:6px}.sidebar__action{width:40px;height:40px}}@media (width<=480px){.sidebar{flex-wrap:wrap;gap:8px;padding:10px}.sidebar__logo{order:1}.sidebar__footer{order:2;margin-left:auto}.sidebar__nav{flex:0 0 100%;order:3;width:100%}}.sidebar__action{background:var(--card-2);border:.5px solid var(--border-2);border-radius:var(--radius-md);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;transition:background .15s;display:inline-flex}.sidebar__action:hover{background:var(--card-1)}.sidebar__action--active{background:var(--card-2);border-color:var(--border-2);color:#fff}.chat{background:var(--card-2);border:.5px solid var(--border-2);border-radius:var(--radius-md);color:var(--text);flex-direction:column;flex-shrink:0;align-self:start;margin:20px 20px 20px 8px;transition:width .25s;display:flex;position:sticky;top:20px;overflow:hidden}.chat--open{width:320px;height:calc(100vh - 40px);max-height:calc(100vh - 40px)}.chat--collapsed{cursor:pointer;width:56px;color:var(--text);justify-content:flex-start;align-items:center;gap:8px;padding:16px 0}.chat__collapsed-label{writing-mode:vertical-rl;font-size:14px;line-height:20px;transform:rotate(180deg)}.chat__header{justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.chat__title{align-items:center;gap:10px;font-size:14px;line-height:20px;display:flex}.chat__toggle{border-radius:var(--radius-full);border:1px solid var(--border-2);width:32px;height:32px;color:var(--text-70);justify-content:center;align-items:center;display:inline-flex}.chat__toggle:hover{color:var(--text)}.chat__body{flex-direction:column;flex:1;gap:18px;min-height:0;padding:16px;display:flex;overflow-y:auto}.chat__day{letter-spacing:.08em;color:var(--text-50);background:var(--card-0);border-radius:var(--radius-full);align-self:center;padding:4px 10px;font-size:10px}.chat__message{background:var(--card-1);border:.5px solid var(--border-2);max-width:80%;color:var(--text-80);border-radius:12px;align-self:flex-start;padding:10px 14px;font-size:12px;line-height:18px}.chat__message--me{background:0 0;border:none;align-self:flex-end;padding:0}.chat__chip{border:1px solid var(--border-2);border-radius:var(--radius-full);color:var(--text);background:0 0;padding:6px 12px;font-size:12px}.chat__message-actions{color:var(--text-50);gap:8px;margin-top:4px;display:flex}.chat__composer{background:var(--card-1);border-top:.5px solid var(--border-2);border-radius:0 0 var(--radius-md) var(--radius-md);align-items:center;gap:8px;padding:12px;display:flex}.chat__composer-input{background:var(--card-0);border:.5px solid var(--border-2);border-radius:var(--radius-md);min-height:36px;color:var(--text);flex:1;padding:8px 12px;font-size:12px}.chat__composer-input::placeholder{color:var(--text-50)}.chat__composer-send{background:var(--brand-green);color:#000;border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.chat__composer-send:disabled{opacity:.5;cursor:not-allowed}.chat__msg-action{color:inherit;background:0 0;border-radius:4px;padding:2px}.chat__msg-action:hover{color:var(--text)}@media (width<=860px){.chat--collapsed{border-radius:var(--radius-full);background:var(--brand-green);color:#000;z-index:40;justify-content:center;align-items:center;width:48px;height:48px;margin:0;padding:0;position:fixed;bottom:16px;right:16px;box-shadow:0 12px 24px #00000080}.chat__collapsed-label{display:none}.chat--open{z-index:50;border-radius:0;width:auto;height:auto;margin:0;position:fixed;inset:0}}.app{background:var(--bg);grid-template-columns:auto 1fr auto;min-height:100vh;display:grid}.app__main{padding:20px 20px 20px 4px;overflow:hidden}@media (width<=860px){.app{flex-direction:column;display:flex}.app__main{width:100%;min-width:0;padding:16px 14px 100px}}.card{background:var(--card-1);border:.5px solid var(--card-0);border-radius:var(--radius-md);flex-direction:column;gap:22px;padding:16px 26px;display:flex}.card--lg{padding:26px}.card__head{justify-content:space-between;align-items:center;gap:16px;display:flex}.card__title{color:var(--text);font-size:18px;font-weight:500;line-height:20px}.card__link{color:var(--accent-blue);font-size:14px;line-height:20px;text-decoration:underline}.onboarding{flex-direction:column;gap:32px;max-width:850px;margin:68px auto 0;display:flex;position:relative}.onboarding__title{text-align:center;margin:0 0 8px;font-size:32px;font-weight:600;line-height:28px}.onboarding__subtitle{text-align:center;color:var(--text-60,#a3a3a3);margin:0 0 8px;font-size:13px;line-height:18px}.onboarding__btn-busy{align-items:center;gap:8px;display:inline-flex}.onboarding__spinner{border:2px solid #000000b3;border-color:#000000b3 #000000b3 #0000002e #0000002e;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite onboarding-spinner-spin;display:inline-block}@keyframes onboarding-spinner-spin{to{transform:rotate(360deg)}}.onboarding__step--reveal{animation:.32s cubic-bezier(.22,.61,.36,1) both onboarding-step-reveal}@keyframes onboarding-step-reveal{0%{opacity:0;filter:blur(2px);transform:translateY(12px)}to{opacity:1;filter:blur();transform:translateY(0)}}.onboarding__success{color:#d1ff7a;background:#b6f7001a;border:1px solid #b6f70052;border-radius:10px;align-items:center;gap:8px;margin:0;padding:10px 12px;font-size:12px;line-height:16px;animation:.2s ease-out both onboarding-fade-in;display:flex}@keyframes onboarding-fade-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.onboarding__step{grid-template-columns:46px 1fr;align-items:start;gap:14px;display:grid}.onboarding__num{background:var(--brand-dark);color:#000;border-radius:var(--radius-md);width:46px;height:46px;box-shadow:var(--shadow-xs);justify-content:center;align-items:center;font-size:24px;font-weight:600;display:inline-flex}.onboarding__actions{justify-content:flex-end;display:flex}.btn--auto{min-width:131px;width:auto!important}.btn--accent{border-radius:var(--radius-md);border:.5px solid var(--border-soft);background:var(--brand-green);color:#000;cursor:pointer;justify-content:center;align-items:center;gap:8px;min-width:142px;height:39px;padding:0 20px;font-size:12px;font-weight:600;transition:filter .15s,transform 50ms;display:inline-flex}.btn--accent:hover{filter:brightness(1.05);color:#000}.btn--accent:active{transform:translateY(1px)}.btn--accent:disabled{cursor:not-allowed;opacity:.4}.overview-banner{border:.5px solid var(--card-0,#2d2d2d);color:#fff;background:#427aea;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:16px 26px;font-size:18px;font-weight:500;line-height:20px;animation:.24s ease-out both overview-banner-in;display:flex}.overview-banner svg{color:#fff;flex-shrink:0}@keyframes overview-banner-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.row--decorative{border-bottom:1px solid var(--border-2,#b9b9b929);color:#3c3c3c;pointer-events:none;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;width:100%;padding:4px 0;font-size:14px;display:flex}.row--decorative .row__label{color:#3c3c3c}.row--decorative:last-child{border-bottom:none}.row__dot--placeholder{box-shadow:none;background:#3c3c3c}.row__decoration-tail{color:#3c3c3c;font-size:14px}.tf--inline{background:var(--card-0);border-color:var(--card-0);box-shadow:var(--ring-blue);width:100%}.dns-row{grid-template-columns:60px 1fr;align-items:center;gap:12px;display:grid}.dns-row__label{color:var(--text-60);font-size:14px;font-weight:500}.dns-row__value{border-radius:var(--radius-md);min-height:42px;color:var(--text);background:#000;justify-content:space-between;align-items:center;gap:8px;padding:10px 16px;font-size:14px;display:flex}.dns-row__value button{color:var(--text-70)}.dns-row__value button:hover{color:var(--text)}.overview{flex-direction:column;gap:12px;padding-bottom:100px;display:flex}.overview__topbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.connection{align-items:center;gap:16px;display:flex}.connection__item{color:var(--text-50);align-items:center;gap:4px;font-size:12px;display:flex}.connection__dot{border-radius:var(--radius-full);background:var(--accent-blue);width:8px;height:8px;box-shadow:0 0 6px var(--accent-blue)}.connection__dot--green{background:var(--brand-green);box-shadow:0 0 6px #cdff44b3}.projects{z-index:5;align-items:center;gap:8px;display:flex;position:relative}.projects__label{color:var(--text-60);flex-shrink:0;width:96px;font-size:14px;font-weight:500}.project-pill{background:var(--card-2);border:.5px solid var(--card-2);color:var(--text);cursor:pointer;border-radius:12px;align-items:center;gap:24px;min-width:184px;padding:8px 6px 8px 20px;font-size:12px;font-weight:500;transition:background .14s,border-color .14s;display:flex;position:relative}.project-pill--active,.project-pill--open{background:var(--card-0,#2d2d2d);border-color:var(--border-1,#a3a3a3)}.project-pill__main{min-width:0;font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:0;display:flex}.project-pill__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-pill__left{align-items:center;gap:8px;min-width:0;display:flex}.project-pill__icons{flex-shrink:0;align-items:center;gap:12px;display:flex}.project-pill__icon-btn{width:24px;height:24px;color:var(--text-60,#a3a3a3);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:color .14s,background .14s;display:inline-flex}.project-pill__icon-btn:hover{color:#fff;background:#ffffff0f}.project-pill__icon-btn--active{color:#fff;background:#ffffff14}.project-pill__icon-btn--disabled{color:var(--text-50,#ffffff80);cursor:not-allowed}.project-pill__icon-btn--disabled:hover{color:var(--text-50,#ffffff80);background:0 0}.project-pill__chev{transition:transform .16s}.project-pill__chev--open{transform:rotate(180deg)}.project-pill__more{background:var(--card-0,#2d2d2d);border:.5px solid var(--border-1,#a3a3a3);z-index:40;cursor:default;border-radius:10px;flex-direction:column;gap:2px;min-width:160px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #00000073}.project-pill__more-item{width:100%;font:inherit;color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;line-height:18px;transition:background .14s,color .14s;display:flex}.project-pill__more-item:hover{background:#ffffff0f}.project-pill__more-item--danger{color:var(--accent-red,#d53057)}.project-pill__more-item--danger:hover{background:#d530571f}.project-pill--new{background:var(--brand-green);border-color:var(--border-soft);color:#000;min-width:142px;margin-left:auto;font-weight:600}.project-pill--new:hover{filter:brightness(1.05)}.project-pill__menu{background:var(--card-0,#2d2d2d);border:.5px solid var(--border-1,#a3a3a3);border-radius:var(--radius,10px);z-index:30;cursor:default;flex-direction:column;gap:4px;width:100%;min-width:184px;padding:12px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #00000073}.project-pill__menu-error{color:var(--accent-red,#d53057);margin:4px 0 0;font-size:11px;font-weight:400;line-height:1.3}.project-pill__menu-list{flex-direction:column;gap:4px;display:flex}.project-pill__menu-row{width:100%;font:inherit;color:#fff;cursor:pointer;border-radius:var(--radius,10px);background:0 0;border:0;justify-content:space-between;align-items:center;padding:2px 0;display:flex}.project-pill__menu-row:hover .project-pill__menu-date{color:var(--brand-base,#e5ff8f)}.project-pill__menu-date{color:#fff;font-size:14px;font-weight:400;line-height:20px;transition:color .14s}.project-pill__menu-empty{color:var(--text-60,#a3a3a3);padding:4px 0;font-size:12px}.scan-badge{border-radius:var(--rounded-lg,8px);color:var(--card-1,#1d1d1e);justify-content:center;align-items:center;padding:2px 8px;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.scan-badge--running{background:var(--brand-base,#e5ff8f)}.scan-badge--ready{background:#4ed34e}.scan-badge--cancelled{color:#ffffffd9;background:#ffffff40}.overview__topbar-actions{align-items:center;gap:10px;display:flex}.topbar-icon{border-radius:var(--radius-full);background:var(--card-1);border:.5px solid var(--border-2);width:34px;height:34px;color:var(--text-80);justify-content:center;align-items:center;transition:color .15s,background .15s;display:inline-flex;position:relative}.topbar-icon:hover{color:var(--text);background:var(--card-0)}.topbar-icon:disabled{opacity:.5;cursor:not-allowed}.notif{position:relative}.notif__badge{background:var(--accent-red);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:600;display:inline-flex;position:absolute;top:-4px;right:-4px}.notif__panel{background:var(--card-1);border:.5px solid var(--border-0);border-radius:var(--radius-md);z-index:30;width:320px;max-height:420px;padding:12px;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 20px 40px #0006}.notif__head{color:var(--text-80);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;display:flex}.notif__head button{color:var(--accent-blue);font-size:12px}.notif__head button:hover{color:var(--text)}.notif__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.notif__list li{background:var(--card-2);border:.5px solid var(--border-2);border-radius:var(--radius-sm);padding:10px 12px}.notif__list li.is-read{opacity:.6}.notif__title{color:var(--text);font-size:13px;font-weight:500}.notif__body{color:var(--text-60);margin-top:2px;font-size:12px}.notif__empty{color:var(--text-60);text-align:center;padding:16px 0;font-size:12px}.tf__badge{color:var(--brand-green);align-items:center;display:inline-flex}.scan{background:var(--card-1);border:.5px solid var(--border-0);border-radius:var(--radius-md);align-items:center;gap:24px;padding:16px 26px;display:flex}.scan--empty{justify-content:space-between;gap:20px;display:flex}.scan__divider{background:var(--border-2);flex:0 0 1px;width:1px;height:52px}.scan__timer{flex-shrink:0;align-items:center;gap:18px;display:flex}.scan__time{flex-direction:column;gap:4px;min-width:113px;display:flex}.scan__time h2{letter-spacing:-.26px;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:26px;font-weight:600;line-height:24px}.scan__time-label{color:#ffffffb3;letter-spacing:-.1px;font-size:10px;line-height:24px}.scan__actions{color:var(--brand-green);align-items:center;gap:18px;display:flex}.scan__actions button:not(.btn--accent){color:var(--brand-green);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;transition:filter .15s;display:inline-flex}.scan__actions button:disabled{opacity:.4;cursor:not-allowed}.scan__actions button:not(.btn--accent):hover{filter:brightness(1.15)}.scan__progress{flex:1;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;min-width:0;display:grid}.scan__progress-stage{flex-direction:column;gap:4px;display:flex}.scan__progress-stage span:first-child{color:var(--text-70);letter-spacing:-.1px;white-space:nowrap;font-size:10px;font-weight:500}.progress-bar{border-radius:var(--radius-full);background:#000;align-items:center;height:14px;padding:2px;display:flex;position:relative;overflow:hidden}.progress-bar__fill{border:1px solid var(--brand-green);border-radius:var(--radius-full);background:#e5ff9f80;height:100%;transition:width .3s;position:relative}.progress-bar__fill:after{content:"";background:var(--brand-green);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;right:-2px;transform:translateY(-50%);box-shadow:0 0 8px #cdff44cc}.progress-bar__fill--full:after{display:none}.metrics{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.overview__section-label{color:var(--text-60);letter-spacing:.06em;margin-top:24px;margin-bottom:-4px;font-size:14px;font-weight:500}.metric{background:var(--brand-green);border:.5px solid var(--brand-base);border-radius:var(--radius-md);flex-direction:column;gap:24px;min-height:163px;padding:16px 26px;display:flex}.metric__head{justify-content:space-between;align-items:center;display:flex}.metric__label{color:#000;font-size:18px;font-weight:500;line-height:20px}.metric__sub{color:#000000b3;font-size:10px}.metric__sub--cjk{color:#0003}.metric__icon{background:var(--brand-dark);border-radius:var(--radius-md);color:#000;width:46px;height:46px;box-shadow:var(--shadow-xs);justify-content:center;align-items:center;display:inline-flex}.metric__value{color:#000;font-size:72px;font-weight:500;line-height:20px}.metric__value--cjk{color:#b8f61e}.lists{grid-template-columns:1fr 1fr;gap:20px;display:grid}.list-card{min-height:201px}.list-card__title{color:var(--text);font-size:18px;font-weight:500}.list-card__body{flex-direction:column;gap:8px;display:flex}.row{border-bottom:1px solid var(--card-0);color:inherit;text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:11px;width:100%;padding:6px 0;display:flex}.row:last-child{border-bottom:none}.row--interactive{cursor:pointer;border-radius:var(--radius-sm);padding:8px 4px;transition:background .15s}.row--interactive:hover{background:#ffffff08}.row__left{align-items:center;gap:11px;font-size:14px;display:flex}.row__dot{border-radius:var(--radius-full);background:var(--accent-red);flex-shrink:0;width:8px;height:8px}.row__dot--orange{background:var(--accent-orange)}.row__dot--blue{background:var(--accent-blue)}.row__dot--purple{background:var(--accent-purple)}.row__dot--gray{background:var(--text-dim)}.row__label{color:var(--text-80)}.row__right{color:var(--text-50);align-items:center;gap:8px;font-size:14px;display:flex}.row__poc{color:var(--brand-base);font-size:12px;font-weight:500}.row__time{color:var(--text-50);flex-shrink:0;min-width:68px;font-size:14px}.row__stage{flex-shrink:0;min-width:68px;font-size:14px;font-weight:500}.row__stage--red{color:var(--accent-red)}.row__stage--orange{color:var(--accent-orange)}.row__stage--blue{color:var(--accent-blue)}.row__stage--purple{color:var(--accent-purple)}.row--cjk{color:var(--text-dim);font-family:var(--font-cjk)}.banner{background:var(--accent-blue);border:.5px solid var(--card-0);border-radius:var(--radius-md);color:var(--text);justify-content:space-between;align-items:center;gap:16px;padding:16px 26px;font-size:18px;font-weight:500;display:flex}.graph{background:var(--card-1);border:.5px solid var(--border-0);border-radius:var(--radius-md);min-height:608px;padding:0;position:relative;overflow:hidden}.graph__canvas{cursor:grab;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 20% 20%, #cdff440a, transparent 50%), radial-gradient(circle at 80% 80%, #d530570a, transparent 50%), var(--card-1);width:100%;height:608px;position:relative;overflow:hidden}.graph__canvas:active{cursor:grabbing}.graph__canvas svg{pointer-events:auto;will-change:transform;display:block}.graph__canvas svg circle{pointer-events:all}.graph__tooltip{pointer-events:none;border:.5px solid var(--border-soft);min-width:180px;max-width:260px;color:var(--text);z-index:5;background:#000000e6;border-radius:10px;padding:10px 14px;font-size:12px;line-height:16px;animation:.14s ease-out both graph-tooltip-fade;position:absolute;box-shadow:0 8px 24px -8px #000000b3}.graph__tooltip-kind{letter-spacing:.1em;color:var(--text-60);text-transform:uppercase;margin:0 0 4px;font-size:10px;font-weight:600}.graph__tooltip-title{color:var(--text);word-break:break-word;margin:0;font-size:13px}.graph__tooltip-meta{color:var(--text-60);margin:6px 0 0;font-size:11px}@keyframes graph-tooltip-fade{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.graph__title{margin:0 0 8px;font-size:18px;font-weight:500}.graph--empty{min-height:608px;padding:20px 26px}.graph--empty .graph__title{margin:0 0 24px}.graph__decoration{color:#3c3c3c;-webkit-user-select:none;user-select:none;pointer-events:none;word-break:break-word;max-width:930px;margin:0;font-family:Inter,Noto Sans SC,Noto Sans JP,sans-serif;font-size:14px;line-height:20px}.graph__placeholder{position:absolute;inset:60px 72px 40px 26px}.graph__poem{color:var(--text-dim);font-size:14px;font-family:var(--font-cjk);line-height:1.6;position:absolute;top:60px;left:26px;right:72px}.graph__host-tag{background:var(--card-0);border-radius:var(--radius-md);color:var(--text);pointer-events:none;z-index:2;border:.5px solid #e5ff8f9e;padding:6px 14px;font-size:10px;font-weight:500;position:absolute;top:50%;left:36px;transform:translateY(-50%)}.graph__zoom{border:.5px solid var(--border-soft);border-radius:var(--radius-md);width:56px;color:var(--text);background:#2f2f2f;flex-direction:column;align-items:center;gap:16px;padding:16px 0;display:flex;position:absolute;top:16px;right:16px}.graph__zoom hr{border:none;border-top:2px solid var(--brand-green);width:36px;margin:0}.graph__zoom-pct{font-size:10px;line-height:20px}.graph__node{background:var(--accent-red);border:.5px solid #ffffff4d;border-radius:50%;width:18px;height:18px;box-shadow:0 0 10px #d5305780}.graph__node--green{background:var(--brand-base);border-color:var(--brand-green);box-shadow:0 0 10px #e5ff8fb3}.graph__node--blue{background:var(--accent-blue);box-shadow:0 0 10px #427aea80}.graph__node--orange{background:var(--accent-orange);box-shadow:0 0 10px #ff9e0080}.graph__node--dim{box-shadow:none;background:#6b1121}.sidebar-toggle{width:24px;height:24px;color:var(--text-80);z-index:5;background:var(--card-1);border-radius:var(--radius-full);border:.5px solid var(--border-2);justify-content:center;align-items:center;display:inline-flex;position:absolute;bottom:24px;left:175px}@media (width<=960px){.metrics,.lists{grid-template-columns:1fr}}@media (width<=860px){.overview{gap:12px;padding-bottom:80px}.overview__topbar{flex-wrap:wrap;gap:10px}.projects{flex-wrap:wrap;overflow-x:auto}.projects__label{flex-basis:100%;width:auto}.project-pill{flex:auto;gap:12px;min-width:140px;padding:6px 6px 6px 14px}.project-pill__icons{gap:6px}.project-pill--new{min-width:120px;margin-left:0}.scan{grid-template-columns:1fr;gap:16px;padding:14px 16px}.scan__divider{display:none}.scan__timer{justify-content:space-between}.scan__time h2{font-size:22px}.scan__progress{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px}.card,.card--lg{padding:14px 16px}.metric{min-height:130px;padding:14px 16px}.metric__value{font-size:56px}.overview__topbar-actions{gap:6px}.banner{flex-direction:column;align-items:flex-start;gap:8px;padding:14px 16px;font-size:14px}.graph{min-height:460px;padding:14px 12px}.graph__placeholder{inset:48px 12px 20px}.graph__host-tag{bottom:10px;left:12px}.graph__zoom{gap:10px;width:48px;padding:10px 0}.notif__panel{width:min(320px,100vw - 32px)}.onboarding{gap:20px;margin:20px auto 0;padding:0 4px}.onboarding__title{font-size:24px}.onboarding__step{grid-template-columns:40px 1fr;gap:10px}.onboarding__num{width:40px;height:40px;font-size:20px}.dns-row{grid-template-columns:52px 1fr;gap:8px}.dns-row__value{padding:8px 12px;font-size:12px}}@media (width<=480px){.overview__section-label{margin-top:16px}.scan__progress{grid-template-columns:repeat(2,minmax(0,1fr))}.metric__value{font-size:44px}.project-pill{width:100%;min-width:0}.project-pill--new{width:100%}}.findings__header{justify-content:space-between;align-items:center;gap:16px;margin-top:24px;margin-bottom:4px;display:flex}.findings__tabs{gap:8px;display:flex}.findings__tab{border-radius:var(--radius-md);color:#0a0a0a;cursor:pointer;background:#575757;border:0;justify-content:center;align-items:center;min-width:29px;min-height:29px;padding:4px 12px;font-size:12px;font-weight:500;line-height:20px;transition:background .15s,color .15s,filter .15s;display:inline-flex}.findings__tab:hover{filter:brightness(1.08)}.findings__tab--active{color:#000;background:#fff;box-shadow:0 1px 1.5px #0000001a,0 1px 1px #0000001a}.findings__list{flex-direction:column;gap:10px;display:flex}.finding-card{background:var(--card-1);border:.5px solid var(--card-0);border-radius:12px;transition:background .15s;overflow:hidden}.finding-card--expanded .finding-card__head{border-bottom:.5px solid var(--card-0)}.finding-card__head{cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:0;justify-content:space-between;align-items:center;padding:16px 26px;display:flex}.finding-card__head:hover{background:#ffffff05}.finding-card__title-block{flex-direction:column;flex:1;gap:16px;min-width:0;display:flex}.finding-card__title{color:var(--text);margin:0;font-size:16px;font-weight:400;line-height:20px}.finding-card__badges{align-items:center;gap:8px;display:flex}.finding-badge{color:#fff;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:2px 8px;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.finding-badge--confirmed{background:#0f09}.finding-badge--open,.finding-badge--rejected{background:#ffffff2e}.finding-badge--critical,.finding-badge--high{background:var(--accent-red);border-color:var(--accent-red)}.finding-badge--medium{background:var(--accent-orange);border-color:var(--accent-orange);color:#000}.finding-badge--low{background:#ffffff2e}.finding-card__chevron{width:24px;height:24px;color:var(--text-80);flex-shrink:0;justify-content:center;align-items:center;margin-left:16px;transition:transform .15s;display:inline-flex}.finding-card__body{background:var(--card-2);flex-direction:column;gap:22px;padding:26px 26px 16px;display:flex}.finding-field{flex-direction:column;gap:6px;display:flex}.finding-field__label{color:#fff9;margin:0;font-size:14px;font-weight:500;line-height:20px}.finding-field__value{color:var(--text);background:#000;border-radius:12px;padding:8px 16px;font-size:14px;line-height:20px}.finding-field__value--multiline pre{white-space:pre-wrap;word-break:break-word;margin:0;font-family:inherit}.finding-field__value--mono pre{font-family:Roboto Mono,ui-monospace,monospace;font-size:13px}.hyp__header{justify-content:space-between;align-items:center;gap:16px;margin-top:24px;margin-bottom:4px;display:flex}.hyp__tabs{gap:8px;display:flex}.hyp__tab{border-radius:var(--radius-md);color:#0a0a0a;cursor:pointer;background:#575757;border:0;justify-content:center;align-items:center;min-width:29px;min-height:29px;padding:4px 12px;font-size:12px;font-weight:500;line-height:20px;transition:filter .15s;display:inline-flex}.hyp__tab:hover{filter:brightness(1.08)}.hyp__tab--active{color:#000;background:#fff;box-shadow:0 1px 1.5px #0000001a,0 1px 1px #0000001a}.hyp__list{flex-direction:column;gap:10px;display:flex}.hyp-row{background:var(--card-1);border:.5px solid var(--card-0);border-radius:12px;transition:border-color .15s;overflow:hidden}.hyp-row__head{justify-content:space-between;align-items:center;gap:16px;padding:16px 26px;display:flex}.hyp-row__lead{flex:1;align-items:center;gap:24px;min-width:0;display:flex}.hyp-row__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.hyp-row__dot--red{background:var(--accent-red);box-shadow:0 0 6px #d53057b3}.hyp-row__dot--orange{background:var(--accent-orange);box-shadow:0 0 6px #ff9e00b3}.hyp-row__dot--blue{background:var(--accent-blue);box-shadow:0 0 6px #427aeab3}.hyp-row__dot--green{background:#4ed34e;box-shadow:0 0 6px #4ed34eb3}.hyp-row__kind{color:var(--text);letter-spacing:.02em;white-space:nowrap;margin-left:-16px;font-size:16px;font-weight:400}.hyp-row__title{color:#fff9;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:16px;font-weight:400;overflow:hidden}.hyp-row__actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.hyp-action{color:#fff;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #fff;border-radius:12px;justify-content:center;align-items:center;gap:8px;height:32px;min-height:32px;padding:10px 24px;font-size:14px;font-weight:500;line-height:20px;transition:background .15s;display:inline-flex}.hyp-action:hover{background:#ffffff14}.hyp-action:disabled{opacity:.4;cursor:not-allowed}.hyp-action--ghost{border-color:#0000}.hyp-action--ghost:hover{background:#ffffff0f}.hyp-badge{color:#1d1d1e;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:2px 8px;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.hyp-badge--analyse{background:var(--accent-orange);color:#1d1d1e}.hyp-badge--ready{color:#1d1d1e;background:#4ed34e}.hyp-badge--rejected,.hyp-badge--default{color:#fff;background:#ffffff2e}.hyp-row--expanded{background:var(--card-2);border-color:var(--card-0)}.hyp-row--expanded .hyp-row__head{background:var(--card-1);border-bottom:.5px solid var(--card-0)}.hyp-row__body{background:var(--card-2);padding:26px 26px 16px}.hyp-field{flex-direction:column;gap:6px;display:flex}.hyp-field__label{color:#fff9;margin:0;font-size:14px;font-weight:500;line-height:20px}.hyp-field__value{color:var(--text);background:#000;border-radius:12px;padding:8px 16px;font-size:14px;line-height:20px}.hyp-field__value pre{white-space:pre-wrap;word-break:break-word;margin:0;font-family:Roboto Mono,ui-monospace,monospace;font-size:13px}.btn--outline{border-radius:var(--radius-full);border:.5px solid var(--border-1);height:32px;color:var(--text);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;transition:background .15s,color .15s;display:inline-flex}.btn--outline:hover{background:var(--card-0)}.btn--outline:disabled{cursor:not-allowed;opacity:.35}@media (width<=900px){.hyp__header{flex-direction:column;align-items:flex-start}.hyp__tabs{flex-wrap:wrap}.hyp-row__head{flex-direction:column;align-items:flex-start;gap:14px}.hyp-row__actions{flex-wrap:wrap}}.feed{background:var(--card-1);border:.5px solid var(--border-0);border-radius:var(--radius-md);overflow:hidden}.feed__row{border-bottom:.5px solid var(--card-0);grid-template-columns:80px max-content 1fr;align-items:center;gap:12px;padding:12px 26px;font-size:14px;display:grid}.feed__row:last-child{border-bottom:none}.feed__row--new{animation:.48s cubic-bezier(.22,.61,.36,1) both feed-row-enter}@keyframes feed-row-enter{0%{opacity:0;background:#cdff4414;transform:translateY(-12px)}60%{background:#cdff440d}to{opacity:1;background:0 0;transform:translateY(0)}}.feed__footer{color:var(--text-60);justify-content:space-between;align-items:center;gap:16px;padding-top:10px;font-size:13px;display:flex}.feed__sentinel{color:var(--text-60);justify-content:center;align-items:center;padding:18px 0;font-size:13px;display:flex}.feed__sentinel-spinner{border:1.5px solid var(--text-60);border-top-color:#0000;border-radius:50%;width:14px;height:14px;margin-right:8px;animation:.7s linear infinite feed-spinner}@keyframes feed-spinner{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.feed__row--new,.feed__sentinel-spinner{animation:none!important}}@media (width<=860px){.feed__row{grid-template-columns:64px max-content 1fr;gap:8px;padding:10px 14px;font-size:12px}.feed__row .row__label{text-overflow:ellipsis;overflow:hidden}.feed__footer{text-align:center;flex-direction:column;gap:8px}}@media (width<=480px){.feed__row{grid-template-columns:54px max-content 1fr;padding:8px 10px}}.reports{flex-direction:column;gap:14px;display:flex}.reports__row{background:var(--card-1);border:.5px solid var(--card-0);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:20px;padding:18px 26px;display:flex}.reports__info{flex-direction:column;gap:6px;min-width:0;display:flex}.reports__title{color:var(--text);align-items:center;gap:10px;font-size:16px;font-weight:500;display:flex}.reports__date{color:var(--text-60);font-size:13px}.reports__actions{flex-shrink:0;gap:8px;display:flex}.btn--outline:disabled{opacity:.35;cursor:not-allowed}.reports__header{justify-content:space-between;align-items:center;gap:16px;margin-top:16px;margin-bottom:4px;display:flex}.btn--outline-danger{color:var(--accent-red);border-color:#d5305780}.btn--outline-danger:hover{background:#d530571a}.reports__preview-frame{background:var(--text);color:#000;border:0;width:100%;min-height:420px;max-height:60vh;display:block}@media (width<=860px){.reports__header{flex-direction:column;align-items:stretch;gap:10px}.reports__row{flex-direction:column;align-items:stretch;gap:12px;padding:14px 16px}.reports__actions{flex-wrap:wrap}.reports__actions .btn--outline{flex:auto;min-width:0}}.settings__grid{grid-template-columns:1fr 1fr;gap:80px;max-width:1100px;margin-top:16px;display:grid}.settings__heading{color:var(--text);margin:0 0 20px;font-size:32px;font-weight:600;line-height:36px}.settings__scan-card{background:var(--brand-green);border:.5px solid var(--brand-base);border-radius:var(--radius-md);color:#000;flex-direction:column;justify-content:space-between;gap:16px;width:300px;max-width:100%;min-height:170px;padding:18px 24px 24px;display:flex;position:relative}.settings__scan-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.settings__scan-label{color:#000;font-size:18px;font-weight:600}.settings__scan-sub{color:#000000b3;margin-top:4px;font-size:12px}.settings__scan-value{color:#000;font-size:72px;font-weight:500;line-height:1}.settings__scan-badge{border-radius:var(--radius-full);background:var(--brand-dark);color:#000;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.settings__helper{color:var(--text-60);margin:10px 0 16px;font-size:11px}.settings__cta{background:var(--brand-green);color:#000;border-radius:var(--radius-md);justify-content:center;align-items:center;gap:8px;min-width:220px;padding:10px 18px;font-size:14px;font-weight:600;display:inline-flex}.settings__cta:hover:not(:disabled){filter:brightness(1.05)}.settings__cta:disabled{opacity:.6;cursor:not-allowed}.settings__toast{color:var(--brand-green);word-break:break-all;margin-top:10px;font-size:12px}.settings__actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.settings__form{flex-direction:column;gap:14px;max-width:500px;display:flex}.settings__field{background:var(--card-0);border:.5px solid var(--card-0);border-radius:var(--radius-md);min-height:44px;padding:10px 16px;transition:box-shadow .15s;display:flex}.settings__field:focus-within{box-shadow:var(--ring-blue)}.settings__field input{color:var(--text);flex:1;font-size:14px}.settings__field input:disabled{cursor:not-allowed;color:var(--text-60)}.settings__lang{background:var(--card-1);border:.5px solid var(--card-0);border-radius:var(--radius-full);gap:2px;padding:4px;display:inline-flex}.settings__lang-option{border-radius:var(--radius-full);color:var(--text-60);text-align:center;min-width:92px;padding:8px 18px;font-size:13px;font-weight:500;transition:background .18s,color .18s}.settings__lang-option:hover:not(.settings__lang-option--active){color:var(--text)}.settings__lang-option--active{background:var(--brand-green);color:#000;cursor:default}.settings__lang-hint{color:var(--text-60);margin:10px 0 0;font-size:11px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=960px){.settings__grid{grid-template-columns:1fr;gap:40px}}@media (width<=860px){.settings__heading{margin-bottom:14px;font-size:24px;line-height:28px}.settings__scan-card{width:100%;min-height:140px;padding:14px 16px}.settings__scan-value{font-size:56px}.settings__cta{width:100%;min-width:0;padding:12px 18px}.settings__form{max-width:100%}.settings__actions{justify-content:stretch}.settings__actions .btn--outline{flex:auto}}
