:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f4f4f5;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--surface-0:#101114;--surface-1:#18191d;--surface-2:#22242a;--surface-3:#2d3037;--border:#353841;--border-hover:#4b505c;--text-primary:#f4f4f5;--text-secondary:#c7c9d1;--text-tertiary:#8e929e;--accent:#14b8a6;--accent-strong:#0f766e;--accent-soft:#14b8a624;--warn:#f59e0b;--good:#22c55e;--danger:#f87171;--z-modal:40;background:#101114;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--surface-0);min-width:320px;min-height:100dvh;margin:0}button,input,select{font:inherit}button,a,select,input{outline-color:var(--accent)}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.64}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}input,select{border:1px solid var(--border);background:var(--surface-1);min-height:42px;color:var(--text-primary);border-radius:8px;padding:0 12px;transition:border-color .12s ease-out,background-color .12s ease-out}input:hover,select:hover{border-color:var(--border-hover)}input:focus,select:focus{border-color:var(--accent)}label{color:var(--text-secondary);gap:8px;font-size:.88rem;display:grid}.loading-screen,.login-shell{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));place-items:center;display:grid}.loading-screen{color:var(--text-secondary);gap:12px}.login-panel{border:1px solid var(--border);background:var(--surface-1);border-radius:8px;width:min(100%,430px);padding:28px;box-shadow:0 8px 20px #00000038}.login-brand{margin-bottom:26px}.auth-form{gap:16px;display:grid}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--border);background:var(--surface-1);flex-direction:column;gap:18px;height:100dvh;padding:18px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.brand-row{align-items:center;gap:12px;padding:8px 10px;display:flex}.brand-mark,.empty-icon,.avatar{flex:none;place-items:center;display:inline-grid}.brand-mark{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:8px}.brand-row h1{font-size:1rem;font-weight:700}.brand-row p{color:var(--text-tertiary);margin-top:2px;font-size:.78rem}.nav-list{gap:4px;display:grid}.nav-button,.ghost-button,.secondary-button,.primary-button,.primary-link,.secondary-link,.icon-button{border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;transition:background-color .12s ease-out,border-color .12s ease-out,color .12s ease-out;display:inline-flex}.nav-button{width:100%;color:var(--text-secondary);background:0 0;justify-content:flex-start;padding:0 12px}.nav-button svg{width:17px;height:17px}.nav-button:hover,.nav-button.active{background:var(--surface-2);color:var(--text-primary)}.sidebar-footer{border-top:1px solid var(--border);gap:10px;margin-top:auto;padding:10px;display:grid}.user-chip{min-width:0;color:var(--text-tertiary);align-items:center;gap:9px;font-size:.78rem;display:flex}.user-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.avatar{background:var(--surface-3);width:30px;height:30px;color:var(--text-primary);text-transform:uppercase;border-radius:999px;font-weight:700}.main-panel{min-width:0;padding:34px}.page-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px;display:flex}.page-header h2{font-size:clamp(1.55rem,2vw,2rem);line-height:1.15}.page-header p{color:var(--text-secondary);margin-top:7px}.primary-button,.primary-link{background:var(--accent);color:#05201d;padding:0 14px;font-weight:700}.primary-button:hover,.primary-link:hover{background:#2dd4bf}.secondary-button,.secondary-link{border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);padding:0 12px}.secondary-button:hover,.secondary-link:hover{border-color:var(--border-hover);background:var(--surface-2)}.ghost-button{color:var(--text-secondary);background:0 0;padding:0 12px}.ghost-button:hover{background:var(--surface-2);color:var(--text-primary)}.full{width:100%}.compact{min-height:34px;padding-inline:10px;font-size:.82rem}.icon-button{width:38px;height:38px;color:var(--text-secondary);background:0 0}.icon-button:hover{background:var(--surface-2);color:var(--text-primary)}.toolbar,.stat-row,.meta-row,.card-actions,.row-actions,.inline-input,.settings-form{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar{margin-bottom:18px}.toolbar select,.card-actions select,.timeline-row select,.settings-form select{min-width:150px}.check-row{align-items:center;gap:8px;display:inline-flex}.check-row input{width:16px;height:16px;min-height:auto}.stat-row{margin-bottom:20px}.stat-pill,.badge,.date-chip{border:1px solid var(--border);min-height:26px;color:var(--text-secondary);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:.78rem;display:inline-flex}.stat-pill strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.badge.neutral{background:#ffffff08}.badge.warm{color:#fbbf24;background:#f59e0b1f;border-color:#f59e0b52}.badge.good{color:#86efac;background:#22c55e1f;border-color:#22c55e52}.poster-grid{grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:16px;display:grid}.poster-card{border:1px solid var(--border);background:var(--surface-1);border-radius:8px;min-width:0;overflow:hidden}.poster-image,.result-poster{background-color:var(--surface-2);color:var(--text-tertiary);background-position:50%;background-size:cover;place-items:center;display:grid}.poster-image{aspect-ratio:2/3;width:100%}.poster-body{gap:10px;padding:12px;display:grid}.title-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.title-row h3,.poster-body h3,.result-row h3,.timeline-row h3,.radar-row h3{min-width:0;font-size:.98rem;line-height:1.25}.poster-body h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.muted,.small-line,.description,.result-row p,.timeline-row p,.radar-row p{color:var(--text-tertiary);font-size:.84rem}.description{line-height:1.5}.small-line{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tabular,.tabular *{font-variant-numeric:tabular-nums}.search-layout{grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:16px;margin-bottom:20px;display:grid}.search-box{border:1px solid var(--border);background:var(--surface-1);border-radius:8px;padding:16px}.inline-input{align-items:stretch}.inline-input input{flex:220px}.result-list,.timeline-list,.radar-list,.rule-list{gap:12px;display:grid}.result-row,.timeline-row,.radar-row,.rule-row{border:1px solid var(--border);background:var(--surface-1);border-radius:8px;align-items:center;gap:14px;padding:12px;display:grid}.result-row,.timeline-row,.radar-row{grid-template-columns:56px minmax(0,1fr) auto}.rule-row{grid-template-columns:auto minmax(0,1fr) auto}.result-poster{border-radius:6px;width:56px;height:78px}.row-actions{justify-content:flex-end}.inline-error,.field-error{color:#fecaca}.inline-error,.inline-note,.field-error{margin:12px 0;font-size:.9rem}.inline-note{color:var(--text-secondary)}.empty-state{border:1px dashed var(--border);background:var(--surface-1);text-align:center;border-radius:8px;place-items:center;gap:12px;min-height:330px;padding:32px;display:grid}.empty-icon{background:var(--surface-2);width:42px;height:42px;color:var(--accent);border-radius:8px}.empty-state h3{font-size:1.15rem}.empty-state p{max-width:420px;color:var(--text-secondary)}.modal-backdrop{z-index:var(--z-modal);padding:max(20px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));background:#0a0b0dc7;place-items:center;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--border);background:var(--surface-1);border-radius:8px;width:min(100%,620px);max-height:calc(100dvh - 40px);padding:20px;overflow-y:auto;box-shadow:0 20px 42px #0000005c}.modal-header,.modal-actions{justify-content:space-between;gap:16px;display:flex}.modal-header{align-items:flex-start;margin-bottom:18px}.modal-header p{color:var(--text-secondary);margin-top:4px}.modal-actions{justify-content:flex-end;margin-top:18px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-form{align-items:stretch;margin-bottom:18px}.settings-form input{flex:260px}.skeleton{background:var(--surface-2);position:relative;overflow:hidden}.skeleton:after{content:"";background:#ffffff0d;position:absolute;inset:0}.skeleton-line{border-radius:999px;width:68%;height:12px}.skeleton-line.wide{width:86%}.skeleton-line.short{width:42%}.list-skeleton-body{gap:10px;width:100%;display:grid}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spin{animation:none}*,:before,:after{transition-duration:0s!important}}@media (width<=920px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border);height:auto;position:static}.nav-list{grid-template-columns:repeat(5,minmax(0,1fr))}.nav-button{justify-content:center}.nav-button span,.sidebar-footer{display:none}.main-panel{padding:22px}.search-layout{grid-template-columns:1fr}}@media (width<=680px){.page-header,.modal-header,.modal-actions{flex-direction:column;align-items:stretch}.result-row,.timeline-row,.radar-row{grid-template-columns:52px minmax(0,1fr)}.result-row>button,.timeline-row>select,.radar-row>.row-actions{grid-column:1/-1}.row-actions{justify-content:flex-start}.form-grid{grid-template-columns:1fr}.poster-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
