
:root{color-scheme:dark;--bg:#0b1018;--panel:#121a25;--line:#253040;--muted:#8e9eaf;--mint:#b6f5cc;--text:#e8edf2}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 85% 0,#16312c55,transparent 40%),var(--bg);color:var(--text);font:14px/1.6 "Segoe UI","Malgun Gothic",sans-serif}header{height:84px;border-bottom:1px solid var(--line);padding:0 4vw;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;font-weight:700;letter-spacing:2px}.mark{font-size:32px;color:var(--mint)}.brand-sub{font-size:10px;color:var(--muted);border-left:1px solid var(--line);padding-left:14px;letter-spacing:1px}.local{font-size:10px;letter-spacing:2px;color:var(--muted)}.local i{display:inline-block;width:6px;height:6px;background:var(--mint);border-radius:50%;margin-right:8px;box-shadow:0 0 12px #b6f5cc}main{max-width:1680px;margin:auto;padding:0 4vw}.hero{display:flex;justify-content:space-between;align-items:center;padding:48px 0 38px;animation:enter .65s ease both}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--mint);font-weight:600}h1{font-size:clamp(30px,3.3vw,50px);font-weight:500;line-height:1.3;letter-spacing:-2px;margin:16px 0}h1 em{font-style:normal;color:var(--mint)}p{color:var(--muted)}.orb{position:relative;width:220px;height:220px;display:grid;place-items:center;margin-right:6vw}.orb div{position:absolute;inset:0;border:1px solid #b6f5cc35;border-radius:50%;background:repeating-radial-gradient(ellipse,transparent 0 19px,#b6f5cc12 20px 21px);animation:spin 45s linear infinite;transform:rotateX(35deg)}.orb:after{content:"";position:absolute;inset:28px;border:1px solid #b6f5cc60;border-radius:50%;transform:rotate(-30deg) scaleX(.5)}.orb span{z-index:1;font-size:9px;letter-spacing:3px;color:var(--muted)}.orb b{display:block;font-size:15px;color:var(--mint);line-height:1.5;margin-top:10px}.runbar{display:flex;align-items:center;gap:12px;background:#121c27;border:1px solid var(--line);border-radius:12px;padding:16px 20px}.run-input{display:flex;align-items:center;gap:18px;flex:1}label{white-space:nowrap;color:var(--muted);font-size:12px}button,select,input{font:inherit;color:var(--text);background:#17222e;border:1px solid #304052;border-radius:7px;padding:9px 12px}select{max-width:100%;min-width:260px}button{cursor:pointer;transition:background .2s,transform .2s,border-color .2s}button:hover{background:#263948;border-color:#75968a;transform:translateY(-1px)}button:disabled{opacity:.35;cursor:default;transform:none}:focus-visible{outline:2px solid var(--mint);outline-offset:3px}.pill{display:inline-block;border-radius:5px;background:#20302e;color:var(--mint);font-size:11px;padding:4px 9px;white-space:nowrap}#notice{color:var(--muted);font-size:12px;min-height:35px;padding:8px 2px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:8px 0 30px}.stats article{border:1px solid var(--line);border-radius:12px;background:linear-gradient(140deg,#17212e,#111923);padding:22px;animation:enter .65s ease both}.stats article:nth-child(2){animation-delay:.07s}.stats article:nth-child(3){animation-delay:.14s}.stats article:nth-child(4){animation-delay:.21s}.stats article:nth-child(5){animation-delay:.28s}.stats span{color:#aab7c6;font-size:12px}.stats strong{display:block;font-size:36px;font-weight:500;letter-spacing:-1px;line-height:1.65;font-variant-numeric:tabular-nums}.stats small{font-size:10px;color:var(--muted)}.stats .accent{background:linear-gradient(130deg,#264334,#172b28);border-color:#45634e}.accent strong{color:var(--mint)}.workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(310px,1fr);gap:20px;align-items:start}.listing,aside{background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:24px 22px 14px}h2{margin:5px 0;font-size:21px;font-weight:500}#shown{font-size:13px;color:var(--muted);margin-left:7px}#search{width:220px;font-size:12px}.filters{display:flex;gap:5px;padding:0 22px 18px;flex-wrap:wrap}.filters button{border:0;background:transparent;color:var(--muted);font-size:12px}.filters .active{background:#b6f5cc;color:#14291e}.table-wrap{overflow-x:auto;min-height:240px}table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:left}th{font-size:10px;color:var(--muted);font-weight:500;padding:11px 20px;background:#182230;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:15px 20px;border-bottom:1px solid #25304099;font-size:12px}tbody tr{cursor:pointer;transition:background .18s}tbody tr:hover,tbody tr.selected{background:#21342f}tbody tr.selected td:first-child{box-shadow:inset 3px 0 var(--mint)}.stock{background:none;border:0;padding:0;color:var(--text);font-weight:600;text-align:left}.stock:hover{background:none;transform:none}td small{display:block;color:var(--muted);font-size:10px;letter-spacing:.5px}.tag{font-size:10px;border:1px solid #41634f;background:#22372f;color:var(--mint);padding:3px 7px;border-radius:4px}.tag.error,.tag.deferred{color:#eabda0;background:#382c25;border-color:#634938}.tag.overheated{color:#cfbafa;background:#302a40;border-color:#57456b}.tag.unmatched{color:#a5b4c4;background:#222e3b;border-color:#384756}.pagination{padding:14px 20px;display:flex;align-items:center;justify-content:space-between}.pagination button{font-size:11px}.pagination span{color:var(--muted);font-size:11px}aside{position:sticky;top:20px;max-height:85vh;overflow:auto}.detail-top{padding:24px;background:linear-gradient(145deg,#21372e,#151e2b);border-bottom:1px solid var(--line)}.detail-title{display:flex;justify-content:space-between;align-items:center}.detail-top h2{font-size:26px;margin:8px 0}.detail-top p{margin:6px 0;font-size:12px}.detail-content{padding:20px}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}.metric-grid small{display:block;font-size:10px;color:var(--muted)}.metric-grid b{font-size:17px;font-weight:500;font-variant-numeric:tabular-nums}.pattern{border-left:2px solid var(--mint);padding:7px 12px;color:var(--mint);font-size:12px;background:#b6f5cc08;margin:6px 0}.checks{margin-top:22px}.check{border-bottom:1px solid var(--line);padding:12px 0}.check summary{cursor:pointer;display:flex;align-items:center;gap:9px;font-size:12px}.check summary b{color:var(--muted);font-size:10px}.check .dot{width:6px;height:6px;border-radius:50%;background:#536170}.check.yes .dot{background:var(--mint);box-shadow:0 0 9px #b6f5cc55}.check p{font-size:11px;margin:8px 0}.values{font-size:11px;display:grid;grid-template-columns:1fr auto;gap:5px;color:#aab8c8;overflow-wrap:anywhere}.values span:nth-child(even){color:var(--text);text-align:right}.warnings{margin-top:20px;border-radius:6px;background:#0d141d;padding:12px;font-size:11px;color:var(--muted)}.warnings p{margin:5px 0}.empty{text-align:center;padding:60px 20px;color:var(--muted);font-size:13px}.detail-enter{animation:enter .3s ease both}footer{padding:28px 0 35px;display:flex;justify-content:space-between;gap:15px;color:#708295;font-size:11px}body.loading #refresh{opacity:.5;pointer-events:none}@keyframes enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1100px){.stats{grid-template-columns:repeat(3,1fr)}.workspace{grid-template-columns:1fr}aside{position:static;max-height:none}.orb{margin-right:0}.section-head{flex-wrap:wrap}}@media(max-width:650px){.brand-sub,.local,.orb{display:none}.hero{padding:30px 0}.runbar,.run-input{flex-wrap:wrap}.run-input{flex-basis:100%}select{min-width:0;width:100%}.stats{grid-template-columns:repeat(2,1fr)}.stats article{padding:16px}.stats strong{font-size:30px}#search{width:100%}.section-head{align-items:stretch;flex-direction:column}footer{flex-direction:column}td,th{padding:12px}.metric-grid b{font-size:15px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:900px){.runbar{flex-wrap:wrap}.run-input{flex-basis:100%;min-width:0}.run-input select{min-width:0;flex:1}.runbar>button{white-space:nowrap;flex-shrink:0}}

.return-up{color:#ff8585}.return-down{color:#81b5ff}.muted,.return-note{color:var(--muted,#a0acbc)}.return-note{font-size:12px;line-height:1.7;padding:0 20px}.table-wrap table{min-width:900px}.table-wrap:focus-visible{outline:2px solid var(--mint);outline-offset:2px}

.return-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;padding:16px 20px 0}.return-filters label{display:grid;gap:6px;font-size:12px;color:var(--muted)}.return-filters input,.return-filters select{background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:10px;max-width:160px}.return-filters input[aria-invalid=true]{border-color:#ff8585}.return-filters input:focus-visible,.return-filters select:focus-visible{outline:2px solid var(--mint)}@media(max-width:600px){.return-filters label{flex:1 1 110px}.return-filters input,.return-filters select{width:100%;max-width:none}}

.site-header{flex-wrap:wrap;gap:16px;height:auto;min-height:76px}.site-nav{display:flex;flex-wrap:wrap;gap:8px}.site-nav a{color:var(--muted);padding:10px 14px;border-radius:8px;text-decoration:none;transition:background .15s,color .15s}.site-nav a:hover,.site-nav a.active{color:var(--mint);background:#20352d}.site-nav a:focus-visible{outline:2px solid var(--mint);outline-offset:2px}@media(max-width:600px){.site-nav{width:100%;gap:4px}.site-nav a{padding:9px 10px;font-size:13px}}
.scan-panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px;margin:22px 0}.scan-panel textarea{display:block;box-sizing:border-box;width:100%;margin-top:12px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);font:14px/1.8 monospace;resize:vertical}.scan-panel textarea:focus-visible{outline:2px solid var(--mint)}.scan-panel p{color:var(--muted);line-height:1.7}.scan-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.scan-actions a{color:var(--mint)}#scan-start{background:var(--mint);color:#10251a;font-weight:700}#scan-error{color:#ff8585}.scan-panel progress{display:block;width:100%;height:8px;accent-color:var(--mint);margin:18px 0}.scan-follow{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}#scan-follow{width:auto}#scan-log{height:340px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#080d14;border:1px solid var(--line);border-radius:10px;padding:18px;font:12px/1.8 monospace}#scan-log:focus-visible{outline:2px solid var(--mint)}@media(max-width:600px){.scan-panel{padding:16px}.scan-panel .section-head{padding:0}#scan-log{height:280px}}

.stock-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.stock-links a{display:inline-flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #45634e;border-radius:7px;background:#14261f;color:var(--mint);text-decoration:none;font-size:12px;transition:background .2s,border-color .2s}.stock-links a:hover{background:#294536;border-color:var(--mint)}.stock-links a span{opacity:.65}.detail-top .stock-links-note{font-size:10px;margin-top:10px;overflow-wrap:anywhere}

.stock-links a{position:relative;justify-content:center;width:40px;height:40px;padding:8px;flex-shrink:0}.stock-links a svg{display:block}.stock-links .stock-link-tooltip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%,4px);padding:5px 9px;border:1px solid #45634e;border-radius:6px;background:#0b1410;color:var(--text);font-size:11px;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s,transform .15s,visibility .15s;z-index:5}.stock-links a:first-child .stock-link-tooltip{left:0;transform:translateY(4px)}.stock-links a:hover .stock-link-tooltip,.stock-links a:focus-visible .stock-link-tooltip{opacity:1;visibility:visible;transform:translate(-50%,0)}.stock-links a:first-child:hover .stock-link-tooltip,.stock-links a:first-child:focus-visible .stock-link-tooltip{transform:translateY(0)}
