:root{--bg:#0b1220;--card:#111a2b;--text:#e8eefc;--muted:#a9b7d0;--line:#22304a;}
*{box-sizing:border-box}
body{margin:0;font:14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,"Helvetica Neue",Arial;background:var(--bg);color:var(--text)}
.container{max-width:1100px;margin:0 auto;padding:16px}
.topbar{border-bottom:1px solid var(--line);background:rgba(0,0,0,.2)}
.topbar .container{display:flex;gap:16px;align-items:center;justify-content:space-between}
.brand{font-weight:700}
.nav a{color:var(--muted);text-decoration:none;margin-left:10px}
.nav a:hover{color:var(--text)}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px;margin:14px 0}
.row{display:flex;gap:12px;flex-wrap:wrap}
.field{display:flex;flex-direction:column;gap:6px;min-width:220px;flex:1}
label{color:var(--muted);font-size:12px}
input[type="text"],select,input[type="file"]{width:100%;background:#0d1627;border:1px solid var(--line);color:var(--text);padding:10px;border-radius:8px}
button{background:#193058;border:1px solid #254072;color:var(--text);padding:10px 12px;border-radius:8px;cursor:pointer}
button:hover{filter:brightness(1.1)}
.hint{color:var(--muted);font-size:12px}
.msg{padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#0d1627;margin:12px 0}
.msg.error{border-color:#7a2d2d;background:#1b0d0d}
table{width:100%;border-collapse:collapse}
th,td{border-bottom:1px solid var(--line);padding:10px;vertical-align:top}
th{color:var(--muted);font-weight:600;text-align:left}
.seg{position:relative;border-radius:8px;padding:8px;border:1px solid transparent}
.seg.tm{border-color:rgba(30,127,95,.6);background:rgba(30,127,95,.08)}
.seg.gpt{border-color:rgba(122,95,26,.6);background:rgba(122,95,26,.08)}
.tooltip{position:absolute;left:8px;top:-8px;transform:translateY(-100%);background:#050a14;border:1px solid var(--line);color:var(--text);padding:8px;border-radius:8px;min-width:260px;max-width:420px;display:none;z-index:20}
.tooltip .t{color:var(--muted);font-size:12px;margin-bottom:4px}
.seg:hover .tooltip{display:block}

.loading-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.55);z-index:999}
.loading-overlay.hidden{display:none}
.loading-card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px;max-width:520px;width:calc(100% - 32px)}
.loading-title{font-weight:700;margin-bottom:6px}
.loading-text{color:var(--muted)}
