:root{--bg: #0b0e14;--panel: #141925;--panel2: #1b2230;--line: #283044;--txt: #e6e9ef;--muted: #8b94a7;--accent: #ffd23f;--accent2: #4ea1ff;--ok: #57d9a3;--warn: #ffb454;--err: #ff6b6b;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}body{margin:0;background:radial-gradient(1200px 600px at 50% -200px,#182033 0%,var(--bg) 60%);color:var(--txt);font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.app{max-width:880px;margin:0 auto;padding:32px 20px 80px}.masthead{text-align:center;margin-bottom:28px}.masthead h1{font-size:30px;margin:0 0 6px;letter-spacing:-.02em}.bat{filter:drop-shadow(0 0 8px var(--accent))}.sub{color:var(--txt);margin:0 0 6px}.privacy{color:var(--muted);font-size:13px;margin:0}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px;margin:16px 0}.card h2{margin:0 0 4px;font-size:17px}.hint{color:var(--muted);font-size:13px;margin:4px 0 14px}.mono{font-family:var(--mono)}.dropzone{border:2px dashed var(--line);border-radius:16px;padding:48px 24px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:var(--panel)}.dropzone.over{border-color:var(--accent);background:#161c2b}.dropzone.disabled{opacity:.5;cursor:default}.dzInner{display:flex;flex-direction:column;gap:6px;align-items:center}.dzIcon{font-size:40px}.dzHint{color:var(--muted);font-size:12px;max-width:560px}code{font-family:var(--mono);background:var(--panel2);padding:1px 5px;border-radius:5px;font-size:.9em}.banner{padding:10px 14px;border-radius:10px;font-size:13px;margin:12px 0}.banner.err{background:#2a1417;color:var(--err);border:1px solid #50232a}.banner.warn{background:#2a2113;color:var(--warn);border:1px solid #524222}.meta .metaRow{display:flex;gap:12px;padding:6px 0;border-bottom:1px solid var(--line)}.meta .metaRow:last-child{border-bottom:0}.meta .k{width:130px;color:var(--muted)}.meta .v{flex:1;word-break:break-all}.downgrade .row{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:12px}label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}input[type=text],input:not([type]),.search,.downgrade input,.fields input{background:var(--panel2);border:1px solid var(--line);color:var(--txt);border-radius:8px;padding:8px 10px;font-size:14px}input:focus{outline:2px solid var(--accent2);outline-offset:-1px}.refpick input[type=file]{color:var(--muted)}button{font:inherit;border-radius:9px;padding:9px 16px;cursor:pointer;border:1px solid transparent}button.primary{background:var(--accent);color:#1a1505;font-weight:600}button.primary:disabled{opacity:.45;cursor:not-allowed}button.ghost{background:transparent;border-color:var(--line);color:var(--txt)}.ok{color:var(--ok);font-size:13px;margin:10px 0 0}.search{width:100%;margin-bottom:12px}.tableWrap{max-height:460px;overflow:auto;border:1px solid var(--line);border-radius:10px}table.fields{width:100%;border-collapse:collapse;font-size:13px}.fields th{position:sticky;top:0;background:var(--panel2);text-align:left;padding:8px 10px;color:var(--muted);font-weight:600}.fields td{padding:5px 10px;border-top:1px solid var(--line)}.fields td.name{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fields td.ty{color:var(--accent2)}.fields td.val input{width:100%;min-width:120px;padding:4px 8px}tr.dirty td.val input{border-color:var(--accent)}.downloadbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.dlbtns{display:flex;gap:10px;flex-wrap:wrap}.foot{text-align:center;color:var(--muted);font-size:12px;margin-top:36px}.foot a{color:var(--accent2)}.sampleLine{text-align:center;color:var(--muted);font-size:13px;margin:14px 0 0}.link{background:none;border:none;color:var(--accent2);cursor:pointer;padding:0;font:inherit;text-decoration:underline}.link:disabled{opacity:.5;cursor:default}select{background:var(--panel2);border:1px solid var(--line);color:var(--txt);border-radius:8px;padding:7px 10px;font:inherit;font-size:14px;cursor:pointer}select:focus{outline:2px solid var(--accent2);outline-offset:-1px}.enumList{display:flex;flex-direction:column;gap:8px;max-height:460px;overflow:auto}.enumRow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 4px;border-bottom:1px solid var(--line)}.enumRow:last-child{border-bottom:0}.enumLabels{display:flex;flex-direction:column;gap:2px;min-width:0}.enumType{color:var(--accent2);font-size:12px}.enumCtx{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:420px}.enumRow select{flex-shrink:0;min-width:150px}.helpBtn{position:fixed;top:16px;right:16px;z-index:5;width:36px;height:36px;border-radius:50%;background:var(--panel2);border:1px solid var(--line);color:var(--accent);font-size:18px;font-weight:700;line-height:1;cursor:pointer}.helpBtn:hover{border-color:var(--accent)}.helpOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:#04060ab3;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow:auto}.helpPanel{position:relative;max-width:640px;width:100%;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:28px 28px 24px}.helpPanel h2{margin:0 0 8px}.helpPanel h3{margin:22px 0 6px;font-size:15px;color:var(--accent)}.helpPanel p,.helpPanel li{color:var(--txt);font-size:14px}.helpPanel ol{padding-left:20px}.helpPanel li{margin:6px 0}.helpClose{position:absolute;top:12px;right:14px;background:none;border:none;color:var(--muted);font-size:26px;line-height:1;cursor:pointer;padding:4px}.helpClose:hover{color:var(--txt)}.enumCat{margin-top:8px}.catTitle{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:18px 0 8px}.enumGroup{border:1px solid var(--line);border-radius:10px;margin-bottom:8px;background:var(--panel2)}.enumGroup>summary{list-style:none;cursor:pointer;padding:11px 14px;display:flex;align-items:center;gap:10px}.enumGroup>summary::-webkit-details-marker{display:none}.enumGroup>summary:before{content:"▸";color:var(--muted);transition:transform .15s}.enumGroup[open]>summary:before{transform:rotate(90deg)}.groupTitle{font-weight:600}.groupCount{background:var(--line);color:var(--muted);border-radius:20px;padding:1px 9px;font-size:12px}.bulkRow{display:flex;align-items:center;gap:10px;padding:4px 14px 12px;flex-wrap:wrap;color:var(--muted);font-size:13px}button.small{padding:6px 12px;font-size:13px}.enumGroup .enumList{padding:0 14px 12px;max-height:360px}.enumGroup .enumRow{gap:10px}.enumGroup .enumCtx{flex:1;max-width:none}details.advanced>summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}details.advanced>summary::-webkit-details-marker{display:none}details.advanced>summary:before{content:"▸";color:var(--muted);transition:transform .15s}details.advanced[open]>summary:before{transform:rotate(90deg)}details.advanced>summary h2{display:inline}.advHint{color:var(--muted);font-size:13px}details.advanced>.search,details.advanced .tableWrap{margin-top:14px}.completeAll{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:4px 0 14px}.completeAll span{color:var(--muted);font-size:13px}.quickGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.quickField{gap:6px}.quickLabel{color:var(--txt);font-size:14px;font-weight:600}.quickHelp{color:var(--muted);font-weight:400;font-size:12px}.quickInputRow{display:flex;align-items:center;gap:8px}.quickInputRow input{flex:1;font-size:16px;padding:9px 11px}.quickDot{color:var(--accent);font-size:12px}.collTools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.viewToggle{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.chip{background:var(--panel2);color:var(--txt);border:1px solid var(--line);border-radius:999px;padding:4px 12px;cursor:pointer;font-size:13px}.chip.on{background:var(--accent2);color:#06203c;border-color:var(--accent2);font-weight:600}.badge{font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;margin-left:8px;vertical-align:middle}.badge.ok{background:#57d9a329;color:var(--ok)}.badge.warn{background:#ffb45429;color:var(--warn)}.collRow{display:flex;align-items:center;gap:9px;padding:5px 8px;border-radius:7px}.collRow:hover{background:var(--panel)}.collRow input[type=checkbox]{accent-color:var(--accent2);width:15px;height:15px}.collName{flex:1;font-size:13px}.collHave{color:var(--ok);font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.removeBtn{background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:6px;padding:0 6px;line-height:1.6;font-size:11px;cursor:pointer}.removeBtn:hover{color:var(--bad, #e5484d);border-color:var(--bad, #e5484d)}.collConf{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.addBar{position:sticky;bottom:0;display:flex;gap:10px;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);background:var(--panel)}.collCat{color:var(--muted);font-size:11px}.missionTree{display:flex;flex-direction:column;gap:6px;padding:4px 0 8px}.missionNode{border:1px solid var(--line);border-radius:8px;background:var(--panel)}.missionNode>summary{list-style:none;cursor:pointer;padding:9px 12px;display:flex;align-items:center;gap:10px}.missionNode>summary::-webkit-details-marker{display:none}.missionNode>summary:before{content:"▸";color:var(--muted);transition:transform .15s}.missionNode[open]>summary:before{transform:rotate(90deg)}.missionTitle{font-weight:600;flex:1}.missionState{color:var(--muted);font-size:12px}.missionKids{color:var(--accent2);font-size:11px;background:#4ea1ff1f;padding:1px 7px;border-radius:999px}.objList{padding:4px 12px 10px 28px;display:flex;flex-direction:column;gap:4px}.addBtn{background:transparent;color:var(--accent2);border:1px solid var(--accent2);border-radius:7px;padding:3px 12px;font-size:12px;cursor:pointer;white-space:nowrap}.addBtn:hover{background:#4ea1ff1f}.statusBar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 16px}.statusInfo{color:var(--muted);font-size:13px}.statusBar .ghost{margin-left:auto}.backLink{margin-bottom:12px}.chooser h2{margin-bottom:4px}.chooserGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}@media (max-width: 560px){.chooserGrid{grid-template-columns:1fr}}.chooseCard{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:16px;background:var(--panel2);border:1px solid var(--line);border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s,transform .05s}.chooseCard:hover{border-color:var(--accent2);background:#1d2533}.chooseCard:active{transform:translateY(1px)}.chooseCard .ci{font-size:26px;line-height:1}.chooseCard b{font-size:15px}.chooseCard span:last-child{color:var(--muted);font-size:12px;line-height:1.4}.coHeadline{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:2px 0 8px}.coBig{font-size:26px;font-weight:700;letter-spacing:-.02em}.coUnit{color:var(--muted);font-size:13px}.coPct{margin-left:auto;font-size:20px;font-weight:700;color:var(--accent)}.coBar{position:relative;flex:1;height:6px;border-radius:999px;background:var(--panel2);border:1px solid var(--line);overflow:hidden}.coBar--lg{height:10px;margin-bottom:16px}.coFill{position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,var(--accent2),var(--ok));transition:width .2s}.coList{display:flex;flex-direction:column;gap:9px}.coRow{display:flex;align-items:center;gap:12px}.coLabel{flex:0 0 38%;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coCount{flex:0 0 56px;text-align:right;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.coCount--done{color:var(--ok);font-weight:600}.unlockBig{display:block;width:100%;margin:4px 0 0;padding:14px 20px;font-size:16px;font-weight:700;letter-spacing:.01em;background:linear-gradient(180deg,var(--accent) 0%,#f4b800 100%);box-shadow:0 0 0 1px #ffd23f59,0 6px 22px -8px #ffd23f8c}.unlockBig:not(:disabled):hover{filter:brightness(1.06)}.reassure{color:var(--muted);font-size:12px;margin:10px 0 0;line-height:1.45}.card.fixHelp h2{color:var(--accent)}.card.fixHelp p{font-size:14px}details.fixHelp{border-top:1px solid var(--line);margin-top:8px;padding-top:4px}details.fixHelp>summary{list-style:none;cursor:pointer;padding:10px 0;display:flex;align-items:center;gap:10px;font-weight:600;color:var(--txt)}details.fixHelp>summary::-webkit-details-marker{display:none}details.fixHelp>summary:before{content:"▸";color:var(--muted);transition:transform .15s}details.fixHelp[open]>summary:before{transform:rotate(90deg)}.fixHelpBody{padding:0 0 12px 22px}.fixHelpBody p{margin:8px 0}.fixHelpBody code{word-break:break-all}.statusActions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.statusBar .statusActions .ghost{margin-left:0}.presetRow{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 12px}.freeRoamBtn{display:block;width:100%;margin-top:10px}.banner.err strong{display:block;font-size:14px;margin-bottom:2px}.banner.err span{font-size:13px;opacity:.92}.diffRow{padding:7px 0;font-size:14px;border-bottom:1px solid var(--line)}.diffRow:last-of-type{border-bottom:none}.diffRow b{color:var(--muted);font-weight:600;margin-right:8px}.diffItem{font-size:13px;padding:3px 0;color:var(--txt)}.missionNode.clump>summary .missionTitle{font-weight:600}.clumpBody{border-left:2px solid var(--line);margin-left:2px;padding-left:8px}.errLine{color:var(--bad, #e5484d);font-size:14px;margin-top:8px}.metaNote{color:var(--muted);font-size:12px;margin-left:8px}.metaTech{margin-top:6px}.metaTech>summary{cursor:pointer;color:var(--muted);font-size:13px}.sampleBanner{background:var(--accent-soft, rgba(80,140,255,.12));border-color:var(--accent, #4f8cff);font-size:14px}.diffAdd{color:var(--good, #46a758);font-weight:700}tr.invalid input{border-color:var(--bad, #e5484d)}
