:root{color-scheme:dark;--bg: #000000;--card: #1c1c1e;--line: #38383a;--text: #ffffff;--muted: #a1a1a8;--blue: #0060df;--blue-text: #409cff;--gold: #ffd60a;--warn: #ffb340;--radius: 16px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:17px;-webkit-text-size-adjust:100%}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible{outline:2px solid var(--blue-text);outline-offset:2px}h1{margin:0;font-size:34px;line-height:41px;font-weight:700}h2{margin:0 0 8px;font-size:20px;font-weight:700}.muted{color:var(--muted)}.center{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:16px}.shell{min-height:100vh}.sidebar{display:none}.content{display:flex;flex-direction:column;gap:20px;padding:calc(env(safe-area-inset-top) + 20px) 16px calc(env(safe-area-inset-bottom) + 100px)}.screen-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.tabbar{position:fixed;inset:auto 0 0;display:flex;padding:6px 4px calc(env(safe-area-inset-bottom) + 6px);background:var(--card);border-top:1px solid var(--line)}.tab{flex:1 1 0;min-width:0;min-height:50px;border:none;background:transparent;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;font-weight:500}.tab.on{color:var(--blue-text);font-weight:600}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;font-variant-numeric:tabular-nums}.card{background:var(--card);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:6px}.card-label{font-size:13px;color:var(--muted)}.card-value{font-size:22px;font-weight:600}.card-value.big{font-size:30px;line-height:38px;font-weight:700}.rank{display:flex;align-items:center;gap:6px;color:var(--gold);font-size:15px;font-weight:600}.progress{height:6px;border-radius:3px;background:var(--line);overflow:hidden}.progress div{height:6px;background:var(--gold)}.wallet{display:flex;justify-content:space-between;gap:12px;font-size:15px}.actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.action{min-height:92px;padding:10px 6px;border:none;border-radius:var(--radius);background:var(--card);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:500;line-height:16px;text-align:center}.action svg{color:var(--blue-text)}.action.primary{background:var(--blue);font-size:15px;font-weight:600}.action.primary svg{color:var(--text)}.action:disabled{opacity:.55}.list{list-style:none;margin:0;padding:0;background:var(--card);border-radius:var(--radius);overflow:hidden}.list li{min-height:60px;padding:10px 16px;display:flex;flex-direction:column;justify-content:center;gap:2px;border-bottom:1px solid var(--line)}.list li:last-child{border-bottom:none}.list small{font-size:13px;color:var(--warn)}.menu li{padding:0}.menu button{width:100%;min-height:56px;padding:8px 16px;border:none;background:transparent;display:flex;align-items:center;justify-content:space-between}.menu-label{display:flex;align-items:center;gap:12px}.menu svg{color:var(--blue-text)}.primary-button,.secondary-button{min-height:50px;padding:0 20px;border:none;border-radius:14px;font-weight:600}.primary-button{background:var(--blue)}.primary-button:disabled{opacity:.6}.secondary-button{align-self:flex-start;background:var(--card);color:var(--blue-text)}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.login-card{width:100%;max-width:360px;display:flex;flex-direction:column;gap:16px}.login-card h1{font-size:28px;line-height:34px;text-align:center}.login-crown{color:var(--gold);display:flex;justify-content:center}.login-card label{display:flex;flex-direction:column;gap:6px;font-size:15px;color:var(--muted)}.login-card input{min-height:50px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text);font-size:17px}.login-error{margin:0;color:var(--warn);font-size:15px}.shortage{padding-top:10px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.shortage>span:first-child{display:flex;flex-direction:column}.shortage small{font-size:13px}.order{gap:10px}.when{font-size:13px;font-weight:400;text-align:right}.order-line{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:15px}.order-line .tag{margin-left:6px}.done-order{padding:10px 16px;border-bottom:1px solid #2c2c2e;display:flex;flex-direction:column;gap:4px}.done-order:last-child{border-bottom:none}.done-order small{font-size:13px}.small-head{font-size:15px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:2px;padding-left:10px;border-radius:10px;background:#2c2c2e;font-size:15px}.chip button{min-width:40px;min-height:40px;border:none;background:transparent;color:var(--muted);font-size:18px}.inline{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.field{flex:1 1 150px;min-width:0;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.field.narrow{flex:0 1 110px}.field input,.field select{width:100%;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);font-size:17px}.fit{align-self:flex-start}.saved{color:#5fe08a;font-size:13px}.big-rank{font-size:24px;font-weight:700}.ladder{list-style:none;margin:4px 0;padding:0;display:flex;flex-wrap:wrap;gap:4px}.ladder li{padding:3px 8px;border-radius:8px;background:#2c2c2e;color:var(--muted);font-size:12px}.ladder li.done{color:var(--text)}.ladder li.current{background:var(--gold);color:#000;font-weight:700}.plan{margin-top:10px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.report-filter .segmented,.section-wrap .segmented{width:fit-content;max-width:100%}.report-filter .segmented button{min-width:0}.section-wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.section-wrap h2{margin:0}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:12px}.report-row{padding-top:10px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.report-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-variant-numeric:tabular-nums}.report-top b{flex:none}.report-name{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-weight:600}.meta-line{display:flex;flex-wrap:wrap;gap:2px 12px;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.meta-line b{color:var(--text);font-weight:600}.warn-text{color:var(--warn)}.progress.blue div{background:var(--blue-text)}.chart-readout{margin:0 0 8px;display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--muted);font-size:15px;font-variant-numeric:tabular-nums}.chart-readout b{color:var(--text);font-size:22px;font-weight:700}.chart{position:relative;height:150px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr))}.chart-baseline{position:absolute;inset-inline:0;height:1px;background:var(--line)}.chart-goal{position:absolute;inset-inline:0;border-top:1px dashed var(--muted);pointer-events:none}.chart-column{position:relative;height:100%;padding:0;border:none;border-radius:6px;background:transparent}.chart-column:hover{background:#ffffff0d}.chart-bar{position:absolute;left:50%;width:min(60%,28px);transform:translate(-50%);border-radius:4px 4px 0 0;background:#409cff;opacity:.65}.chart-bar.selected{opacity:1}.chart-bar.negative{background:var(--warn);border-radius:0 0 4px 4px}.chart-labels{margin-top:4px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));text-align:center;font-size:11px;color:var(--muted)}.chart-notes{margin-top:8px;display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--muted)}.chart-notes b{color:var(--text);font-weight:600}.chart-table{margin-top:8px;font-size:15px}.chart-table summary{min-height:44px;display:flex;align-items:center;color:var(--blue-text);cursor:pointer}.chart-table table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.chart-table th{padding:6px 0;text-align:left;font-weight:400;color:var(--muted)}.chart-table td{padding:6px 0;text-align:right}.stock-summary ul{list-style:none;margin:8px 0 0;padding:0;font-variant-numeric:tabular-nums}.stock-summary li{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(96px,auto);gap:12px;align-items:baseline;padding:8px 0;border-top:1px solid var(--line);font-size:15px}.stock-summary li b{text-align:right;font-weight:600}.stock-summary .note{margin:4px 0 0;color:var(--warn);font-size:15px}.small{font-size:13px}.banner{margin:0;padding:12px 16px;border-radius:12px;background:#3a2a0a;color:var(--warn);font-size:15px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px;font-variant-numeric:tabular-nums}.section-head h2{margin:0}.products,.debts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:12px}h3{margin:0;font-size:17px;font-weight:600}.product-head{display:flex;justify-content:space-between;gap:12px}.product-total{display:flex;flex-direction:column;align-items:flex-end;font-variant-numeric:tabular-nums}.product-total b{font-size:22px;font-weight:700}.product-total small{font-size:13px;color:var(--muted)}.empty-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.batch{padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.batch-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:15px}.batch small{font-size:13px}.batch-actions{display:flex;flex-wrap:wrap;gap:8px}.small-button{min-height:44px;padding:0 14px;border:none;border-radius:10px;background:#2c2c2e;font-size:15px;font-weight:500}.small-button.primary{background:var(--blue);font-weight:600}.debtor{gap:10px}.debtor.hot{outline:1px solid #7a2e2e}.debtor-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:20px;font-variant-numeric:tabular-nums}.name-button{min-height:44px;min-width:0;padding:0;border:none;background:transparent;color:var(--blue-text);font-size:17px;font-weight:600;text-align:left}.journal-tools{display:flex;flex-direction:column;gap:10px}.segmented.wide{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.segmented.wide button{min-width:0;padding:0 2px;font-size:13px}.search{min-height:44px;padding:0 14px;border:none;border-radius:12px;background:var(--card);color:var(--text);font-size:17px}.day{margin:0 0 8px;font-size:15px;font-weight:600;color:var(--muted)}.entry{width:100%;min-height:64px;padding:10px 16px;border:none;border-bottom:1px solid #2c2c2e;background:transparent;display:flex;justify-content:space-between;gap:12px;text-align:left;font-size:15px}.entry:last-child{border-bottom:none}.entry:disabled{color:inherit}.entry-main{min-width:0;display:flex;flex-direction:column;gap:3px}.entry-main b{font-size:17px;font-weight:600}.entry-main small,.entry-side small{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.entry-side{flex:none;max-width:45%;display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.tag{padding:2px 8px;border-radius:8px;background:#2c2c2e;color:var(--muted);font-size:12px;font-weight:500}.tag.ok{background:#0f2f1a;color:#5fe08a}.tag.warn{background:#3a2a0a;color:var(--warn)}.tag.debt{background:#3f1a1a;color:#ff8f85}.danger-button{min-height:50px;padding:0 20px;border:none;border-radius:14px;background:var(--card);color:#ff8f85;font-weight:600}.danger-button:disabled{opacity:.6}.confirm{display:flex;flex-direction:column;gap:8px}.confirm p{margin:0;font-weight:600}.confirm .secondary-button{align-self:stretch}.badge{padding:8px 14px;border-radius:22px;background:#3a2a0a;color:var(--warn);font-size:13px;font-weight:600;white-space:nowrap}.form-error{margin:0;color:var(--warn);font-size:15px}.sheet{position:fixed;inset:0;z-index:10;overflow-y:auto;background:var(--bg)}.sheet-head{position:sticky;top:0;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;padding:calc(env(safe-area-inset-top) + 8px) 8px 8px;background:var(--bg);border-bottom:1px solid var(--line)}.sheet-head h1{font-size:17px;line-height:22px;font-weight:600;text-align:center}.sheet-head .link-button:last-child{justify-self:end}.sheet-head .link-button:first-child{justify-self:start}.link-button{min-height:44px;padding:0 8px;border:none;background:transparent;color:var(--blue-text)}.link-button.strong{font-weight:600}.link-button:disabled{opacity:.6}.sheet-body{max-width:560px;margin:0 auto;padding:20px 16px calc(env(safe-area-inset-bottom) + 32px);display:flex;flex-direction:column;gap:20px}.group{background:var(--card);border-radius:12px;overflow:hidden}.row{min-height:52px;padding:6px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #2c2c2e}.row:last-child{border-bottom:none}.row>span{flex:none}.row input,.row select{flex:1 1 0;min-width:0;min-height:40px;padding:0;border:none;background:transparent;color:var(--text);text-align:right;font-size:17px}.row select{text-align-last:right}.row select option{background:var(--card)}.segmented{display:flex;padding:2px;border-radius:9px;background:#2c2c2e}.segmented button{min-width:54px;min-height:40px;padding:0 10px;border:none;border-radius:7px;background:transparent;font-size:15px}.segmented button.on{background:#636366;font-weight:600}.summary{padding:16px;display:flex;flex-direction:column;gap:8px;font-variant-numeric:tabular-nums}.summary div{display:flex;justify-content:space-between;gap:12px;font-size:15px;color:var(--muted)}.summary .total{padding-top:8px;border-top:1px solid var(--line);align-items:baseline;color:var(--text);font-size:17px;font-weight:600}.summary .total span:last-child{font-size:28px;font-weight:700}.summary .note{margin:0;color:var(--warn);font-size:15px}.summary .plain,.hint{margin:0;font-size:15px}@media(min-width:768px){.shell{display:flex}.tabbar{display:none}.sidebar{position:sticky;top:0;flex:0 0 240px;height:100vh;padding:20px 12px;background:var(--card);display:flex;flex-direction:column;gap:4px}.brand{display:flex;align-items:center;gap:8px;padding:4px 10px 16px;color:var(--gold);font-weight:700}.brand span{color:var(--text)}.side-item{min-height:44px;padding:0 10px;border:none;border-radius:10px;background:transparent;display:flex;align-items:center;gap:10px;font-size:15px;text-align:left}.side-item svg{color:var(--blue-text)}.side-item.on{background:var(--blue);font-weight:600}.side-item.on svg{color:var(--text)}.content{flex:1 1 0;min-width:0;max-width:1200px;padding:28px 32px}.actions{grid-template-columns:repeat(auto-fill,minmax(118px,1fr))}}
