:root{color-scheme:dark;--gold:#d6b77a;--muted:#b6b1a8;--line:#51452e}*{box-sizing:border-box}body{margin:0;background:#050505;color:#fffdf8;font:16px/1.6 Manrope,sans-serif}header{border-bottom:1px solid var(--line);padding:22px max(24px,calc((100vw - 1320px)/2));display:flex;justify-content:space-between;gap:20px;align-items:center}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.brand{font-size:20px;letter-spacing:.15em;white-space:nowrap}.brand span{color:var(--gold)}nav{display:flex;gap:24px;flex-wrap:wrap;font-size:14px}main{max-width:1370px;margin:auto;padding:44px 24px}h1,h2,h3,p{margin-top:0}h1{font:clamp(36px,4.4vw,62px)/1.1 Italiana,serif;margin-bottom:12px}h2{font:32px/1.2 Italiana,serif;margin-bottom:22px}h3{font-size:18px}.heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.heading p:not(.eyebrow){color:var(--muted)}.eyebrow{color:var(--gold);font-size:12px;letter-spacing:.16em;font-weight:700}.badge{font-size:12px;letter-spacing:.09em;border:1px solid var(--line);color:var(--gold);padding:8px 12px;align-self:flex-start;white-space:nowrap}.steps{display:flex;border-block:1px solid var(--line);padding:18px 0;gap:36px;margin:16px 0 30px;font-size:14px}.steps b{color:var(--gold);margin-right:8px}.workspace{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.5fr);gap:24px;align-items:start}.panel{min-width:0;border:1px solid var(--line);padding:28px;background:#0c0c0b}.estimate{background:linear-gradient(150deg,#141411,#090909)}label{display:block;font-size:14px;font-weight:600;margin:18px 0 7px}label span,.muted{color:var(--muted)}input,textarea,button{font:inherit}input,textarea{width:100%;min-width:0;border:1px solid #5b574c;background:#080808;color:#fffdf8;padding:11px 12px;border-radius:3px}textarea{resize:vertical}input:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}input[type=file]{font-size:14px;border:0;padding:0}input::file-selector-button{font:inherit;background:#24211b;border:1px solid var(--line);color:var(--gold);padding:8px;margin-right:8px;cursor:pointer}.upload{border:1px dashed var(--line);padding:18px}.upload p{font-size:14px;color:var(--muted);margin:12px 0 0}.check{display:flex;gap:10px;align-items:flex-start;line-height:1.5}.check input{width:18px;height:18px;flex:0 0 18px;margin-top:3px;accent-color:var(--gold)}.small{font-size:14px}button,.button{display:inline-block;border:1px solid var(--gold);background:var(--gold);color:#080808;min-height:44px;padding:11px 18px;font-weight:700;font-size:14px;border-radius:3px;cursor:pointer;text-align:center;max-width:100%}button:hover,.button:hover{filter:brightness(1.12)}button:disabled{opacity:.45;cursor:not-allowed}.secondary{background:transparent;color:var(--gold)}#generate,#signin{width:100%;margin-top:16px}#connection,#status,#missing{font-size:14px;margin:12px 0;overflow-wrap:anywhere}#status.error,#missing{color:#f0c18e}.estimate-top{display:flex;justify-content:space-between;gap:16px}.notice{border-left:2px solid var(--gold);padding-left:16px;font-size:14px;color:var(--muted)}#empty{padding:44px 18px;text-align:center;border:1px dashed var(--line);margin:26px 0;color:var(--muted)}.item{border:1px solid var(--line);padding:16px;margin:16px 0;break-inside:avoid}.item-head{display:flex;gap:12px;align-items:end}.item-head label{flex:1;margin-top:0}.remove{padding:8px 12px;flex:0 0 auto;margin-bottom:7px;color:#f3b4a6;border-color:#765247}.fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.fields label{font-size:12px}.basis{font-size:14px;color:var(--muted);margin:12px 0 0;overflow-wrap:anywhere}.line-total{text-align:right;margin:12px 0 0;color:var(--gold);font-weight:700}.adjustments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0 12px}.adjustments label{margin:0;font-size:14px}.adjustments input{margin-top:8px}.totals{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.totals>div{display:flex;justify-content:space-between;gap:18px;padding:6px 0;font-size:14px}.totals strong{white-space:nowrap;font-variant-numeric:tabular-nums}.totals .grand{border-top:1px solid var(--line);margin-top:12px;padding-top:20px;font-size:22px;color:var(--gold)}#notes{margin-top:28px;border-top:1px solid var(--line);padding-top:24px}#notes li{font-size:14px;color:var(--muted);margin-bottom:9px;overflow-wrap:anywhere}.actions{display:flex;gap:12px;margin:24px 0 12px;flex-wrap:wrap}footer{border-top:1px solid var(--line);padding:24px;text-align:center;color:var(--muted);font-size:14px;overflow-wrap:anywhere}[hidden]{display:none!important}#print-meta{display:none}@media(max-width:900px){.workspace{grid-template-columns:1fr}.heading{display:block}.heading>.badge{display:inline-block;margin-bottom:16px}.steps{gap:18px;justify-content:space-between}}@media(max-width:520px){header{align-items:flex-start;flex-direction:column;padding:20px}nav{gap:18px}main{padding:30px 16px}.panel{padding:20px 16px}.steps{flex-direction:column;gap:8px}.fields,.adjustments{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-top{flex-direction:column;margin-bottom:20px}.estimate-top h2{margin-bottom:0}.totals .grand{font-size:19px}.actions button{width:100%}.item{padding:12px}.fields label{font-size:14px}}
@media print{color-scheme:light;body{background:#fff;color:#111;font:11pt/1.5 Arial,sans-serif}header,footer,.heading,.steps,.inputs,.actions,#add,.remove,.adjustments,.estimate>.small{display:none!important}main{padding:0;max-width:none}.workspace{display:block}.panel,.estimate{border:0;background:white;padding:0;color:#111}.badge,.eyebrow,.line-total,.totals .grand{color:#333}.badge,.item,.totals{border-color:#aaa}.notice,.basis,#notes li,.muted{color:#444}#print-meta{display:block;margin-bottom:16px}input{background:white;color:#111;border:0;padding:2px 0;font-size:11pt;border-radius:0}label{color:#333}.item input{width:100%}.fields{grid-template-columns:repeat(4,minmax(0,1fr))}.item-head{display:block}.item-head input{font-weight:bold}.totals{break-inside:avoid}#missing{color:#333}#empty{display:none}a[href]::after{content:none}}

@media print{.ph-assistant{display:none!important}}
