.calc .host{margin-bottom:var(--space-3)}.calc-form{gap:var(--space-4);padding:var(--space-4);border:2px solid var(--ink);border-radius:var(--radius-lg);background:var(--surface);box-shadow:6px 6px 0 var(--highlight);display:grid}.calc-form fieldset{gap:var(--space-3);border:0;min-width:0;margin:0;padding:0;display:grid}.calc-form legend{margin-bottom:var(--space-2);font-family:var(--font-display);font-size:var(--text-lg)}.calc-form .row{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));display:grid}.calc-form .field{gap:var(--space-1);align-content:start;min-width:0;display:grid}.calc-form .field-label{font-weight:600;font-size:var(--text-sm)}.calc-form .hint{color:var(--ink-soft);font-size:var(--text-sm);line-height:1.6}.calc-form .unit-input{position:relative}.calc-form input,.calc-form select{width:100%;height:48px;min-height:48px;padding:0 var(--space-3);border:1.5px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink);font:inherit;font-variant-numeric:tabular-nums}.calc-form .unit-input input{text-align:right;padding-right:3.5rem;font-weight:700}.calc-form .unit-input span{top:50%;right:var(--space-3);color:var(--ink-soft);font-size:var(--text-sm);pointer-events:none;position:absolute;transform:translateY(-50%)}.calc-form .choice{gap:var(--space-2);margin-top:var(--space-1);display:flex}.calc-form .choice label{flex:1;position:relative}.calc-form .choice input{opacity:0;pointer-events:none;position:absolute}.calc-form .choice span{border:1.5px solid var(--line);background:var(--paper);min-height:40px;font-size:var(--text-sm);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-weight:600;display:flex}.calc-form .choice input:checked+span{border-color:var(--ink);background:var(--ink);color:var(--paper)}.calc-form .choice input:focus-visible+span{outline:3px solid var(--stamp);outline-offset:2px}.calc-form input:focus-visible,.calc-form select:focus-visible{outline:3px solid var(--stamp);outline-offset:1px;border-color:var(--ink)}.calc-form details{border-top:1px dashed var(--line);padding-top:var(--space-3)}.calc-form summary{cursor:pointer;font-weight:600}.calc-form details[open] summary{margin-bottom:var(--space-3)}.calc-form .form-error{color:var(--stamp);font-size:var(--text-sm);margin:0;font-weight:600}.calc-form .form-error:empty{display:none}.calc .privacy{color:var(--ink-soft);font-size:var(--text-sm);text-align:center;margin:0}.slip{margin-top:var(--space-5);padding:var(--space-5) var(--space-4) var(--space-4);border-radius:var(--radius-sm);background:repeating-linear-gradient(0deg, transparent 0 27px, color-mix(in oklch, var(--line) 35%, transparent) 27px 28px), var(--surface);box-shadow:var(--shadow);position:relative}.slip:before{content:"";background:radial-gradient(circle at 8px 0, transparent 7px, var(--surface) 7.5px) -8px 0 / 16px 10px repeat-x;height:10px;position:absolute;inset:-8px 0 auto}.slip-head{justify-content:space-between;align-items:baseline;gap:0 var(--space-3);margin:0 0 var(--space-2);padding-bottom:var(--space-2);border-bottom:2px solid var(--ink);flex-wrap:wrap;font-weight:700;display:flex}.slip-head small{color:var(--ink-soft);font-weight:400;font-size:var(--text-sm)}.slip-total{margin:var(--space-3) 0 0;text-align:center}.slip-total .label{color:var(--ink-soft);font-weight:600;display:block}.slip-total .amount{margin-top:var(--space-1);font-family:var(--font-display);color:var(--money);font-variant-numeric:tabular-nums;word-break:keep-all;font-size:clamp(2.25rem,1.4rem + 4.5vw,4rem);line-height:1.05;display:block}.slip-total .amount[data-sign=pay]{color:var(--stamp)}.slip-total .sub{margin-top:var(--space-1);color:var(--ink-soft);font-size:var(--text-sm);display:block}.slip-sulgi{margin:var(--space-3) 0 0}.split{height:14px;margin:var(--space-4) 0 var(--space-2);background:var(--paper-deep);border-radius:999px;display:flex;overflow:hidden}.split span{height:100%}.split .net{background:var(--money)}.split .ins{background:var(--highlight)}.split .tax{background:var(--stamp)}.split-legend{gap:var(--space-1) var(--space-3);color:var(--ink-soft);font-size:var(--text-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.split-legend li:before{content:"";background:var(--dot);vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:4px;display:inline-block}.lines{margin:var(--space-4) 0 0;padding:0;list-style:none}.lines li{justify-content:space-between;gap:var(--space-3);border-bottom:1px dashed var(--line);font-size:var(--text-base);font-variant-numeric:tabular-nums;padding:8px 0;line-height:1.6;display:flex}.lines li>span:first-child{color:var(--ink-soft)}.lines li small{color:var(--ink-soft);font-size:var(--text-sm);display:block}.lines li>span:last-child{text-align:right;white-space:nowrap;font-weight:700}.lines li.sum{border-bottom:2px solid var(--ink)}.lines li.sum>span{color:var(--ink);font-weight:700}.lines li.minus>span:last-child{color:var(--stamp)}.lines li.plus>span:last-child{color:var(--money)}.slip h3{margin:var(--space-5) 0 0;font-family:var(--font-body);font-size:var(--text-base);font-weight:700}.peek{inset:auto var(--space-3) calc(var(--space-3) + env(safe-area-inset-bottom));z-index:20;justify-content:space-between;align-items:center;gap:var(--space-3);max-width:30rem;padding:var(--space-2) var(--space-4);border:2px solid var(--ink);background:var(--surface);box-shadow:var(--shadow);color:var(--ink);font-variant-numeric:tabular-nums;transition:transform .3s var(--ease-out-expo), opacity .3s;border-radius:999px;margin:0 auto;font-weight:700;text-decoration:none;display:flex;position:fixed}.peek[data-hidden]{opacity:0;pointer-events:none;transform:translateY(150%)}.peek strong{color:var(--money);font-family:var(--font-display);font-size:var(--text-lg);font-weight:400}.peek strong[data-sign=pay]{color:var(--stamp)}.peek:focus-visible{outline:3px solid var(--stamp);outline-offset:2px}@media (prefers-reduced-motion:reduce){.peek{transition:none}}.estimate-note{margin:var(--space-4) 0 0;padding:var(--space-3);border-left:4px solid var(--stamp);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--paper-deep);font-size:var(--text-sm);line-height:1.6}.calc .actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.calc .basis{max-width:34em;margin:var(--space-3) auto 0;color:var(--ink-soft);font-size:var(--text-sm);text-align:center;line-height:1.6}
