:root{color-scheme:dark;background:var(--c-background)}*{box-sizing:border-box}html,body{background:var(--c-background)}body{margin:0;min-height:100dvh;color:var(--c-text);font-family:var(--font-body);background-image:repeating-linear-gradient(90deg,transparent 0 63px,rgba(238,243,234,.025) 63px 64px);-webkit-tap-highlight-color:transparent}#app{max-width:1080px;margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 18px 40px}.top{margin-bottom:16px;border-left:6px solid var(--c-primary);padding-left:12px}h1{font-family:var(--font-display);font-size:2.1rem;font-weight:700;letter-spacing:.01em;margin:0;text-transform:uppercase}.tagline{margin:4px 0 0;opacity:.7;font-size:.92rem;line-height:1.45}h2{font-family:var(--font-display);font-size:1.1rem;margin:0;letter-spacing:.02em}button,input{font:inherit;color:inherit}.tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:16px}.tabs button{min-width:0;min-height:46px;border:1px solid rgba(238,243,234,.14);border-radius:10px;background:transparent;cursor:pointer;font-weight:700;padding:4px;line-height:1.2;overflow-wrap:anywhere;font-size:clamp(.8rem,3.6vw,.95rem)}.tabs button.on{background:var(--c-primary);color:var(--c-background);border-color:transparent}.layout{display:grid;gap:18px}@media(min-width:860px){.layout{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start}}.calc{display:grid;gap:14px}.form{display:grid;gap:16px;padding:18px;border-radius:16px;background:var(--c-surface)}.field{display:grid;gap:8px}.field label,.label{font-weight:700;font-size:.9rem;opacity:.85}.label-row{display:flex;justify-content:space-between;align-items:baseline}.label-row output{font-family:var(--font-display);color:var(--c-primary);font-size:1.15rem;font-variant-numeric:tabular-nums}.field input:not([type]),.field input[inputmode]{width:100%;min-width:0;border:2px solid rgba(238,243,234,.14);border-radius:12px;outline:0;background:var(--c-background);padding:12px 14px;font-family:var(--font-display);font-size:1.6rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em}.field input::placeholder{font-family:var(--font-body);font-size:1rem;font-weight:400;opacity:.4;letter-spacing:0}.field input:focus{border-color:var(--c-primary)}input[type=range]{width:100%;accent-color:var(--c-primary);margin:2px 0}.help{margin:0;font-size:.85rem;opacity:.65}.seg{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:6px}@media(max-width:480px){.seg.long{--cols: 2 !important}}.seg button{min-height:40px;padding:4px 6px;border-radius:999px;border:1px solid rgba(238,243,234,.18);background:transparent;cursor:pointer;font-weight:600;font-size:.88rem;line-height:1.2}.seg button.on{border-color:var(--c-primary);color:var(--c-primary);background:color-mix(in srgb,var(--c-primary) 12%,transparent)}.result{display:grid;gap:14px;padding:18px;border-radius:16px;background:var(--c-surface);border-top:4px solid var(--c-primary)}.hint{margin:0;opacity:.7;line-height:1.55}.warn{margin:0;color:var(--c-accent);font-weight:700}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tile{padding:12px;border-radius:12px;background:var(--c-background);display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.tile b{font-family:var(--font-display);font-size:1.7rem;font-variant-numeric:tabular-nums}.tile span{opacity:.6;font-size:.85rem}.tile.from{outline:2px solid var(--c-primary)}.tile.from b{color:var(--c-primary)}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}caption{text-align:left;font-size:.85rem;opacity:.7;padding-bottom:6px}.finish th,.finish td{padding:10px 4px;border-top:1px solid rgba(238,243,234,.08)}.finish th{text-align:left;font-weight:600}.finish td{text-align:right;font-family:var(--font-display);font-size:1.25rem;font-weight:700}.finish td small{display:block;font-family:var(--font-body);font-size:.78rem;font-weight:400;opacity:.6}.finish em,.splits em{font-style:normal;font-size:.72rem;font-weight:700;margin-left:6px;padding:2px 6px;border-radius:6px}.finish em{color:var(--c-accent);border:1px solid color-mix(in srgb,var(--c-accent) 60%,transparent)}.stretch td{opacity:.75}.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.facts div{padding:10px;border-radius:12px;background:var(--c-background);display:grid;gap:2px}.facts span{font-size:.78rem;opacity:.6}.facts b{font-family:var(--font-display);font-size:1.2rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.scroll{max-height:min(62vh,520px);overflow:auto;border-radius:12px;background:var(--c-background)}.splits th{position:sticky;top:0;background:var(--c-background);font-size:.78rem;text-align:right;padding:10px 12px;opacity:.9;font-weight:600}.splits th:first-child,.splits td:first-child{text-align:left}.splits td{text-align:right;padding:8px 12px;border-top:1px solid rgba(238,243,234,.06)}.splits td:last-child{font-family:var(--font-display);font-weight:700}.splits tr.half td{background:color-mix(in srgb,var(--c-primary) 14%,transparent)}.splits em{background:var(--c-primary);color:var(--c-background)}.formula{padding:12px;border-radius:12px;background:var(--c-background);display:grid;gap:6px}.formula code{font-family:var(--font-display);color:var(--c-primary);font-size:1.05rem}.formula p{margin:0;font-size:.85rem;opacity:.7;line-height:1.5}.row{display:grid;grid-template-columns:1.4fr 1fr;gap:8px}.primary,.ghost{min-height:48px;border-radius:12px;cursor:pointer;font-weight:700;padding:0 10px}.primary{border:0;background:var(--c-primary);color:var(--c-background)}.ghost{border:1px solid rgba(238,243,234,.2);background:transparent}.history{padding:18px;border-radius:16px;background:var(--c-surface)}.history-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.link{border:0;background:none;color:var(--c-accent);cursor:pointer;font-weight:600;padding:6px 0}.history ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.history li{display:flex;gap:4px}.entry{flex:1;min-width:0;text-align:left;border:0;border-radius:10px;background:var(--c-background);padding:10px 12px;cursor:pointer;display:grid;gap:2px}.sum{font-weight:600;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.when{font-size:.78rem;opacity:.55}.del{border:0;background:transparent;width:40px;border-radius:10px;cursor:pointer;opacity:.45}.del:hover{opacity:1;background:var(--c-background)}.toast{min-height:1.4em;text-align:center;color:var(--c-primary);font-weight:600;margin:16px 0 0}
