:root{--paper:#fdfbf6;--sheet:#fbf8f1;--cream:#f4f0e6;--ink:#3b3a32;--ink-soft:#55534a;--muted:#77736a;--faint:#9a958a;--line:#e4ded0;--navy:#002d71;--on-navy:#f8f5ee;--ok-bg:#ccf4d3;--ok:#2c6c47;--ko-bg:#ffe1e0;--ko:#ad524d;--mid-bg:#fdf0cf;--mid:#8a6514;--gold:#b8902c;--rare:#1b5080;--serif:"EB Garamond", Georgia, serif;--sans:Inter, -apple-system, system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font:14px/1.5 var(--sans);margin:0}a{color:var(--navy);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{font-family:var(--serif);margin:0;font-weight:500}h1{font-size:30px}h2{margin:28px 0 10px;font-size:22px}code,.mono{font-family:var(--mono);font-size:12px}.muted{color:var(--muted)}.faint{color:var(--faint)}.empty{text-align:center;padding:40px 0}.warn{color:var(--ko);font-size:12px}.error{color:var(--ko);margin:6px 0 0}.spacer{flex:1}button,.button{font:500 13px var(--sans);border:1px solid var(--navy);background:var(--navy);color:var(--on-navy);cursor:pointer;white-space:nowrap;border-radius:8px;padding:7px 14px;display:inline-block}.button:hover{text-decoration:none}button:disabled{opacity:.45;cursor:default}button.ghost,.button.ghost{color:var(--navy);border-color:var(--line);background:0 0}button.ghost:hover:not(:disabled),.button.ghost:hover{border-color:var(--navy)}button.danger{color:var(--ko)}button.danger:hover:not(:disabled){border-color:var(--ko)}button.small,.button.small{padding:4px 10px;font-size:12px}button.icon{color:var(--faint);background:0 0;border:none;padding:0 6px;font-size:18px}button.icon:hover{color:var(--ko)}input,select,textarea{font:14px var(--sans);color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:7px;width:100%;padding:7px 9px}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb, var(--navy) 25%, transparent);border-color:var(--navy)}input[type=checkbox]{width:auto;accent-color:var(--navy)}select{appearance:none;cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%238a8f98' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 11px center no-repeat;padding-right:30px}input[readonly],select:disabled{background-color:var(--cream);color:var(--muted)}textarea{resize:vertical;line-height:1.45}nav.top{z-index:10;background:var(--navy);color:var(--on-navy);align-items:center;gap:4px;padding:10px 24px;display:flex;position:sticky;top:0}nav.top a{color:color-mix(in srgb, var(--on-navy) 75%, transparent);border-radius:7px;padding:6px 12px}nav.top a:hover{color:var(--on-navy);text-decoration:none}nav.top a.on{color:var(--on-navy);background:#ffffff1f}nav.top .brand{font:500 22px var(--serif);color:var(--on-navy);margin-right:16px;padding-left:0}nav.top .brand span{font:12px var(--sans);opacity:.6;margin-left:4px}nav.top button.ghost{color:var(--on-navy);border-color:#ffffff40}main{max-width:1240px;margin:0 auto;padding:28px 24px 80px}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.page-head .actions{align-items:center;gap:8px;display:flex}.back{color:var(--muted);font-size:13px}.tabs{border-bottom:1px solid var(--line);gap:2px;margin-bottom:14px;display:flex;overflow-x:auto}.tabs a{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;padding:8px 14px}.tabs a:hover{color:var(--ink);text-decoration:none}.tabs a.on{color:var(--navy);border-bottom-color:var(--navy);font-weight:500}.filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.filters select{width:auto}.filters form{flex:1;min-width:220px}.count{color:var(--muted);font-size:13px}.bulk{z-index:5;background:var(--sheet);border:1px solid var(--navy);border-radius:10px;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;display:flex;position:sticky;top:58px}.bulk span{margin-right:6px;font-weight:500}.bulk select{width:auto}table.list{border-collapse:collapse;border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;overflow:hidden}table.list th{text-align:left;color:var(--muted);background:var(--sheet);border-bottom:1px solid var(--line);padding:9px 12px;font-size:12px;font-weight:500}table.list td{border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px}table.list tr:last-child td{border-bottom:none}table.list tr.selected td{background:#f2f5fa}table.list tr.clickable{cursor:pointer}table.list select.rarity{background-position:right 9px center;width:auto;padding:3px 26px 3px 8px}table.list .check{width:34px}table.list td.answers{min-width:260px;max-width:420px}ul.options{flex-direction:column;align-items:flex-start;gap:4px;margin:4px 0 0;padding:0;list-style:none;display:flex}ul.options .option{border:1px solid var(--line);color:var(--muted);border-radius:6px;padding:2px 8px;font-size:12.5px;line-height:1.35}ul.options .option.ok{border:2px solid var(--ok);background:var(--ok-bg);color:var(--ok);padding:1px 7px;font-weight:500}ul.options .faint{font-size:11.5px}table.list .title{font:500 16px var(--serif);color:var(--ink)}table.list .sub{color:var(--muted);max-width:640px;font-size:12.5px}table.list.compact td{padding:7px 12px}table.list.narrow{width:auto;min-width:380px}input.num{width:90px}.badge{white-space:nowrap;border-radius:99px;padding:2px 8px;font-size:11.5px;font-weight:500;display:inline-block}.badge.on{background:var(--ok-bg);color:var(--ok)}.badge.off{background:var(--ko-bg);color:var(--ko)}.badge.mid{background:var(--mid-bg);color:var(--mid)}.badge.gone{background:var(--line);color:var(--muted);text-decoration:line-through}.rarity{font-size:12px;font-weight:500}.rarity-common{color:var(--muted)}.rarity-rare{color:var(--rare)}.rarity-legendary{color:var(--gold)}.pager{color:var(--muted);justify-content:center;align-items:center;gap:14px;margin-top:16px;font-size:13px;display:flex}.editor{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:24px;display:grid}.editor.single{grid-template-columns:minmax(0,860px)}.editor aside{flex-direction:column;gap:16px;display:flex;position:sticky;top:80px}fieldset{border:1px solid var(--line);background:#fff;border-radius:12px;margin:0 0 16px;padding:16px 18px 18px}legend{font:500 18px var(--serif);align-items:center;gap:14px;padding:0 6px;display:flex}details{margin-top:12px}summary{cursor:pointer;color:var(--muted);margin-bottom:10px;font-size:13px}.fields{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 16px;display:grid}.field{flex-direction:column;gap:4px;display:flex}.field.wide{grid-column:1/-1}.field.inline{flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:8px}.label{color:var(--ink-soft);font-size:12px;font-weight:500}.req{color:var(--ko)}.hint{color:var(--faint);font-weight:400}.with-link{align-items:center;gap:8px;display:flex}.with-link a{font-size:12px}.choices{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.choice{align-items:center;gap:8px;width:100%;display:flex}.choice.fill input:first-child{flex:2}.choice.fill input:nth-child(2){flex:1}.seg{border:1px solid var(--line);border-radius:7px;display:inline-flex;overflow:hidden}.seg button{color:var(--muted);background:0 0;border:none;border-radius:0;padding:3px 10px;font-size:12px}.seg button.on{background:var(--cream);color:var(--ink)}.json textarea{font:12.5px/1.5 var(--mono);background:var(--sheet)}.savebar{background:linear-gradient(transparent, var(--paper) 30%);align-items:center;gap:10px;padding:12px 0;display:flex;position:sticky;bottom:0}.savebar .warn{font-size:13px}.preview{background:var(--sheet);border:1px solid var(--line);font-family:var(--serif);border-radius:14px;padding:18px 20px 22px;font-size:16px;box-shadow:inset 0 1px #fff,0 8px 24px #3b3a3214}.preview.rarity-rare{border-color:var(--rare)}.preview.rarity-legendary{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold), 0 8px 24px #b8902c2e}.preview header{font:500 11px var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--faint);justify-content:space-between;margin-bottom:12px;display:flex}.preview h3{margin-bottom:8px;font-size:26px;line-height:1.2}.preview h4{font-size:19px}.preview p{margin:6px 0}.preview .meta{color:var(--muted);font-size:14px;font-style:italic}.preview .quote{font-style:italic}.preview .small{font-size:14.5px}.preview .sides{grid-template-columns:1fr 1fr;gap:12px;margin:10px 0;display:grid}.preview .ko{background:var(--ko-bg);color:var(--ko);border-radius:4px;padding:1px 6px;text-decoration:line-through}.preview .ok{background:var(--ok-bg);color:var(--ok);border-radius:4px;padding:1px 6px}.linked{border:1px solid var(--line);background:#fff;border-radius:12px;padding:14px 16px}.linked h3{margin-bottom:8px;font-size:18px}.linked>ul{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;font-size:13px;list-style:none;display:flex}.linked .badge{margin-left:6px}.tiles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.tile{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;flex-direction:column;padding:18px 20px;display:flex}.tile:hover{border-color:var(--navy);text-decoration:none}.tile strong{font:500 40px var(--serif);line-height:1}.tile span{color:var(--muted);margin-top:6px}.two{grid-template-columns:1fr 1fr;gap:24px;display:grid}.note{color:var(--muted);max-width:760px;margin-top:28px;font-size:13px}.login{background:var(--navy);place-items:center;min-height:100vh;display:grid}.login form{background:var(--paper);border-radius:16px;flex-direction:column;gap:12px;width:min(360px,100% - 32px);padding:32px;display:flex}.login h1{color:var(--navy);font-size:40px}.login p{margin:-8px 0 8px}.toasts{z-index:50;flex-direction:column;gap:8px;max-width:460px;display:flex;position:fixed;bottom:20px;right:20px}.toast{cursor:pointer;border-radius:9px;padding:10px 14px;font-size:13px;box-shadow:0 6px 20px #0000001f}.toast.ok{background:var(--ok-bg);color:var(--ok)}.toast.error{background:var(--ko-bg);color:var(--ko)}@media (width<=900px){.editor,.two{grid-template-columns:1fr}.editor aside{position:static}nav.top{padding:10px 16px;overflow-x:auto}main{padding:20px 16px 80px}table.list th:nth-child(3),table.list td:nth-child(3){display:none}}
