:root{color-scheme:dark;--bg:#0b0f0e;--surface:#121816;--surface-2:#18211e;--line:#29342f;--text:#f4f4ea;--muted:#9da9a3;--green:#6ee7a8;--green-deep:#173d2b;--cream:#fff1c9;--orange:#ff9c64;--red:#ff776f;--shadow:0 24px 70px rgba(0,0,0,.32);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% -10%,#163a2b 0,transparent 30rem),var(--bg);color:var(--text);min-height:100vh;font-size:16px;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}.topbar{height:72px;max-width:1320px;margin:auto;padding:0 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08)}.brand{color:var(--text);text-decoration:none;display:flex;align-items:center;gap:12px;font-weight:750;letter-spacing:-.02em}.brand strong{color:var(--green)}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--green);color:#092015;font-weight:900;font-size:.83rem}.save-state{font-size:.8rem;color:var(--muted);display:flex;align-items:center;gap:8px}.save-state:before{content:"";width:7px;height:7px;background:var(--green);border-radius:50%}main{max-width:1260px;margin:auto;padding:54px 30px 70px}.intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:0 0 34px}.eyebrow{margin:0 0 8px;color:var(--green);font-weight:800;letter-spacing:.14em;font-size:.72rem}.intro h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,5vw,4.6rem);line-height:.98;letter-spacing:-.055em;margin:0 0 14px;font-weight:500;max-width:780px}.intro>div>p:last-child{color:var(--muted);margin:0;font-size:1.05rem}.intro-chip{white-space:nowrap;border:1px solid var(--line);background:rgba(18,24,22,.72);padding:10px 15px;border-radius:999px;color:#d8dfdb;font-size:.82rem}.intro-chip span{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:7px;box-shadow:0 0 0 5px rgba(110,231,168,.12)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:24px;align-items:start}.calculator{display:grid;gap:18px}.panel{border:1px solid var(--line);background:rgba(18,24,22,.88);border-radius:22px;padding:26px;box-shadow:0 12px 50px rgba(0,0,0,.15);overflow:hidden}.panel-accent{border-top:2px solid var(--green)}.panel-heading{display:flex;align-items:flex-start;gap:15px;margin-bottom:24px}.panel-heading h2{font-size:1.24rem;margin:0 0 2px;letter-spacing:-.02em}.panel-heading p{margin:0;color:var(--muted);font-size:.87rem}.step{color:var(--green);font:700 .75rem/1 ui-monospace,SFMono-Regular,monospace;border:1px solid #315240;border-radius:7px;padding:7px 6px}.field-grid{display:grid;gap:15px}.field-grid.three{grid-template-columns:repeat(3,1fr)}.field-grid.two{grid-template-columns:repeat(2,1fr)}label{display:block;color:#d9e0dc;font-size:.8rem;font-weight:650}label>span{float:right;color:var(--muted);font-weight:500}input,select{display:block;width:100%;margin-top:7px;border:1px solid #33403a;background:#0e1412;color:var(--text);border-radius:10px;padding:12px 13px;outline:none;min-height:47px;transition:border-color .18s,box-shadow .18s}input:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(110,231,168,.12)}input:invalid{border-color:var(--red)}.material-card{background:var(--surface-2);border:1px solid #304138;border-radius:15px;padding:17px;margin-top:18px}.material-top{display:flex;align-items:flex-end;gap:15px;margin-bottom:15px}.grow{flex:1}.text-button{border:0;background:transparent;color:var(--green);font-size:.78rem;font-weight:700;padding:12px 0}.compact input{background:#111815}.microcopy{margin:12px 0 0;color:var(--muted);font-size:.76rem}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:17px 2px;font-weight:700;font-size:.9rem;cursor:pointer}summary::-webkit-details-marker{display:none}summary:before{content:"+";color:var(--green);margin-right:10px;font-size:1.2rem;font-weight:400}details[open] summary:before{content:"−"}summary span{margin-left:auto;color:var(--muted);font-size:.78rem;font-weight:600}.details-body{padding:0 2px 18px 27px}.segmented{display:grid;grid-template-columns:1fr 1fr;background:#0d1311;border:1px solid var(--line);border-radius:12px;padding:4px}.segmented label{cursor:pointer}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented span{float:none;display:block;text-align:center;padding:10px;border-radius:8px;color:var(--muted)}.segmented input:checked+span{background:var(--green-deep);color:var(--green)}.mode-help{color:var(--muted);font-size:.76rem;margin:8px 0 19px}.switch-row{display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.switch-row strong,.switch-row span{display:block}.switch-row>div>span{color:var(--muted);font-size:.76rem;margin-top:2px}.switch{position:relative}.switch input{position:absolute;opacity:0}.switch>span{width:46px;height:26px;border-radius:30px;background:#3a433f;position:relative;transition:.2s}.switch>span:after{content:"";position:absolute;width:20px;height:20px;background:white;border-radius:50%;top:3px;left:3px;transition:.2s}.switch input:checked+span{background:var(--green)}.switch input:checked+span:after{left:23px;background:#0b1d14}.vat-row{display:grid;grid-template-columns:160px 1fr;gap:20px;align-items:end;margin-top:15px}.vat-row p{margin:0 0 7px;color:var(--muted);font-size:.74rem}.result-card{position:sticky;top:22px;background:var(--cream);color:#111713;border-radius:22px;padding:29px;box-shadow:var(--shadow);overflow:hidden}.result-card:before{content:"";position:absolute;width:160px;height:160px;border:32px solid rgba(27,83,55,.08);border-radius:50%;right:-85px;top:-75px}.result-label{font-weight:900;letter-spacing:.13em;font-size:.7rem;color:#42604e;margin:0}.total{display:flex;align-items:baseline;gap:7px;margin:9px 0 0;position:relative}.total span{font:500 1.7rem Georgia,serif}.total strong{font:500 clamp(3rem,6vw,4.5rem)/1 Georgia,serif;letter-spacing:-.05em}.total small{font-weight:800;font-size:.72rem;color:#597063}.tax-note{font-size:.76rem;color:#597063;margin:8px 0 25px}.cost-bar{height:8px;border-radius:10px;overflow:hidden;display:flex;background:#ddd2b5}.cost-bar span{height:100%;transition:width .35s}.cost-bar span:nth-child(1){background:#193e2c}.cost-bar span:nth-child(2){background:var(--green)}.cost-bar span:nth-child(3){background:var(--orange)}.legend{display:flex;flex-wrap:wrap;gap:12px;margin:9px 0 24px;color:#657368;font-size:.65rem}.legend i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px}.legend .cost{background:#193e2c}.legend .profit{background:#41bb7b}.legend .fees{background:var(--orange)}.breakdown{display:grid;gap:10px}.breakdown>div{display:flex;justify-content:space-between;gap:20px;font-size:.8rem;color:#4e6055}.breakdown strong{color:#182019;font-variant-numeric:tabular-nums}.breakdown .subtotal{margin-top:3px;padding-top:13px;border-top:1px solid #d9cfb4;color:#182019;font-weight:800}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.metrics div{border:1px solid #d9cfb4;border-radius:11px;padding:11px}.metrics span,.metrics strong{display:block}.metrics span{font-size:.64rem;color:#68756c;margin-bottom:2px}.metrics strong{font-size:.9rem}.primary-button,.secondary-button{border:0;border-radius:10px;background:#123724;color:#eafff1;padding:13px 16px;font-weight:800;width:100%}.primary-button:hover,.secondary-button:hover{background:#194d32}.reset-button{display:block;margin:10px auto 0;border:0;background:transparent;color:#69776e;font-size:.72rem;text-decoration:underline;text-underline-offset:3px}.notes{max-width:760px;margin:28px 0 0}.notes p{color:#75827c;font-size:.76rem}.dialog-shell{width:min(640px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 32px));overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:20px;padding:25px}dialog{padding:0;border:0;background:transparent}dialog::backdrop{background:rgba(1,4,3,.78);backdrop-filter:blur(6px)}.dialog-heading{display:flex;align-items:start;justify-content:space-between}.dialog-heading h2{font:500 2.2rem/1 Georgia,serif;margin:0}.icon-button{border:1px solid var(--line);background:#1a211e;color:var(--text);font-size:1.5rem;width:40px;height:40px;border-radius:50%}.dialog-intro{color:var(--muted);font-size:.85rem}.filament-list{display:grid;gap:8px;margin:20px 0}.filament-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;border:1px solid var(--line);padding:12px;border-radius:11px}.filament-item strong,.filament-item span{display:block}.filament-item span{color:var(--muted);font-size:.72rem}.filament-item button{border:0;background:transparent;color:var(--muted);padding:6px}.filament-item .use-button{color:var(--green);font-weight:700}.add-filament{background:var(--surface-2);border-radius:14px;padding:18px}.add-filament h3{margin:0 0 14px;font-size:1rem}.add-filament .secondary-button{margin-top:15px}.form-error{color:var(--red);font-size:.75rem;margin:9px 0 0;min-height:1em}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#edfdf3;color:#123724;border-radius:999px;padding:11px 18px;font-size:.8rem;font-weight:800;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
.visitor-stats{margin-top:36px;padding:24px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,rgba(25,55,43,.72),rgba(18,24,22,.92));display:grid;grid-template-columns:minmax(230px,.8fr) 1.2fr;gap:28px;align-items:center}.visitor-stats[hidden]{display:none}.visitor-copy>div{display:flex;align-items:baseline;gap:8px}.visitor-copy>div strong{font:500 2.7rem/1 Georgia,serif;color:var(--cream)}.visitor-copy>div span{font-size:.9rem;color:#d4ddd8}.visitor-copy>p:last-child{margin:8px 0 0;color:var(--muted);font-size:.72rem}.country-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.country-chip{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #365044;background:#101714;border-radius:999px;font-size:.72rem}.country-chip b{font-size:1rem;line-height:1}.country-chip span{color:#cbd5d0}.country-chip strong{color:var(--green);font-variant-numeric:tabular-nums}
.printer-card{background:linear-gradient(135deg,#18231f,#141b18);border:1px solid #355044;border-radius:15px;padding:17px;margin-bottom:8px}.printer-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.printer-specs div{background:#0e1512;border:1px solid #293a32;border-radius:10px;padding:10px 11px}.printer-specs span,.printer-specs strong{display:block}.printer-specs span{color:var(--muted);font-size:.66rem;margin-bottom:3px}.printer-specs strong{font-size:.82rem}.printer-note{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:11px}.printer-note p{margin:0;color:var(--muted);font-size:.72rem;max-width:72ch}.printer-note a{color:var(--green);font-size:.72rem;font-weight:700;white-space:nowrap;text-underline-offset:3px}
@media(max-width:940px){.workspace{grid-template-columns:1fr}.result-card{position:relative;top:auto}.intro{align-items:flex-start}.intro-chip{display:none}}
@media(max-width:620px){.topbar{height:62px;padding:0 17px}.save-state{display:none}main{padding:36px 16px 50px}.intro{margin-bottom:25px}.intro h1{font-size:2.65rem}.panel{padding:20px;border-radius:17px}.field-grid.three,.field-grid.two{grid-template-columns:1fr 1fr}.field-grid.three label:last-child{grid-column:1/-1}.material-top{align-items:stretch;flex-direction:column;gap:2px}.text-button{text-align:left}.details-body{padding-left:0}.printer-specs{grid-template-columns:1fr}.printer-note{align-items:flex-start;flex-direction:column;gap:6px}.vat-row{grid-template-columns:1fr}.result-card{padding:23px}.visitor-stats{grid-template-columns:1fr;gap:18px}.country-list{justify-content:flex-start}.total strong{font-size:3.55rem}.dialog-shell{padding:20px}.filament-item{grid-template-columns:1fr auto}.filament-item .remove-button{grid-column:2}.add-filament .field-grid{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.field-grid.three,.field-grid.two{grid-template-columns:1fr}.field-grid.three label:last-child{grid-column:auto}.segmented{grid-template-columns:1fr}.metrics{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
