*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #07080A;--surface: #0D0F12;--border: #1C1F26;--border-hi: #2E3340;--amber: #3B82F6;--amber-dim: #1E3A5F;--amber-glow: rgba(59,130,246,.12);--green: #22C55E;--red: #EF4444;--text: #E2E8F0;--text-dim: #4A5568;--text-mid: #94A3B8;--mono: "JetBrains Mono", monospace;--display: "Syne", sans-serif}html{background:var(--bg);color:var(--text);font-family:var(--mono)}body{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:radial-gradient(ellipse 80% 40% at 50% -10%,rgba(59,130,246,.08) 0%,transparent 60%),var(--bg)}header{padding:2rem 2rem 0;max-width:860px;margin:0 auto;width:100%}.header-tag{font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;color:var(--amber);font-weight:600;display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.header-tag:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--amber);box-shadow:0 0 8px var(--amber);animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;box-shadow:0 0 8px var(--amber)}50%{opacity:.4;box-shadow:0 0 3px var(--amber)}}.header-title{font-family:var(--display);font-size:clamp(1.8rem,4vw,2.6rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;color:var(--text)}.header-title span{color:var(--amber)}.header-sub{margin-top:.6rem;font-size:.75rem;color:var(--text-dim);font-weight:300;letter-spacing:.02em}.header-sub a{color:var(--text-mid);text-decoration:none;border-bottom:1px solid var(--border-hi)}.header-sub a:hover{color:var(--amber);border-color:var(--amber)}main{max-width:860px;margin:0 auto;width:100%;padding:2rem 2rem 3rem}#status-bar{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.75rem 1rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;font-size:.72rem;transition:border-color .3s}#status-bar.loading{border-color:var(--amber-dim)}#status-bar.ready{border-color:#1e3a5f}#status-bar.error{border-color:#7f1d1d}.status-icon{width:8px;height:8px;border-radius:50%;background:var(--text-dim);flex-shrink:0}#status-bar.loading .status-icon{background:var(--amber);animation:pulse-dot 1s infinite}#status-bar.ready .status-icon{background:var(--green)}#status-bar.error .status-icon{background:var(--red)}#status-text{color:var(--text-mid);flex:1}#progress-bar-wrap{height:2px;flex:1;max-width:120px;background:var(--border);border-radius:1px;overflow:hidden;display:none}#progress-bar-wrap.visible{display:block}#progress-bar{height:100%;background:var(--amber);width:0%;transition:width .3s ease;border-radius:1px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.25rem;margin-bottom:1rem}.panel-label{font-size:.6rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--amber);margin-bottom:.6rem}#query-panel{border-color:var(--amber-dim)}#query-input{width:100%;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--mono);font-size:.9rem;font-weight:400;resize:none;line-height:1.6;min-height:2.5rem;max-height:8rem;overflow-y:auto}#query-input::placeholder{color:var(--text-dim)}.instruction-row{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.instruction-label{font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap;font-weight:600}#instruction-input{flex:1;background:transparent;border:none;outline:none;color:var(--text-mid);font-family:var(--mono);font-size:.72rem;font-style:italic}#docs-list{display:flex;flex-direction:column;gap:.5rem}.doc-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.85rem 1rem;display:grid;grid-template-columns:1.6rem 1fr auto;gap:.6rem;align-items:start;transition:border-color .2s,box-shadow .2s;will-change:transform;animation:card-in .25s ease both}@keyframes card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.doc-card:focus-within{border-color:var(--border-hi)}.doc-index{font-size:.65rem;color:var(--text-dim);font-weight:600;padding-top:.15rem;user-select:none}.doc-text{width:100%;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--mono);font-size:.8rem;font-weight:300;resize:none;line-height:1.65;min-height:2.4rem;max-height:6rem;overflow-y:auto}.doc-text::placeholder{color:var(--text-dim)}.doc-score-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;min-width:3.5rem}.doc-score-num{font-size:1.1rem;font-weight:700;color:var(--text-dim);font-variant-numeric:tabular-nums;transition:color .4s;line-height:1}.doc-score-bar-wrap{width:3rem;height:3px;background:var(--border);border-radius:1.5px;overflow:hidden}.doc-score-bar{height:100%;width:0%;background:var(--text-dim);border-radius:1.5px;transition:width .6s cubic-bezier(.16,1,.3,1),background .4s}.doc-card.ranked-1{border-color:#3b82f666;background:#3b82f60a}.doc-card.ranked-1 .doc-score-num{color:var(--amber)}.doc-card.ranked-1 .doc-score-bar{background:var(--amber)}.doc-card.ranked-2 .doc-score-num{color:#818cf8}.doc-card.ranked-2 .doc-score-bar{background:#818cf8}.doc-card.ranked-3 .doc-score-num{color:#67e8f9}.doc-card.ranked-3 .doc-score-bar{background:#67e8f9}.doc-card.computing{border-color:var(--amber-dim);box-shadow:inset 3px 0 0 var(--amber),0 0 12px #3b82f614;animation:card-compute-pulse 1.4s ease-in-out infinite}@keyframes card-compute-pulse{0%,to{box-shadow:inset 3px 0 0 var(--amber),0 0 8px #3b82f60f}50%{box-shadow:inset 3px 0 0 var(--amber),0 0 18px #3b82f62e}}.doc-card.computing .doc-score-num{display:inline-block;color:var(--amber);font-size:1.2rem;animation:spin .7s linear infinite;transform-origin:center}@keyframes spin{to{transform:rotate(360deg)}}.doc-card.computing .doc-score-bar{background:var(--amber);width:100%!important;animation:bar-indeterminate 1.2s ease-in-out infinite;transform-origin:left}@keyframes bar-indeterminate{0%{transform:scaleX(0);opacity:.6}50%{transform:scaleX(1);opacity:1}to{transform:scaleX(0);opacity:.6}}.doc-card.needs-rank{border-color:var(--amber-dim);border-style:dashed}.doc-card.needs-rank .doc-score-num:after{content:" ↺";font-size:.65rem;color:var(--amber-dim)}.doc-card.flipping{transition:transform .45s cubic-bezier(.16,1,.3,1)}.actions-row{display:flex;gap:.6rem;margin-top:.75rem;align-items:center;flex-wrap:wrap}button{font-family:var(--mono);cursor:pointer;border:1px solid transparent;border-radius:5px;font-size:.72rem;font-weight:600;letter-spacing:.04em;padding:.5rem 1rem;transition:all .15s;display:inline-flex;align-items:center;gap:.4rem}#rank-btn{background:var(--amber);color:#fff;border-color:var(--amber);padding:.55rem 1.4rem;font-size:.78rem}#rank-btn:hover:not(:disabled){background:#60a5fa;box-shadow:0 0 16px #3b82f659}#rank-btn:disabled{opacity:.45;cursor:not-allowed}#rank-btn.running{animation:btn-pulse 1.2s ease-in-out infinite}@keyframes btn-pulse{0%,to{box-shadow:0 0 #3b82f600}50%{box-shadow:0 0 20px #3b82f680}}#add-doc-btn{background:transparent;color:var(--text-mid);border-color:var(--border-hi)}#add-doc-btn:hover{border-color:var(--amber-dim);color:var(--amber)}#clear-btn{background:transparent;color:var(--text-dim);border-color:transparent;margin-left:auto;font-size:.68rem}#clear-btn:hover{color:var(--red)}#results-header{display:none;align-items:center;gap:.75rem;margin:1.5rem 0 .75rem;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);font-weight:600}#results-header.visible{display:flex}#results-header:after{content:"";flex:1;height:1px;background:var(--border)}footer{padding:1rem 2rem;max-width:860px;margin:0 auto;width:100%;display:flex;align-items:center;gap:1rem;font-size:.62rem;color:var(--text-dim);border-top:1px solid var(--border)}footer a{color:var(--text-dim);text-decoration:none}footer a:hover{color:var(--amber)}.sep{color:var(--border-hi)}#runtime-info{margin-left:auto}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-hi);border-radius:2px}.dtype-select{background:var(--surface);border:1px solid var(--border-hi);border-radius:4px;color:var(--text-mid);font-family:var(--mono);font-size:.65rem;padding:.2rem .4rem;cursor:pointer;outline:none}.dtype-select:hover{border-color:var(--amber-dim)}
