/* Shared MSSA desktop appearance; calculator-specific charts stay in styles.css. */
:root{font-family:"Segoe UI",Arial,sans-serif;--radius:12px;--dark:#153e49;--bg:#f3f6f7;--border:#dbe4e7}
body{font-size:14px;background:var(--bg);color:#213d48}.page{max-width:none;padding:0;min-height:100vh}.app-sidebar{background:var(--dark);color:white;padding:28px 18px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;overflow-y:auto;z-index:2}.sidebar-brand{background:white;padding:16px 12px;border-radius:10px;margin:0 4px 36px}.sidebar-brand img{width:180px;max-width:100%;height:auto;display:block}.sidebar-brand>span{font-size:9px;letter-spacing:1.7px;color:var(--teal);display:block;margin-top:9px}.sidebar-label{font-size:10px;color:#8db3be;letter-spacing:2px;margin:0 14px 12px}.app-sidebar nav button{display:flex;gap:12px;align-items:center;width:100%;border:0;border-radius:7px;background:transparent;color:#c7dde3;text-align:left;margin:3px 0;padding:13px 12px;font-size:14px;font-weight:500}.app-sidebar nav button:hover{background:#255562}.app-sidebar nav button.active{background:var(--lime);color:var(--dark);font-weight:700}.num{font-size:11px;border:1px solid currentColor;border-radius:5px;width:23px;height:23px;display:grid;place-items:center;opacity:.8}.side-bottom{margin-top:auto;padding:20px 10px 0;font-size:11px;color:#94b5be;line-height:1.6}main{padding:30px 40px}.app-header{display:flex;justify-content:space-between;align-items:center;gap:24px}.app-eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted)}h1{font-size:29px;margin:7px 0 22px;letter-spacing:-.7px;font-weight:700;line-height:normal}.actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.button,.text-button{border:1px solid #cbd9de;background:white;border-radius:7px;padding:10px 15px;cursor:pointer;color:var(--dark);font-size:14px;font-weight:600;text-decoration:none;line-height:1.4}.button:hover,.text-button:hover{border-color:var(--teal);background:#eaf2f3;text-decoration:none}.button.primary{background:var(--teal);border-color:var(--teal);color:white}.button.primary:hover{background:var(--dark)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a9cbd5;outline-offset:2px}.project-strip{display:flex;justify-content:space-between;align-items:center;gap:16px;border-block:1px solid var(--border);padding:14px 0;margin-bottom:24px}.project-strip strong{font-size:14px}.project-strip span{font-size:12px;color:var(--muted)}.view-intro{color:var(--muted);line-height:1.66;margin:0 0 22px}.workspace{display:block}.panel{border-radius:12px;box-shadow:0 2px 3px #14384603}.inputs-panel{padding:24px}.panel-heading{margin-bottom:20px;display:block}.panel-heading h2{font-size:17px;max-width:none;margin:0;font-weight:700;letter-spacing:normal}.sample-note{font-size:12px;margin:0 0 20px}.inputs-panel form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}.partner-field,.period-control,.input-divider,.checkbox-label{grid-column:1/-1}.field{margin:0;min-width:0}.field-label,.period-control legend{font-size:12px;color:var(--muted);font-weight:600;margin-bottom:7px}.optional{font-size:11px}.period-control{margin:0}.segments{max-width:450px;background:#e9f1f3}.segments span{font-size:12px}.segments input:checked+span{background:var(--lime);color:var(--dark)}input[type=text]{padding:11px 12px;border:1px solid #ccdade;border-radius:6px;background:white;font-size:14px;color:#203b45;min-height:42px}.input-unit input{padding-right:95px;font-size:16px;min-height:44px;letter-spacing:normal}.input-unit>span{font-size:12px}.proposed-input input{background:white;border-color:#ccdade}.input-divider{margin:4px 0 0;padding-top:18px;font-size:11px;letter-spacing:1px}.checkbox-label{margin:0;font-size:12px}.field-error{font-size:12px}.input-note p{font-size:12px}.data-actions{display:flex;justify-content:flex-end;margin-top:24px}.method{margin:20px 0;padding:24px;background:white;gap:24px}.method h3{font-size:17px}.method>div>p,.formulas p{font-size:12px}.results-heading .section-number{display:none}.results-heading h2{font-size:22px}.kpi-top{font-size:12px}.kpi p,.chart-heading p,.bar-name,.bar-value,.cost-per-pallet span,.cost-per-pallet strong{font-size:12px}h3{font-size:17px}table{font-size:13px}th{font-size:12px}.table-footnote{font-size:11px}.app-footer{margin-top:25px;padding:16px 0;border-top:1px solid var(--border);font-size:11px;color:var(--muted);display:flex;justify-content:space-between}.results{min-width:0}
body[data-view=data] #present-button,body[data-view=data] #print-button,body[data-view=data] #pdf-download-panel,body[data-view=results] #data-view,body[data-view=results] #method-section,body[data-view=results] #sample-button{display:none!important}
body.presenting .app-sidebar,body.presenting .project-strip,body.presenting .view-intro{display:none}body.presenting main{margin-left:0;width:100%}body.presenting h1{font-size:29px}
@media(max-width:1100px){main{padding:24px}.app-header{align-items:flex-start;flex-wrap:wrap;gap:0}.actions{justify-content:flex-start;margin-bottom:20px}.project-strip{align-items:flex-start;flex-direction:column;gap:6px}}
@media(max-width:760px){.app-sidebar{position:static;padding:18px;overflow:visible}.sidebar-brand{max-width:240px;margin:0 0 18px}.sidebar-label,.side-bottom{display:none}.app-sidebar nav{display:flex;gap:8px}.app-sidebar nav button{margin:0;flex:1}.page{display:block}main{padding:22px 16px}.inputs-panel form{grid-template-columns:1fr}.partner-field,.period-control,.input-divider,.checkbox-label{grid-column:auto}.inputs-panel{padding:20px}.actions{gap:7px}.button,.text-button{font-size:12px;padding:10px 12px}.method{grid-template-columns:1fr}.app-footer{flex-wrap:wrap}}
@media print{.app-sidebar,.app-header,.project-strip,.view-intro,.data-actions{display:none!important}main,body.presenting main{margin:0;padding:0;width:100%}body[data-view] #data-view,body[data-view] #results-view,body[data-view] #method-section{display:block!important}.inputs-panel form{grid-template-columns:repeat(3,1fr)}.input-unit input{font-size:13px;min-height:34px}.field-label{font-size:9px}.method{display:grid!important}.app-footer{display:flex!important}}
/* Three-step workflow and A4 print preview. */
body[data-view=data] #preview-view,body[data-view=results] #preview-view,body[data-view=preview] #data-view,body[data-view=preview] #results-view,body[data-view=preview] #method-section{display:none!important}
body[data-view] #print-button{display:inline-flex!important}
.preview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}.preview-toolbar .hint{font-size:12px;color:var(--muted);line-height:1.6;max-width:660px}.preview-toolbar button{flex-shrink:0}.preview-container{background:#dfe7eb;padding:25px;overflow:auto;border-radius:10px}#report-document{display:block;width:210mm;max-width:100%;height:auto;margin:auto;background:white;box-shadow:0 3px 15px #1232}
@media(max-width:760px){.app-sidebar nav{flex-wrap:wrap}.app-sidebar nav button{min-width:140px}.preview-toolbar{align-items:flex-start;flex-direction:column}.preview-container{padding:12px}}
@media print{@page{size:A4 portrait;margin:0}html,body,.page,main{margin:0!important;padding:0!important;background:white!important;width:100%!important}body[data-view] #data-view,body[data-view] #results-view,body[data-view] #method-section,.workspace,.app-footer,.preview-toolbar,#preview-error,#toast{display:none!important}body[data-view] #preview-view{display:block!important}.preview-container{padding:0!important;margin:0!important;border-radius:0;background:white;overflow:visible}#report-document{width:210mm!important;height:297mm!important;max-width:none!important;box-shadow:none;margin:0;break-inside:avoid;display:block}#preview-paper[hidden]{display:none!important}}

.side-bottom{display:grid;gap:8px}.side-bottom button{background:transparent;color:#c7dde3;border:1px solid #49707b;border-radius:7px;padding:10px 12px;margin-top:10px;font:600 12px "Segoe UI",Arial,sans-serif;cursor:pointer}
.extra-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;padding:18px;background:#f3f6f7;border-radius:7px}.extra-grid .hint{margin:0;align-self:end}.field label{font-size:12px;color:var(--muted);font-weight:600}.field select,.field input[type=date]{width:100%;padding:11px 12px;border:1px solid #ccdade;border-radius:6px;background:white;color:#203b45;font:inherit}.hint{font-size:12px;line-height:1.6;color:var(--muted)}@media(max-width:760px){.extra-grid{grid-template-columns:1fr}}

#view-intro:empty{display:none}

.epr-highlight{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;margin-bottom:20px;border:1px solid var(--lime);border-radius:12px;background:#f3f5d9;color:var(--dark)}.epr-highlight b{display:block;font-size:28px;margin-top:7px}.epr-highlight p{font-size:13px;line-height:1.6}.epr-highlight.negative{color:var(--red);background:#fff0e8;border-color:#ead0c5}@media(max-width:760px){.epr-highlight{flex-wrap:wrap}}

#calculator-form [hidden]{display:none!important} .bar-name{overflow-wrap:anywhere;white-space:normal} [data-film-name]{overflow-wrap:anywhere} #current-name,#proposed-name{margin-top:8px}

#report-document svg{display:block;width:100%;height:auto;user-select:text;-webkit-user-select:text}#report-document text{user-select:text;-webkit-user-select:text}@media print{#report-document svg{width:210mm!important;height:297mm!important;display:block;print-color-adjust:exact;-webkit-print-color-adjust:exact}}

#report-note{box-sizing:border-box;width:100%;min-height:70px;resize:vertical;overflow:hidden;font:inherit;padding:12px;border:1px solid var(--line);border-radius:8px}#result-note{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}#result-note[hidden]{display:none}#result-note-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}#report-document{height:auto!important}#report-document svg+svg{margin-top:24px}@media print{#report-document{height:auto!important}#report-document svg{break-after:page;page-break-after:always;break-inside:avoid}#report-document svg+svg{margin-top:0}#report-document svg:last-child{break-after:auto;page-break-after:auto}}

#result-note{background:#eaf2f3;border:0;border-left:4px solid #d8e360;padding:12px 16px;margin-top:20px}#result-note h3{margin:0 0 8px}#result-note-text{margin:0}#report-note{background:#eaf2f3;border-left:4px solid #d8e360;border-radius:0}

/* Results are presented exclusively in the printable PDF preview. */
#results-view{display:none!important}
/* Four independent input cards, with aligned film columns. */
body[data-view=data]{background:#e6eff3}
#data-view.inputs-panel{padding:0;background:transparent;border:0;box-shadow:none}
#calculator-form{display:flex;flex-direction:column;gap:24px}
.form-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;padding:28px;background:#fff;border:1px solid #d8e5e9;border-radius:18px;box-shadow:0 6px 22px #153e4909}
.form-card>h2{grid-column:1/-1;font-size:20px;color:#153e49;margin:0 0 4px;padding-bottom:16px;border-bottom:1px solid #e0eaed}
.film-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
.three-films .film-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.film-grid .hint,.full-row{grid-column:1/-1}.film-actions{grid-column:1/-1}.price-column{display:flex;flex-direction:column;gap:14px;min-width:0}.price-column label{font-size:12px}.price-column input[type=checkbox]{width:auto;min-height:0}.price-column .check-row{display:flex;gap:8px;align-items:center}
#third-name{margin-top:8px}#third-error:empty{display:none}#third-error{grid-column:1/-1}
@media(max-width:1050px){.film-grid,.three-films .film-grid{gap:16px 12px}.form-card{padding:22px}}
@media(max-width:760px){.form-card,.film-grid,.three-films .film-grid{grid-template-columns:1fr}.form-card{padding:20px;gap:18px}.form-card>h2{font-size:18px}}

/* Uniform field baselines within each film row. */
#film-names>.field,#film-masses>.field{display:flex;flex-direction:column}
#film-names>.field>label,#film-masses>.field>label{min-height:20px;line-height:20px;margin:0 0 7px}
#film-prices{align-items:start}
.price-column{display:grid;grid-template-rows:minmax(36px,auto) auto;gap:8px}
.price-column>.checkbox-label,.price-column>.check-row,.price-baseline{min-height:36px;margin:0;display:flex;align-items:center;gap:8px;line-height:18px;font-size:12px;color:#607782}
.price-column>.field>label{display:block;min-height:36px;line-height:18px;margin:0 0 7px}
.price-column .input-unit input{min-height:44px}
.form-card>h2{max-width:none;width:100%}
@media(min-width:761px){#film-prices{grid-template-rows:auto auto;row-gap:8px}.price-column{grid-row:span 2;grid-template-rows:subgrid}}
