:root{font-family:Arial,Helvetica,sans-serif;color:#172c37;background:#edf1f3;font-size:16px;--ink:#172c37;--accent:#c8ee48;--line:#d6dfe3}*{box-sizing:border-box}body{margin:0}header{background:var(--ink);color:white;min-height:100px;padding:22px 4vw;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:16px;color:white;text-decoration:none;align-items:center;font-size:15px;letter-spacing:2px}.brand b{color:var(--accent)}.brand small{display:block;font-size:12px;letter-spacing:.3px;margin-top:8px;color:#c4d0d7}.mark{border:1px solid #627680;padding:12px 10px;font-size:21px;font-weight:bold}.mark span{color:var(--accent)}.edition{font:12px monospace;letter-spacing:2px;color:#b7c5cd}button,.file-button{font:inherit;cursor:pointer;border:1px solid var(--line);background:white;color:var(--ink);padding:12px 16px;border-radius:5px;min-height:46px;font-weight:600}button:hover,.file-button:hover{background:#eef5dc}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #3981b1;outline-offset:3px}main{display:grid;grid-template-columns:250px minmax(0,1fr);max-width:1400px;margin:0 auto}aside{padding:38px 26px 30px 20px}.eyebrow{font:12px monospace;letter-spacing:1.5px;color:#526775}h1{font-size:32px;line-height:1.08;letter-spacing:-1px;margin:18px 0 34px}h2{font-size:27px;letter-spacing:-.7px;margin:5px 0 10px}h3{margin:12px 0;font-size:20px}.workspace{min-width:0;background:#fff;padding:32px 36px;min-height:calc(100vh - 100px)}label{display:block;font-size:14px;font-weight:600;margin-bottom:15px}input,select,textarea{display:block;width:100%;font:inherit;font-size:16px;color:var(--ink);border:1px solid #aebdc6;border-radius:4px;padding:12px;background:#fff;margin-top:7px;min-width:0}textarea{min-height:80px}.secondary{width:100%}.local-note{border-top:1px solid #ccd5da;margin-top:32px;padding-top:24px;font-size:14px;line-height:1.6}.local-note strong{font-size:15px}.local-note button,.file-button{display:block;width:100%;margin:10px 0;font-size:14px;text-align:center}.file-button input{font-size:12px;padding:5px}.section-title{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:22px}.tag{background:#edf3f6;padding:8px 12px;border-radius:30px;font-size:13px;white-space:nowrap}.job-grid{display:grid;grid-template-columns:1.4fr 1.4fr 1fr 1fr;gap:14px}nav{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:14px 0 28px;padding-bottom:12px}.tab{border:none;color:#536774;background:transparent;font-size:14px}.tab.active{background:var(--ink);color:white}.tool-heading p{color:#526775;font-size:15px;line-height:1.6;margin-top:0}.tool-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;margin-top:24px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.primary{background:var(--accent);border-color:var(--accent);color:#172c37}.result{background:#eef3f5;border-top:4px solid var(--ink);padding:25px;align-self:start;line-height:1.6;min-height:240px}.result .big{font-size:42px;font-weight:700;letter-spacing:-1.5px;line-height:1.2;margin:16px 0}.result .big small{font-size:18px;font-weight:400;letter-spacing:0}.result dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:14px}.result dd{margin:0;text-align:right;font-weight:700}.status{display:inline-block;background:#ddecf3;padding:5px 10px;font-weight:bold}.status.CUT{background:#ffe1c1}.status.FILL{background:#cfe5fb}.status.PASS{background:#d8edb4}.table-header{display:flex;align-items:center;justify-content:space-between;margin-top:30px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;background:#eef3f5;font-size:12px;letter-spacing:.5px;text-transform:uppercase}td,th{padding:13px 10px;border-bottom:1px solid var(--line)}td{overflow-wrap:anywhere}td button{font-size:13px;padding:7px 9px;min-height:34px}.hint{font-size:14px;line-height:1.6;color:#566975}.actions{display:flex;gap:12px;margin:20px 0}.report-header{border-bottom:3px solid var(--ink);padding-bottom:20px;margin-bottom:25px}.report-meta{display:flex;flex-wrap:wrap;gap:20px;font-size:14px}footer{border-top:1px solid var(--line);margin-top:35px;padding-top:20px;font:12px monospace;letter-spacing:1px}footer span{display:block;font:14px/1.6 Arial;letter-spacing:0;color:#526775;margin-top:10px}details{font:14px Arial;letter-spacing:0;margin-top:20px}summary{cursor:pointer;margin-bottom:12px}#message{color:#165779;line-height:1.5}#save-state{font-size:13px;line-height:1.5}#print-sheet{display:none}[hidden]{display:none!important}@media(max-width:1050px){.job-grid{grid-template-columns:1fr 1fr}.workspace{padding:25px}.edition{display:none}main{grid-template-columns:210px minmax(0,1fr)}.tool-grid{gap:20px}}@media(max-width:760px){header{padding:18px;min-height:80px}.brand{font-size:12px;gap:10px}.mark{font-size:17px;padding:10px 8px}header button{font-size:13px;padding:10px}main{display:flex;flex-direction:column}.workspace{order:0;padding:24px 18px}aside{order:1;padding:25px 18px}aside h1{display:none}.tool-grid{grid-template-columns:1fr}.result{min-height:180px}.section-title h2{font-size:25px}.tag{font-size:12px}nav{gap:2px}.tab{padding:10px 8px;font-size:13px;flex:1}.local-note{margin-top:20px}.job-grid{gap:0 12px}.fields{gap:0 12px}.result .big{font-size:36px}}@media print{body{background:white;color:#111}header,main{display:none}#print-sheet{display:block;padding:12mm;font:11pt Arial}#print-sheet h1{font-size:26pt;margin:10px 0}#print-sheet table{font-size:9pt}#print-sheet th{background:#eee!important}#print-sheet tr{break-inside:avoid}.report-header{border-color:#111}.no-print{display:none}@page{size:letter;margin:10mm}}

.secondary+.secondary{margin-top:10px}.aside-link{display:block;margin-top:20px;color:#165779;font-size:14px;line-height:1.5}.row-actions{display:flex;gap:6px}.table-header .actions{margin:0;flex-wrap:wrap}.footer-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:14px;font:14px Arial;letter-spacing:0}.footer-links a{color:#165779}.hint a{color:#165779}#message:empty{display:none}#message:not(:empty){background:#edf5fb;border-left:3px solid #3981b1;padding:12px 16px}.doc{max-width:960px;margin:0 auto;padding:36px 24px;display:block;background:white;min-height:calc(100vh - 100px)}.doc h1{margin:15px 0 24px;font-size:38px}.doc p,.doc li{font-size:16px;line-height:1.75;color:#38505f}.doc h2{margin-top:32px}.doc a{color:#165779}.doc .primary{display:inline-block;text-decoration:none;color:#172c37;padding:14px 18px;border-radius:5px;font-weight:600}.tool-links{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0}.tool-links a{display:block;padding:24px;background:#eef3f5;border-top:3px solid #172c37;text-decoration:none}.tool-links strong{display:block;font-size:20px;color:#172c37}.tool-links span{display:block;margin-top:12px;line-height:1.6}.doc .example{padding:20px;border-left:4px solid #a8c92b;background:#f4f8e9}.doc form{max-width:620px}.doc .result{max-width:620px;margin-top:24px}.doc .brand{color:white}.doc table{margin:22px 0}@media(max-width:520px){.tool-links{grid-template-columns:1fr}.doc h1{font-size:30px}.table-header{align-items:flex-start;gap:8px;flex-direction:column}.table-header .actions{margin:10px 0}.edition{display:none}}
.licence{border-top:1px solid #ccd5da;margin-top:28px;padding-top:22px;font-size:14px;line-height:1.6}
.licence strong{display:block;font-size:15px}
.licence p{margin:6px 0 12px}
.licence label{font-size:13px;margin-bottom:10px}
.licence input{font:14px monospace;padding:10px}
.licence button{display:block;width:100%;margin:10px 0;font-size:14px}
.licence .licence-problem{color:#8c2f22;background:#fbecea;border-left:3px solid #a33326;padding:8px 10px}
.licence .aside-link{display:inline-block;margin-top:4px}
button.locked::after{content:" · Pro";font:11px monospace;letter-spacing:1px;opacity:.65}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin:26px 0}
.plans div{border:1px solid var(--line);background:#fff;padding:22px;border-radius:6px}
.plans div.featured{border:2px solid var(--ink)}
.plans h3{margin:0 0 4px}
.plans .price{font-size:31px;font-weight:bold;letter-spacing:-1px}
.plans .price small{font-size:14px;font-weight:normal;color:#526775;letter-spacing:0}
.plans ul{padding-left:18px;margin:14px 0 0;font-size:14px;line-height:1.7}
textarea{min-height:96px;font:14px/1.5 monospace;resize:vertical}
.section-svg{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:5px;background:#fff;margin:14px 0 4px}
.section-figure{margin:22px 0}
.section-figure figcaption{font-size:13px;color:#526775}
#section-preview:empty{display:none}

fieldset{min-width:0;border:1px solid var(--line);padding:18px;margin:16px 0}legend{font-size:14px;font-weight:700;padding:0 8px}.check-label{display:flex;gap:12px;align-items:center}.check-label input{width:22px;height:22px;margin:0}.chart-controls{margin-top:30px;padding:24px;border:1px solid var(--line);background:#f5f8f9}.chart-controls .file-button{max-width:340px}.chart-title{display:flex;gap:18px;align-items:center;padding-bottom:14px;border-bottom:2px solid #172c37}.chart-title img,.report-logo{max-width:150px;max-height:65px;object-fit:contain}.report-logo{float:right;margin:0 0 12px 18px}.chart-title p{font-size:12px;line-height:1.4;margin:4px 0}.chart-title h2{font-size:20px;overflow-wrap:anywhere}.chart-sheet{background:#fff;padding:0;color:#172c37}.chart-notes p{font:12px/1.4 Arial;margin:6px 0}.chart-notes .inch-check{width:1in;border-bottom:2px solid #172c37;font:10px Arial;text-align:center;margin:6px 0;padding-bottom:4px}.export-credit{font:10px/1.4 Arial!important;color:#526775}.chart-notes{padding-top:8px}#chart-error:not(:empty){padding:12px;background:#fff0e9;color:#822b18}#chart-sheet-preview{margin-top:22px}.actions{flex-wrap:wrap}@media(max-width:520px){.chart-controls{padding:16px}.chart-title{align-items:flex-start;flex-direction:column}.chart-controls .fields{grid-template-columns:1fr}}@media print{.chart-title{height:.8in;padding-bottom:.08in;margin-bottom:.08in;flex-direction:row}.chart-title img{max-height:.65in;max-width:1.5in}.chart-title h2{font-size:15pt;margin:4px 0}.chart-title p{font-size:8pt}.chart-notes p{font-size:8pt;line-height:1.25;margin:4px 0}.chart-title,.section-figure{break-inside:avoid}.section-svg{border:0}}

#section-preview,#chart-sheet-preview{overflow:auto}#section-preview .section-svg{min-width:600px}#chart-sheet-preview .chart-sheet{min-width:720px}

.pile-sketch{max-width:300px;margin:0 auto}.pile-sketch svg{display:block;width:100%;height:auto}.pile-report{border-top:1px solid #bbb;padding:1rem 0;break-inside:avoid}#stockpile-workspace{margin-top:2rem;border-top:2px solid var(--line,#ccd5d0);padding-top:1.5rem}#stockpile-form details{margin:1rem 0}#stockpile-form summary{cursor:pointer;padding:.6rem 0;font-weight:600}

.surface-import{border:1px solid #cbd5cf;padding:1rem;border-radius:8px}.surface-imports{align-items:start}.surface-plan svg{width:100%;height:auto;display:block;border:1px solid #cbd5cf}#surface-section-form{margin-top:2rem}#surface-summary article{border-bottom:1px solid #cbd5cf;padding:.75rem 0}#surface-summary p{overflow-wrap:anywhere}#surfaces .check-label{display:flex;gap:.7rem;align-items:flex-start}#surfaces input[type=checkbox]{width:auto;min-width:20px;margin-top:.2rem}

#design-check-workspace{margin:2rem 0;padding:1.5rem 0;border-top:2px solid var(--line);border-bottom:1px solid var(--line)}#design-check-workspace p,.hint{overflow-wrap:anywhere}#design-check-workspace [data-saved] article{padding:1rem 0;border-bottom:1px solid var(--line)}#design-check-workspace [data-status]:not(:empty){padding:12px;background:#eef3f5}#design-check-workspace [data-actions]{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}@media(max-width:520px){#design-check-workspace .fields{grid-template-columns:1fr}}@media print{#print-sheet .table-wrap{overflow:visible}#print-sheet thead{display:table-header-group}#print-sheet .hint{overflow-wrap:anywhere}}

.tool-feedback{margin-top:36px;padding:22px 0;border-top:1px solid var(--line)}.tool-feedback h2{margin-top:0}.tool-feedback .hint{font-size:12px;overflow-wrap:anywhere}.tool-feedback [role=status]:empty{display:none}.tool-feedback [role=status]{font-size:14px;color:#165779}.tool-feedback button:disabled{opacity:.6}

.workspace>nav{overflow-x:auto}.workspace>nav .tab{flex:0 0 auto;white-space:nowrap}.daily-row{padding:16px;margin:12px 0;background:#f1f5f6;border:1px solid var(--line)}#daily details{border-top:1px solid var(--line);padding:12px 0}#daily summary{min-height:44px;font-weight:bold;line-height:1.5}#daily textarea{font:16px/1.5 Arial;min-height:70px}#daily [data-status]:not(:empty){padding:12px;background:#edf5fb}#daily [data-preview]:not(:empty){padding:24px;border:1px solid var(--line);margin:20px 0}.daily-note{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.daily-photo{margin:20px 0}.daily-photo img{max-width:100%;max-height:360px;object-fit:contain}.daily-photo figcaption{font-size:13px;overflow-wrap:anywhere}.daily-photo-edit{margin:16px 0}.daily-photo-edit img{max-width:200px;max-height:140px}.daily-export{border-top:2px solid var(--line);padding:20px 0}#daily [data-saved] article{padding:16px 0;border-bottom:1px solid var(--line)}#daily [data-logo]{min-height:70px;display:flex;align-items:center}#daily [data-logo] img{float:none;margin:0}@media(max-width:600px){#daily .fields{grid-template-columns:1fr}#daily [data-preview]:not(:empty){padding:14px}.daily-row{padding:12px}}

.request-page form{max-width:760px}.request-page textarea{font:16px/1.6 Arial;resize:vertical}.request-page summary{padding:12px 0;min-height:44px}.request-page #request-review{margin-top:32px;padding-top:24px;border-top:2px solid var(--line)}.request-page #request-text{font:14px/1.6 monospace;background:#f6f8f9}.request-page #request-status:not(:empty){padding:14px;border-left:3px solid #3981b1;background:#edf5fb}.request-page .actions a{min-height:46px}@media(max-width:600px){.request-page .fields{grid-template-columns:1fr}}
