:root{--bg:#f5f6f8;--card:#fff;--ink:#20242c;--muted:#687080;--line:#dfe3e8;--accent:#2563a8;--accent2:#29313d;--green:#19705b;--danger:#b42318;--input:#fff;--shadow:0 5px 18px rgba(24,32,45,.07);font-family:Arial,"Segoe UI",sans-serif;color:var(--ink)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);-webkit-tap-highlight-color:transparent}.app-shell{max-width:760px;margin:auto;min-height:100vh;padding-bottom:92px}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:rgba(17,24,39,.97);color:white;box-shadow:0 2px 10px rgba(0,0,0,.15)}.topbar h1{font-size:18px;margin:2px 0 0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.18em;color:var(--accent)}main{padding:16px}.page{display:none}.page.active{display:block}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.hero-card{padding:18px;background:linear-gradient(135deg,#111827,#263244);color:white;display:flex;gap:16px;align-items:center;justify-content:space-between}.hero-card h2{font-size:20px;margin:8px 0 4px;max-width:440px}.hero-card p{margin:0;color:#cbd5e1;font-size:13px}.pill{display:inline-block;background:var(--accent);color:#111827;font-weight:800;border-radius:99px;padding:5px 9px;font-size:11px}.hero-total{text-align:right;white-space:nowrap}.hero-total span{font-size:12px;color:#cbd5e1}.hero-total strong{display:block;font-size:22px;color:#fff;margin-top:4px}.section-title{display:flex;justify-content:space-between;align-items:end;margin:22px 4px 10px}.section-title h2{font-size:16px;margin:0}.section-title span{font-size:11px;color:var(--muted)}.form-card{padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field>span,.toggle-field>span{font-size:12px;font-weight:700;color:#374151}.field input,.price-field input{width:100%;border:1px solid #d1d5db;border-radius:12px;padding:12px 11px;background:var(--input);font-size:16px;color:var(--ink);outline:none}.field input:focus,.price-field input:focus{border-color:#d0a800;box-shadow:0 0 0 3px rgba(245,196,0,.16)}.input-unit{position:relative}.input-unit input{padding-right:52px}.input-unit b{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--muted)}.field small{font-size:11px;color:var(--danger);font-weight:700}.toggle-field{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px}.switch{width:52px;height:30px;position:relative}.switch input{display:none}.switch i{position:absolute;inset:0;border-radius:20px;background:#d1d5db;transition:.2s}.switch i:after{content:"";position:absolute;width:24px;height:24px;left:3px;top:3px;border-radius:50%;background:white;box-shadow:0 1px 5px rgba(0,0,0,.25);transition:.2s}.switch input:checked+i{background:var(--accent2)}.switch input:checked+i:after{transform:translateX(22px);background:var(--accent)}.mini-stat{background:#f9fafb;border:1px solid var(--line);border-radius:12px;padding:11px}.mini-stat span{display:block;font-size:11px;color:var(--muted)}.mini-stat strong{display:block;margin-top:3px;font-size:15px}.action-row{display:flex;gap:10px;margin-top:16px}.action-row button,.ghost{border:0;border-radius:13px;padding:13px 16px;font-weight:800;font-size:14px;cursor:pointer}.action-row button{flex:1}.primary{background:var(--accent2);color:white}.secondary{background:white;border:1px solid #d1d5db!important;color:var(--ink)}.ghost{background:transparent;color:white;border:1px solid #4b5563}.hidden{display:none!important}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.summary-card{background:white;border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:var(--shadow)}.summary-card span{font-size:11px;color:var(--muted);font-weight:700}.summary-card strong{font-size:19px;display:block;margin-top:4px}.summary-card small{display:block;margin-top:4px;color:var(--muted);font-size:10px}.primary-summary{grid-column:1/-1;background:linear-gradient(135deg,#111827,#263244);color:white}.primary-summary span,.primary-summary small{color:#cbd5e1}.primary-summary strong{font-size:31px;color:var(--accent)}.table-card{overflow:hidden}.pos{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center;padding:12px;border-bottom:1px solid var(--line)}.pos:last-child{border-bottom:0}.pos.noqty{opacity:.42}.pos-num{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#f3f4f6;font-size:11px;font-weight:800}.pos-name strong{font-size:12px;display:block}.pos-name small{font-size:10px;color:var(--muted)}.pos-price{text-align:right;font-size:13px;font-weight:800}.cost-list{padding:6px 14px}.cost-row,.totals-card>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}.cost-row:last-child,.totals-card>div:last-child{border-bottom:0}.cost-row span,.totals-card span{color:#4b5563}.cost-row strong,.totals-card strong{white-space:nowrap}.totals-card{padding:8px 14px}.totals-card .grand{font-size:17px;font-weight:900}.totals-card .grand strong{color:var(--green);font-size:21px}.info-card{padding:16px}.info-card strong{font-size:16px}.info-card p{font-size:12px;line-height:1.5;color:var(--muted);margin:7px 0 0}.price-section{margin-top:16px}.price-section h3{font-size:14px;margin:0 4px 8px}.price-card{padding:12px}.price-field{display:grid;grid-template-columns:1fr 125px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.price-field:last-child{border:0}.price-field label{font-size:12px;font-weight:700}.price-field small{display:block;font-weight:400;color:var(--muted);margin-top:2px}.price-field input{padding:9px;font-size:14px}.bottom-nav{position:fixed;z-index:30;left:50%;bottom:0;transform:translateX(-50%);width:min(760px,100%);padding:7px 8px calc(7px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);backdrop-filter:blur(12px)}.bottom-nav button{background:none;border:0;color:#6b7280;font-size:10px;font-weight:800;padding:5px 0}.bottom-nav button span{display:block;font-size:20px;margin-bottom:1px}.bottom-nav button.active{color:#111827}.sticky-actions{padding-bottom:8px}.positive{color:var(--green)}.negative{color:var(--danger)}
@media(max-width:480px){main{padding:12px}.topbar{padding:12px 14px}.form-card{grid-template-columns:1fr 1fr;padding:12px;gap:10px}.hero-card{align-items:flex-start;flex-direction:column}.hero-total{text-align:left}.price-field{grid-template-columns:1fr 115px}.action-row{flex-direction:column}.sticky-actions{flex-direction:row}.field input{font-size:16px}}
.bottom-nav{grid-template-columns:repeat(4,1fr)}.project-search{margin:16px 0}.project-list{display:grid;gap:10px}.saved-project{display:grid;grid-template-columns:1fr auto;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}.project-open{display:grid;gap:3px;text-align:left;border:0;background:#fff;padding:14px;cursor:pointer;color:var(--ink)}.project-open strong{font-size:15px}.project-open span{font-size:12px;color:#404858}.project-open small{font-size:10px;color:var(--muted)}.project-open b{font-size:16px;margin-top:4px}.project-delete{border:0;border-left:1px solid var(--line);background:#fff;color:var(--danger);font-weight:700;padding:0 14px;cursor:pointer}.empty-state{text-align:center;padding:28px 16px;color:var(--muted)}.empty-state p{font-size:12px;margin:6px 0 0}.primary-summary,.hero-card{background:linear-gradient(135deg,#29313d,#3d4858)}.pill{background:#e8eef6;color:#29313d}.field input,.price-field input{background:var(--input)}
@media print{body{background:white}.topbar,.bottom-nav,.action-row,.section-title,.cost-list,.summary-grid,.info-card,#page-calc,#page-projects,#page-prices{display:none!important}.app-shell{max-width:none;padding:0}main{padding:0}#page-result{display:block!important}.table-card,.totals-card{box-shadow:none;border-radius:0;border-color:#bbb}.pos{break-inside:avoid}}
