:root{color-scheme:dark;--bg: #101417;--bg-soft: #151b20;--panel: rgba(18, 23, 28, .88);--panel-strong: rgba(15, 19, 24, .96);--line: rgba(255, 255, 255, .08);--line-strong: rgba(255, 255, 255, .14);--text: #f2f3f5;--muted: #95a0aa;--accent: #d9a44f;--accent-2: #39b1a6;--danger: #ef6b5a;--shadow: 0 24px 80px rgba(0, 0, 0, .35);--radius: 18px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.4;font-weight:400;color:var(--text);background:radial-gradient(circle at top left,rgba(57,177,166,.16),transparent 36%),radial-gradient(circle at top right,rgba(217,164,79,.14),transparent 28%),linear-gradient(180deg,#0d1013,#0f1418)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-height:100vh;color:var(--text)}button,input,select{font:inherit}button{cursor:pointer}.appShell{display:grid;grid-template-columns:330px minmax(0,1fr);min-height:100vh}.sidebar{display:flex;flex-direction:column;gap:18px;padding:20px 16px;border-right:1px solid var(--line);background:linear-gradient(180deg,#0a0d10eb,#0e1216e6)}.brand{display:flex;gap:14px;align-items:flex-start;padding-bottom:8px}.brandMark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#d9a44f40,#39b1a61f);color:#ffdca0;box-shadow:inset 0 0 0 1px #d9a44f38}.brand h1{margin:2px 0 4px;font-size:1rem;letter-spacing:.01em}.brand p,.topbar p,.panelHeader p,.footerNote,.summaryFoot span,.bundleSummary span,.summaryGrid span,.inventoryRow span,.characterCard label,.sidebarHeader span{color:var(--muted);margin:0;font-size:.85rem}.sidebarHeader,.panelHeader,.bundleHead,.bundleSummary,.summaryGrid,.summaryFoot{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebarHeader strong,.sidebarHeader span{display:block}.sidebarHeader strong{font-size:.9rem;margin-top:2px}.iconButton,.ghostButton,.primaryButton,.textButton{border:1px solid var(--line-strong);background:#ffffff05;color:var(--text);border-radius:12px;min-height:42px;padding:0 14px;transition:transform .15s ease,border-color .15s ease,background .15s ease}.iconButton{width:42px;padding:0;font-size:1.2rem}.compactButton{min-height:36px}.tabControls{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;background:#ffffff06}.bundleHeaderTools{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.crystalBalanceField{display:grid;gap:4px;color:var(--muted);font-size:.76rem}.crystalBalanceField input{width:150px;border:1px solid var(--line-strong);background:#080a0cd1;color:var(--text);border-radius:10px;min-height:38px;padding:0 10px;text-align:right}.tabButton{min-height:34px;border:none;border-radius:999px;padding:0 12px;background:transparent;color:var(--muted)}.tabButton.active{background:#d9a44f2e;color:#f7d99c;box-shadow:inset 0 0 0 1px #d9a44f47}.textButton{min-height:auto;padding:0;border:none;border-radius:0;background:transparent;color:#f2c06c;font-size:.78rem;text-decoration:underline;text-underline-offset:3px}.primaryButton{border-color:#d9a44f8c;background:linear-gradient(180deg,#d9a44ff2,#bc8b36f2);color:#17120a;font-weight:700}.ghostButton:hover,.primaryButton:hover,.iconButton:hover{transform:translateY(-1px);border-color:#ffffff38}.characterList{display:flex;flex-direction:column;gap:12px;overflow:auto;padding-right:4px}.characterCard{border:1px solid var(--line);border-radius:16px;background:#ffffff05;padding:12px;display:grid;gap:10px}.characterName{width:100%;border:1px solid var(--line-strong);border-radius:10px;background:#080a0cd1;color:var(--text);font-size:.86rem;font-weight:600;outline:none;min-height:38px;padding:0 10px}.characterIdentity{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:center}.characterIdentity img,.characterCell img,.avatarFallback{width:48px;height:48px;border-radius:8px;border:1px solid rgba(255,255,255,.16);background:#ffffff0a}.characterIdentity img,.characterCell img{object-fit:cover}.avatarFallback{display:grid;place-items:center;color:#f6ddab;font-size:.85rem;font-weight:800;background:linear-gradient(135deg,#d9a44f38,#39b1a61f)}.characterIdentity span{display:block;margin-top:6px;color:var(--muted);font-size:.72rem;line-height:1.25}.levelRow{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cardActions{display:flex;justify-content:space-between;gap:10px;align-items:center;color:var(--muted);font-size:.72rem}.levelRow label{display:grid;gap:6px;font-size:.78rem}.levelRow input,.inventoryRow input,.bundleRow input,.bundleQty{width:100%;border:1px solid var(--line-strong);background:#080a0cd1;color:var(--text);border-radius:10px;min-height:40px;padding:0 12px}.sidebarActions{display:grid;gap:10px;margin-top:auto}.mainPanel{min-width:0;padding:22px;display:grid;gap:18px}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.topbar h2{margin:0 0 6px;font-size:clamp(1.3rem,1rem + 1vw,2rem)}.dataNotice{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid rgba(217,164,79,.2);border-radius:var(--radius);background:linear-gradient(90deg,rgba(217,164,79,.12),transparent 60%),#ffffff06;padding:14px 16px}.dataNotice strong{display:block;margin-bottom:3px}.dataNotice p{margin:0;color:var(--muted);font-size:.85rem}.sourceStats{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.sourceStats span,.sourceBadge{border:1px solid var(--line-strong);border-radius:999px;padding:4px 8px;background:#ffffff09;color:var(--muted);font-size:.74rem;white-space:nowrap}.sourceBadge{display:block;width:max-content;margin:6px auto 0;text-transform:capitalize}.sourceBadge.exact{border-color:#39b1a65c;color:#91e0d9}.sourceBadge.estimated{border-color:#d9a44f5c;color:#f2c06c}.workspace{display:block}.rightRail{display:grid;gap:16px}.panel{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,#11161bf2,#0b0e12f5);box-shadow:var(--shadow);padding:16px}.largePanel{min-height:100%}.panelHeader{align-items:flex-start;margin-bottom:12px}.panelHeader h3{margin:0 0 4px;font-size:1rem;letter-spacing:.01em}.toggle{display:inline-flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none;color:var(--muted);font-size:.85rem}.toggle input{accent-color:var(--accent)}.tableWrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{border-bottom:1px solid var(--line);padding:14px 12px;text-align:center;vertical-align:middle}th{font-size:.8rem;color:var(--muted);font-weight:600;background:#ffffff05}td:first-child,th:first-child{text-align:left}.characterCell{font-weight:600;display:flex;align-items:center;gap:10px;min-width:260px}.materialCell{white-space:nowrap}.materialCell strong,.totalCell{font-size:1.02rem}.materialCell span,.totalRow span{display:block;color:var(--muted);margin-top:4px;font-size:.78rem}.totalRow td{background:#d9a44f0d}.totalRow td:first-child{font-weight:700;text-transform:uppercase;letter-spacing:.04em}.footerNote{padding-top:12px}.tableTools{position:relative;display:flex;justify-content:flex-end;margin:0 0 12px}.filterPopover{position:absolute;top:calc(100% + 8px);right:0;z-index:10;display:grid;gap:10px;width:min(620px,calc(100vw - 48px));padding:14px;border:1px solid var(--line-strong);border-radius:16px;background:#0c1014fa;box-shadow:var(--shadow)}.columnControlsHeader{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--muted);font-size:.82rem}.columnControlsHeader div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.columnToggleGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}.columnToggle{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 8px;border:1px solid var(--line);border-radius:999px;color:var(--text);background:#080a0c80;font-size:.76rem;-webkit-user-select:none;user-select:none}.columnToggle input{width:14px;height:14px;accent-color:var(--accent)}.inventoryTableRow td,.incomingTableRow td{background:#39b1a60b}.incomingTableRow td{background:#d9a44f0a}.inventoryTableRow td:first-child,.incomingTableRow td:first-child{color:#91e0d9;font-weight:700}.incomingTableRow td:first-child{color:#f2c06c}.inventoryTableRow input,.incomingTableRow input{width:92px;border:1px solid var(--line-strong);background:#080a0cd1;color:var(--text);border-radius:10px;min-height:36px;padding:0 10px;text-align:right}.inventoryList,.bundleList{display:grid;gap:10px}.inventoryList{max-height:420px;overflow:auto;padding-right:4px}.inventoryRow{display:flex;align-items:center;justify-content:space-between;gap:12px}.inventoryRow span,.bundleRow .bundleName{display:inline-flex;align-items:center;gap:8px}.inventoryRow input{width:120px;text-align:right}.bundleHead,.bundleRow{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(110px,.35fr) minmax(110px,.35fr) minmax(78px,.2fr);gap:10px;align-items:start}.editBundleToolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:.84rem}.bundleTileGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px}.bundleTile{position:relative;display:grid;gap:12px;min-height:128px;padding:16px;border:1px solid rgba(255,222,130,.5);border-radius:16px;background:linear-gradient(90deg,#d9a44f2e,#39b1a614 55%,#20783c33),#0c1014f0;box-shadow:inset 0 0 0 1px #fff5b414,0 18px 45px #00000047;overflow:hidden}.bundleTile:before,.bundleTile:after{content:"";position:absolute;width:32px;height:32px;border-color:#ffe680;pointer-events:none}.bundleTile:before{top:6px;left:6px;border-top:4px solid;border-left:4px solid;border-radius:10px 0 0}.bundleTile:after{right:6px;bottom:6px;border-right:4px solid;border-bottom:4px solid;border-radius:0 0 10px}.bundleTile.complete{border-color:#7ee67ab3}.bundleTileMain{display:flex;justify-content:space-between;gap:16px;align-items:center}.bundleTile h4{margin:0 0 2px;color:#ffe680;font-size:1rem;letter-spacing:.01em}.bundleTile strong{display:block;color:#9ee8ff;font-size:.92rem}.bundleTile span{color:var(--muted);font-size:.8rem}.bundleTileIcon{display:grid;justify-items:center;gap:5px;min-width:74px}.bundleTileIcon .materialIcon{width:22px;height:22px}.bundleProgressRow{display:grid;grid-template-columns:minmax(120px,1fr) auto;gap:10px;align-items:center}.bundleProgressTrack{height:10px;border-radius:999px;background:#ffffff21;overflow:hidden}.bundleProgressTrack span{display:block;height:100%;background:linear-gradient(90deg,#ffe680,#fff4ba);border-radius:inherit}.bundleTileActions{display:inline-grid;grid-template-columns:40px minmax(44px,auto) 40px;gap:8px;align-items:center;justify-self:end}.bundleTileActions button{width:40px;min-height:36px;border:1px solid rgba(126,230,122,.55);border-radius:12px;background:linear-gradient(180deg,#1b9726f2,#0f6718f2);color:#f5fff3;font-weight:900;font-size:1.1rem}.bundleTileActions button:first-child{border-color:#ef6b5a8c;background:linear-gradient(180deg,#62231ff2,#371513f2)}.bundleTileActions strong{min-width:44px;text-align:center;color:var(--text);font-size:1rem}.crystalPackSection{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.sectionTitleRow{display:flex;align-items:end;justify-content:space-between;gap:12px}.sectionTitleRow h4{margin:0 0 3px;color:var(--text)}.sectionTitleRow p{margin:0;color:var(--muted);font-size:.84rem}.sectionTitleRow>strong{color:#f7d99c;font-size:.94rem}.crystalPackGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.crystalPackCard{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:104px;padding:14px;border:1px solid rgba(105,183,255,.24);border-radius:15px;background:radial-gradient(circle at top right,rgba(105,183,255,.18),transparent 48%),#ffffff06}.crystalPackCard h5{margin:0 0 5px;color:#f7d99c;font-size:.92rem}.crystalPackCard strong{display:block;color:#9ee8ff;font-size:.94rem}.crystalPackCard span{display:block;margin-top:3px;color:var(--muted);font-size:.77rem}.crystalPackActions{flex:0 0 auto;justify-self:auto}.bundleHead{color:var(--muted);font-size:.8rem;margin-bottom:4px}.bundleRow{padding:12px;border:1px solid var(--line);border-radius:14px;background:#ffffff05}.bundlesSection{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.bundleName{width:100%;background:transparent;color:var(--text);border:1px solid var(--line-strong);border-radius:10px;min-height:40px;padding:0 10px}.bundleCost{width:100%;text-align:right}.bundleQty{display:grid;place-items:center;font-weight:700;color:#f6ddab}.bundleRemove{grid-column:1 / -1;justify-self:start}.bundleContents{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-top:4px}.compactBundleContents:empty{display:none}.bundleContents label{display:grid;gap:6px;font-size:.74rem;color:var(--muted)}.bundleContents input{width:100%;text-align:right}.addBundleField{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:8px;align-items:end}.addBundleField select{width:100%;border:1px solid var(--line-strong);background:#080a0cd1;color:var(--text);border-radius:10px;min-height:40px;padding:0 10px}.miniIconButton{width:34px;min-height:40px;border-radius:10px;font-size:1rem}.bundleSummary,.summaryGrid{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);flex-wrap:wrap}.bundleSummary>div,.summaryGrid>div{display:grid;gap:4px}.bundleSummary strong,.summaryGrid strong{font-size:1.25rem}.summaryPanel{background:radial-gradient(circle at top left,rgba(57,177,166,.18),transparent 52%),linear-gradient(180deg,#0f2827f5,#0a1c1dfa);border-color:#39b1a638}.inlineSummary,.summaryFoot{margin-top:16px}.curvePanel{min-height:300px}.curveWrap{max-height:520px}.materialIcon{width:10px;height:10px;border-radius:999px;box-shadow:0 0 0 1px #ffffff24,0 0 16px currentColor;flex:0 0 auto}@media (max-width: 1180px){.appShell{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--line)}}@media (max-width: 780px){.appShell{display:flex;flex-direction:column}.sidebar{order:2}.mainPanel{order:1}.mainPanel{padding:14px}.topbar,.sidebarHeader,.panelHeader,.dataNotice,.summaryFoot{flex-direction:column;align-items:stretch}.sourceStats{justify-content:flex-start}.bundleHead,.bundleRow{grid-template-columns:1fr}.bundleContents{grid-template-columns:repeat(2,minmax(0,1fr))}.filterPopover{left:0;right:auto;width:100%}.levelRow{grid-template-columns:1fr}}.siteFooter{margin-top:4px;padding:14px 4px 6px;border-top:1px solid rgba(255,255,255,.08);color:var(--muted);font-size:.78rem;text-align:center}.siteFooter a{color:#f2c06c;text-decoration:none}.siteFooter a:hover{text-decoration:underline}
