:root{--bg:#f4f7f8;--card:#fff;--ink:#12263a;--muted:#6c7b88;--line:#e3e9ed;--green:#18a66a;--green2:#e9f8f1;--nav:#0e1c27;--accent:#15a36c;--blue:#2d6cdf}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--nav);color:#dbe6ed;padding:24px 16px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 28px}.brandmark{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#16b77b,#0e7e57);display:grid;place-items:center;color:#fff;font-weight:800}.brand strong{display:block;color:#fff;font-size:17px}.brand small{display:block;color:#8194a2;font-size:11px;margin-top:2px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{color:#9eb0bc;text-decoration:none;padding:12px 13px;border-radius:10px;display:flex;gap:12px;align-items:center;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:#182c3a;color:#fff}.sidefoot{margin-top:auto;border-top:1px solid #203442;padding:18px 10px 4px;font-size:12px;color:#8ea3b1}.status-dot{display:inline-block;width:8px;height:8px;background:#27d17f;border-radius:50%;margin-right:7px;box-shadow:0 0 0 4px rgba(39,209,127,.08)}main{min-width:0}header{height:90px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px}header h1{font-size:23px;margin:0 0 4px}header p{margin:0;color:var(--muted);font-size:13px}.user{width:40px;height:40px;border-radius:12px;background:#eff3f6;display:grid;place-items:center;font-weight:700}.content{padding:28px 32px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:15px;box-shadow:0 5px 20px rgba(23,47,65,.035);overflow:hidden}.metric{padding:20px}.metric span{font-size:12px;color:var(--muted);font-weight:600}.metric strong{font-size:26px;display:block;margin-top:8px}.metric small{color:#8997a3}.cardhead{padding:20px 22px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.card h2,.cardhead h2{font-size:17px;margin:0}.cardhead p{font-size:12px;color:var(--muted);margin:5px 0 0}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th{background:#f8fafb;color:#72818d;text-transform:uppercase;font-size:10px;letter-spacing:.05em;text-align:left;padding:11px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:14px 16px;border-bottom:1px solid #edf1f3;font-size:13px;vertical-align:middle}tbody tr:hover{background:#fbfcfd}.muted{display:block;color:#91a0ab;margin-top:3px;font-size:11px}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2f5;font-size:10px;font-weight:700;text-transform:uppercase}.badge.active,.badge.confirmed{background:#e7f8ef;color:#07804d}.badge.blocked{background:#fdecec;color:#be3434}.badge.draft{background:#eef2f5;color:#61707b}.badge.negotiation{background:#fff5df;color:#9a6800}.badge.completed{background:#e9efff;color:#365bc9}.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:650;font-size:12px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary{background:var(--accent);color:white}.dark{background:var(--nav);color:#fff}.ghost{background:#f3f6f7;color:var(--ink)}.small{padding:7px 10px}.link{color:#147c58;text-decoration:none;font-weight:650}.empty{text-align:center;color:var(--muted);padding:35px}.grid2{display:grid;grid-template-columns:2fr 1fr;gap:18px}.grid2>.card:last-child{padding:22px}.form{display:grid;gap:14px;margin-top:18px}.form label,.statusselect label{font-size:11px;color:#60717e;font-weight:650;display:grid;gap:6px}.form input,.form select,.form textarea,.statusselect select{width:100%;border:1px solid #dbe3e8;border-radius:9px;padding:10px 11px;font:inherit;color:var(--ink);background:#fff;outline:none}.form input:focus,.form select:focus,.form textarea:focus{border-color:#4bb68d;box-shadow:0 0 0 3px rgba(75,182,141,.1)}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.productgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 20px 20px}.product{border:1px solid var(--line);padding:16px;border-radius:12px;display:flex;gap:14px}.producticon{width:38px;height:38px;background:var(--green2);color:var(--green);border-radius:10px;display:grid;place-items:center}.product h3{font-size:14px;margin:0}.product p{margin:4px 0;color:var(--muted);font-size:12px}.product small{color:#8b9aa5}.mt{margin-top:18px;padding:22px}.programform{max-width:950px}.programhero{border-radius:17px;padding:25px;background:linear-gradient(120deg,#102532,#173f42);color:white;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;box-shadow:0 14px 35px rgba(12,44,47,.12)}.programhero .eyebrow{font-size:10px;letter-spacing:.13em;color:#72d9b4;font-weight:800}.programhero h2{font-size:24px;margin:6px 0}.programhero p{color:#b8c9cf;margin:0;font-size:13px}.statusselect{display:flex;align-items:end;gap:9px}.statusselect label{min-width:150px}.sticky{max-height:60vh}.sticky thead th{position:sticky;top:0;z-index:2}.weektable td{padding:9px 12px}.cellinput,.cellselect{border:1px solid #dce4e9;background:#fff;border-radius:7px;padding:8px 9px;font:inherit;min-width:100px}.cellinput{width:120px}.cellselect{min-width:115px}.money{display:flex;align-items:center;gap:6px}.money span{font-size:10px;color:#788894}.rowvalue{font-weight:700;white-space:nowrap}@media(max-width:1050px){.cards{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.shell{grid-template-columns:78px 1fr}.sidebar .brand div:last-child,.sidebar nav span,.sidefoot{display:none}.sidebar nav a{justify-content:center}.brand{padding-left:2px}.productgrid{grid-template-columns:1fr}}@media(max-width:700px){header,.content{padding-left:16px;padding-right:16px}.cards{grid-template-columns:1fr}.shell{grid-template-columns:1fr}.sidebar{display:none}.row,.row3{grid-template-columns:1fr}.programhero{align-items:flex-start;gap:18px;flex-direction:column}.cardhead{align-items:flex-start;flex-direction:column}.statusselect{width:100%;flex-wrap:wrap}}
.heroactions{display:flex;gap:9px;align-items:center}.light{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.2)}.ekcol{display:none!important}.ekcol.ek-visible{display:table-cell!important}.internal-tag{font-size:8px;background:#fff1cf;color:#9a6800;border-radius:999px;padding:3px 5px;margin-left:4px}.internal-hint{margin:0 22px 14px;padding:12px 14px;border:1px solid #f1d89b;background:#fff9eb;border-radius:10px;font-size:12px;color:#705817;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.internal-hint[hidden]{display:none}.internal-hint span{color:#8b7438;flex:1}.internal-active{background:#fff3d4;color:#805c00}.marginvalue{font-weight:700;color:#177553}.modal{border:0;padding:0;background:transparent;max-width:none;width:100%;height:100%;margin:0}.modal::backdrop{background:rgba(5,18,27,.62);backdrop-filter:blur(3px)}.modalbox{width:min(760px,calc(100% - 32px));max-height:calc(100vh - 40px);overflow:auto;margin:20px auto;background:#fff;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.28)}.modalhead{padding:24px 26px 18px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.modalhead h2{margin:5px 0 5px;font-size:21px}.modalhead p{margin:0;color:var(--muted);font-size:12px;max-width:620px}.darkeye{color:var(--green)!important}.iconbtn{border:0;background:#f1f4f6;width:34px;height:34px;border-radius:9px;font-size:22px;cursor:pointer;color:#536471}.modalform{padding:22px 26px;margin:0}.modalactions{padding:16px 26px 24px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px}
.splitcell{min-width:210px}.splitbtn{background:#f4f8f6;border:1px solid #d9e8e1;color:var(--ink);padding:7px 10px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;max-width:240px}.splitbtn:hover{border-color:#9bcdb8;background:#edf8f3}.splitbtn-title{font-size:10px;font-weight:800;color:#13845c;text-transform:uppercase;letter-spacing:.04em}.split-summary{font-size:11px;color:#7b8b95;white-space:normal;text-align:left;line-height:1.35}.split-summary.has-split{color:#344d59}.splitmodal{width:min(720px,calc(100% - 32px))}.splitcontent{padding:22px 26px}.splithead,.splitrow{display:grid;grid-template-columns:2fr 1fr 1fr 38px;gap:10px;align-items:center}.splithead{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#7f8d97;font-weight:750;padding:0 2px 8px}.splitrow{margin-bottom:9px}.splitrow input{border:1px solid #dbe3e8;border-radius:9px;padding:10px 11px;font:inherit;color:var(--ink);width:100%}.splitrow input:focus{outline:none;border-color:#4bb68d;box-shadow:0 0 0 3px rgba(75,182,141,.1)}.addsplit{margin-top:8px}.splittotals{margin-top:18px;background:#f7faf9;border:1px solid #e1ebe7;border-radius:12px;padding:14px;display:grid;grid-template-columns:150px 150px 1fr;gap:18px;align-items:center}.splittotals span{display:block;font-size:10px;color:#71818c;text-transform:uppercase;font-weight:700}.splittotals strong{display:block;margin-top:4px;font-size:17px}.splitwarning{font-size:11px;color:#9a6800}.splitwarning.ok{color:#11835a}@media(max-width:700px){.splithead,.splitrow{grid-template-columns:1.5fr 1fr 1fr 38px}.splittotals{grid-template-columns:1fr 1fr}.splitwarning{grid-column:1/-1}}

.splithead.v6,.splitrow.v6{grid-template-columns:minmax(260px,2.4fr) .7fr .9fr 1.2fr 42px}.split-calc{display:flex;flex-direction:column;gap:2px}.split-calc small{color:var(--muted)}

.tablelink{color:inherit;text-decoration:none}.tablelink:hover{text-decoration:underline}
.dangertext{color:#b42318!important}.creditbar{height:12px;background:#e8edf1;border-radius:999px;overflow:hidden;margin:-6px 0 18px}.creditbar-fill{height:100%;background:#263a4d;border-radius:999px}
.alert{padding:14px 18px;border-radius:12px;margin-bottom:18px}.alert.danger{background:#fff1f0;color:#8a1c14;border:1px solid #ffd4cf}
.emptycell{text-align:center;color:var(--muted);padding:28px!important}.customerhero{margin-bottom:18px}.customer-detail-grid{align-items:start}.programlist{display:flex;flex-direction:column;gap:8px}.programrow{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;border:1px solid var(--border);border-radius:12px;text-decoration:none;color:inherit}.programrow div{display:flex;flex-direction:column;gap:3px}.programrow span{font-size:12px;color:var(--muted)}
.splitmodal-wide{width:min(1500px,96vw);max-width:1500px}.splithead.v7,.splitrow.v7{grid-template-columns:minmax(220px,2fr) 70px 80px 110px 105px 90px 105px 90px 120px 120px 40px;min-width:1250px}.splitcontent{overflow-x:auto}.splithead.v7{font-size:11px}.splitrow.v7 select,.splitrow.v7 input{min-width:0}
.split-ek{display:none!important}.split-ek.split-ek-visible{display:block!important}.splitrow .split-ek.split-ek-visible{display:block!important}
.badge.invoice{background:#fff4e5;color:#a15c00}.badge.payment{background:#e9f7ef;color:#137333}.badge.credit_note{background:#eef2ff;color:#3843a4}

.productbody{flex:1}.product-edit-btn{margin-top:12px}

.weekboard{background:#f5f7f9;border:1px solid var(--border);border-radius:18px;padding:18px;margin:20px 0}.weekboard-head,.containerhead{display:flex;justify-content:space-between;align-items:center;gap:15px}.containercard{background:#fff;border:1px solid var(--border);border-radius:14px;margin-top:14px;overflow:hidden}.containerhead{padding:15px;border-bottom:1px solid var(--border)}.containerhead h3,.containerhead p{margin:0}.positiontable{min-width:1350px}.positiontable th,.positiontable td{white-space:nowrap}.totalrow{background:#eef3f6}.emptyweek{text-align:center;padding:22px;color:var(--muted)}.toolbar-right{display:flex;justify-content:flex-end}.position-modal{width:min(850px,94vw)}.price-panels{display:grid;grid-template-columns:1fr 1fr;gap:14px}.price-panel{padding:14px;border:1px solid var(--border);border-radius:12px}.internal-panel{background:#fff8e8}.ekcol{display:none}.ekcol.ek-visible{display:table-cell}

/* v10: compact calendar-week dropdowns */
.weekdropdown{padding:0!important;overflow:hidden;background:#fff!important;margin:12px 0!important}
.weekdropdown>summary{list-style:none}.weekdropdown>summary::-webkit-details-marker{display:none}
.weeksummary{display:grid;grid-template-columns:14px minmax(280px,1fr) auto 28px;align-items:center;gap:15px;padding:17px 20px;cursor:pointer;user-select:none}
.weeksummary:hover{background:#f8fafb}.weekstatus{width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 4px rgba(0,0,0,.035)}
.status-red{background:#dc3c30}.status-green{background:#18a56f}
.weeksummary-main{display:flex;align-items:center;gap:18px}.weeksummary-main .eyebrow{margin:0;min-width:92px}.weeksummary-main strong{font-size:17px;color:#172b3e}
.weeksummary-state{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px}.state-text{font-weight:700}.state-text.filled{color:#13865d}.state-text.empty{color:#c7352c}
.weekchevron{font-size:23px;line-height:1;color:#71808e;transition:transform .2s ease}.weekdropdown[open] .weekchevron{transform:rotate(180deg)}
.weekdropdown-body{border-top:1px solid var(--border);padding:16px;background:#f5f7f9}.weekboard-actions{display:flex;justify-content:flex-end;margin-bottom:10px}
.weekdropdown .containercard{margin-top:10px}.weekdropdown .emptyweek{background:#fff;border:1px dashed #d6dde3;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:12px;padding:22px}
.weekdropdown .emptyweek strong{color:#c7352c}.weekdropdown .emptyweek p{margin:3px 0 0}.empty-dot{width:10px;height:10px;border-radius:50%;background:#dc3c30}
.week-filled{border-left:4px solid #18a56f!important}.week-empty{border-left:4px solid #dc3c30!important}
@media(max-width:800px){.weeksummary{grid-template-columns:12px 1fr 24px}.weeksummary-state{display:none}.weeksummary-main{display:block}.weeksummary-main strong{display:block;margin-top:5px;font-size:15px}}

/* v11 calendar week accordion */
.weeks-list{display:flex;flex-direction:column;gap:12px;margin-top:18px}
.weekcard{background:#fff;border:1px solid #dfe6eb;border-radius:14px;overflow:hidden;box-shadow:0 2px 8px rgba(17,34,51,.04)}
.weekcard.is-empty{border-left:5px solid #df3d36}.weekcard.is-filled{border-left:5px solid #19a66f}
.weekcard-toggle{width:100%;border:0;background:#fff;display:grid;grid-template-columns:14px 125px 250px 1fr 28px;align-items:center;gap:14px;padding:18px 20px;cursor:pointer;text-align:left;font:inherit;color:inherit}
.weekcard-toggle:hover{background:#f8fafb}
.weekcard-status{width:12px;height:12px;border-radius:50%;display:block}.weekcard-status.red{background:#df3d36;box-shadow:0 0 0 4px rgba(223,61,54,.10)}.weekcard-status.green{background:#19a66f;box-shadow:0 0 0 4px rgba(25,166,111,.10)}
.weekcard-kw{font-weight:800;font-size:16px;color:#173047}.weekcard-date{font-weight:650;color:#22394e}
.weekcard-summary{justify-self:end;display:flex;align-items:center;gap:12px;font-size:13px}.week-state{font-weight:800}.green-text{color:#14895e}.red-text{color:#c93630}.week-meta{background:#eef3f6;color:#536474;border-radius:999px;padding:5px 9px}
.weekcard-chevron{font-size:22px;color:#6f7f8d;transition:transform .18s ease;text-align:center}.weekcard-chevron.open{transform:rotate(180deg)}
.weekcard-body{display:none;border-top:1px solid #e3e9ed;background:#f6f8fa;padding:16px}.weekcard-body.open{display:block}.weekcard-actions{display:flex;justify-content:flex-end;margin-bottom:10px}
.emptyweek-v11{background:#fff;border:1px dashed #d7dee4;border-radius:12px;padding:22px;display:flex;align-items:center;justify-content:center;gap:12px}.emptyweek-v11 strong{color:#c93630}.emptyweek-v11 p{margin:3px 0 0;color:#71808e}.emptyweek-dot{width:10px;height:10px;background:#df3d36;border-radius:50%;flex:0 0 auto}
@media(max-width:950px){.weekcard-toggle{grid-template-columns:14px 105px 1fr 28px}.weekcard-summary{grid-column:2/4;justify-self:start}.weekcard-date{font-size:14px}}

/* v12 - native SeasonFlow KW cards */
.v12-weeks{gap:14px;margin-top:20px}.kw-card{background:#fff;border:1px solid #dde5ea;border-radius:16px;overflow:hidden;box-shadow:0 3px 12px rgba(19,39,57,.055);transition:.18s ease}.kw-card:hover{box-shadow:0 6px 18px rgba(19,39,57,.08)}
.kw-head{appearance:none;-webkit-appearance:none;border:0!important;outline:0;background:#fff!important;width:100%;min-height:82px;padding:14px 18px;display:grid;grid-template-columns:24px 145px 260px minmax(360px,1fr) 86px 42px;gap:14px;align-items:center;text-align:left;color:#172b3e;font-family:inherit;cursor:pointer;border-radius:0!important;box-shadow:none!important}
.kw-head:hover{background:#fbfcfd!important}.kw-light{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.kw-light i{width:9px;height:9px;border-radius:50%;display:block}.kw-light.open{background:#fde9e7}.kw-light.open i{background:#dc3d36}.kw-light.ready{background:#e5f7ef}.kw-light.ready i{background:#17a66f}
.kw-id,.kw-period,.kw-stat{display:flex;flex-direction:column;gap:4px}.kw-id small,.kw-period small,.kw-stat small{font-size:10px;font-weight:800;letter-spacing:.09em;color:#8896a2}.kw-id b{font-size:18px;color:#173047}.kw-period b{font-size:15px;font-weight:700;color:#334b5f}
.kw-data{display:flex;align-items:center;justify-content:flex-end;gap:22px;min-width:0}.kw-stat b{font-size:14px;white-space:nowrap}.kw-stat.value b{color:#173047}.kw-empty-copy{font-size:14px;color:#8a98a4;font-weight:600}
.kw-badge{justify-self:end;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800}.kw-badge.open{background:#fff0ee;color:#c43730;border:1px solid #ffd9d5}.kw-badge.ready{background:#eaf8f2;color:#14895e;border:1px solid #cdeedf}
.kw-arrow{width:34px;height:34px;border-radius:10px;background:#f1f5f7;display:flex;align-items:center;justify-content:center}.kw-arrow svg{width:18px;height:18px;fill:none;stroke:#506477;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}.kw-card.expanded .kw-arrow svg{transform:rotate(180deg)}
.kw-card.kw-open{border-left:4px solid #dc3d36}.kw-card.kw-ready{border-left:4px solid #17a66f}.kw-body{display:none;background:#f5f8fa;border-top:1px solid #e2e8ec;padding:16px 18px 18px}.kw-body.show{display:block}.kw-body-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.kw-body-top>div{display:flex;flex-direction:column;gap:3px}.kw-body-top span{font-size:13px;color:#7d8d99}
.kw-body .containercard{margin-top:10px}.kw-body .containercard:first-of-type{margin-top:0}
@media(max-width:1280px){.kw-head{grid-template-columns:22px 130px 220px 1fr 82px 38px}.kw-data{gap:12px}.kw-stat:nth-child(3),.kw-stat:nth-child(4){display:none}}
@media(max-width:900px){.kw-head{grid-template-columns:18px 1fr 80px 36px;min-height:74px}.kw-period{grid-column:2}.kw-data{display:none}.kw-id{grid-column:2}.kw-badge{grid-column:3;grid-row:1/3}.kw-arrow{grid-column:4;grid-row:1/3}.kw-light{grid-column:1;grid-row:1/3}}

/* v13 container delete action */
.container-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.container-actions form{margin:0}
.delete-container{background:#fff;border:1px solid #f0c9c5;color:#b8322a;border-radius:10px;padding:9px 12px;font-weight:700;cursor:pointer}
.delete-container:hover{background:#fff2f0;border-color:#e8aaa4;color:#9e251f}

/* =========================================================
   SeasonFlow v15 brand system
   ========================================================= */
:root{
  --bg:#f4f7f7;--card:#ffffff;--ink:#0b2d4b;--muted:#70818e;--line:#dfe7e9;
  --green:#2b9a3a;--green2:#edf8ee;--nav:#07355f;--accent:#159f67;
  --blue:#0b5a9b;--yellow:#f5b51b;--orange:#f06a24;--red:#d84336;
}
body{background:linear-gradient(180deg,#f4f8f7 0%,#f7f9fa 100%);position:relative}
.app-watermark{position:fixed;right:2vw;bottom:-5vh;width:min(52vw,820px);height:55vh;background:url('/static/seasonflow_logo.png') center/contain no-repeat;opacity:.028;filter:saturate(.8);pointer-events:none;z-index:0}
.shell{position:relative;z-index:1}
.sidebar{background:linear-gradient(180deg,#062f56 0%,#073d68 58%,#0b4d62 100%);padding:18px 14px}
.brand-logo-wrap{padding:4px 3px 25px;display:block}.sidebar-logo{width:100%;max-width:205px;height:auto;display:block;filter:drop-shadow(0 5px 12px rgba(0,0,0,.15))}
.sidebar nav a{border:1px solid transparent}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.08);box-shadow:inset 3px 0 0 var(--yellow)}
.status-dot{background:#65d65d}.sidefoot{border-color:rgba(255,255,255,.13);color:#b9c9d2}
header{background:rgba(255,255,255,.92);backdrop-filter:blur(10px);height:94px}
.header-tools{display:flex;align-items:center;gap:18px}.language-select{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:750;color:#657784}.language-select select{border:1px solid #d7e1e5;border-radius:9px;padding:8px 30px 8px 10px;background:#fff;color:var(--ink);font:inherit}
.user-menu{display:flex;align-items:center;gap:9px;padding-left:14px;border-left:1px solid var(--line)}.user-avatar{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--green));display:grid;place-items:center;color:#fff;font-weight:800}.user-copy{display:flex;flex-direction:column;min-width:120px}.user-copy strong{font-size:12px}.user-copy small{font-size:10px;color:var(--muted);text-transform:capitalize}.logout-link{font-size:11px;color:#9b3e36;text-decoration:none;font-weight:700}
.primary{background:linear-gradient(135deg,#21a667,#118b58);box-shadow:0 5px 14px rgba(21,159,103,.15)}.primary:hover{filter:brightness(.97)}
.dark{background:linear-gradient(135deg,#083b70,#0b5b90)}.programhero{background:linear-gradient(120deg,#073b6d 0%,#095a7f 55%,#18864f 120%);box-shadow:0 15px 35px rgba(7,59,109,.15)}.programhero .eyebrow{color:#c6f09d}
.card{box-shadow:0 6px 22px rgba(17,47,68,.045)}.producticon{background:linear-gradient(145deg,#eef8e8,#fff5d8);color:#3c9b31}
.five-cards{grid-template-columns:repeat(5,minmax(0,1fr))}
.pdf-export-form{display:flex;align-items:flex-end;gap:7px;background:rgba(255,255,255,.08);padding:6px;border-radius:11px}.pdf-export-form label{display:grid;gap:3px;font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#c6d7df}.pdf-export-form select{border:1px solid rgba(255,255,255,.22);background:#fff;color:#14324a;border-radius:7px;padding:7px 8px}
.program-delete{background:rgba(190,47,36,.14);border:1px solid rgba(255,170,160,.45);color:#fff}.program-delete:hover{background:#b53a30}
.emptyweek-v15{padding:18px;background:#fff;border:1px dashed #d6e0e4;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted)}.emptyweek-v15 strong{color:#bf3c34}.emptyweek-v15 p{margin:3px 0 0}
.kw-card.kw-ready{border-left-color:#2ca15a}.kw-card.kw-open{border-left-color:#dc453b}.kw-light.ready i{background:#2ca15a}.kw-light.open i{background:#dc453b}.kw-badge.ready{background:#eaf8ef;color:#15844d;border-color:#c9ebd5}.kw-badge.open{background:#fff0ee;color:#c53c34;border-color:#f6d2ce}
.internal-hint{border-color:#f0d690;background:#fff9e9;color:#705817}.internal-panel{background:#fff9e9;border-color:#f0dfac}

/* User management */
.role-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#edf4fb;color:#174f7d;font-size:11px;font-weight:750}
.permissions-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}.permissions-grid label{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:9px!important;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fafcfc}.permissions-grid input{width:auto!important;margin-top:3px}.permissions-grid span{display:flex;flex-direction:column}.permissions-grid strong{font-size:11px;color:var(--ink)}.permissions-grid small{font-size:9px;color:#93a0a9}.toggleline{display:flex!important;align-items:center;gap:8px!important}.toggleline input{width:auto!important}.user-modal{width:min(900px,calc(100% - 32px))}.user-delete-form{padding:0 26px 24px}.user-delete-form .program-delete{color:#b8322a;border-color:#efc7c3;background:#fff5f4}.user-create-form{max-width:1050px}

/* Login */
.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,rgba(43,154,58,.15),transparent 30%),radial-gradient(circle at 80% 15%,rgba(245,181,27,.13),transparent 28%),linear-gradient(135deg,#062f56,#07527a 55%,#137148);padding:24px;position:relative;overflow:hidden}
.login-watermark{position:absolute;inset:0;background:url('/static/seasonflow_logo.png') center/70vw no-repeat;opacity:.045}
.login-card{position:relative;z-index:2;width:min(440px,100%);background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.5);border-radius:22px;padding:30px 34px 34px;box-shadow:0 30px 80px rgba(0,0,0,.24)}.login-logo{display:block;width:280px;max-width:100%;margin:0 auto 16px}.login-card h1{text-align:center;margin:0 0 6px;color:#09385f}.login-card>p{text-align:center;margin:0;color:var(--muted);font-size:13px}.login-error{margin-top:16px;padding:10px 12px;border-radius:9px;background:#fff0ee;color:#b2322a;font-size:12px}.login-btn{width:100%;margin-top:4px}

/* More responsive */
@media(max-width:1200px){.five-cards{grid-template-columns:repeat(3,1fr)}.header-tools{gap:8px}.user-copy{display:none}.language-select span{display:none}}
@media(max-width:800px){.permissions-grid{grid-template-columns:1fr}.five-cards{grid-template-columns:1fr 1fr}.pdf-export-form{flex-wrap:wrap}.heroactions{flex-wrap:wrap}}

.profile-link{text-decoration:none;color:inherit}.profile-link:hover strong{color:var(--blue)}.profile-card{padding:24px;max-width:760px}

/* =========================================================
   SeasonFlow v16 unified dialogs + header polish
   ========================================================= */

/* Unify ALL dialogs with the Verkaufsposition modal */
dialog.modal{
  padding:0;
  border:0;
  background:transparent;
  max-width:none;
  max-height:none;
  width:auto;
  height:auto;
}
dialog.modal::backdrop{
  background:rgba(7,29,43,.68);
  backdrop-filter:blur(5px);
}
.modalbox,
.user-modal,
.position-modal{
  width:min(980px,calc(100vw - 64px))!important;
  max-width:980px!important;
  max-height:calc(100vh - 64px)!important;
  overflow:auto!important;
  margin:auto!important;
  background:#fff!important;
  color:#0b2d4b!important;
  border:1px solid #dfe7e9!important;
  border-radius:24px!important;
  box-shadow:0 28px 80px rgba(4,29,47,.28)!important;
  padding:0!important;
}
.user-modal{width:min(1100px,calc(100vw - 64px))!important;max-width:1100px!important}
.modalhead{
  position:sticky;
  top:0;
  z-index:3;
  background:#fff!important;
  color:#0b2d4b!important;
  border-bottom:1px solid #dfe7e9!important;
  padding:28px 32px 24px!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:24px!important;
}
.modalhead h2{
  color:#0b2d4b!important;
  font-size:30px!important;
  line-height:1.12!important;
  margin:7px 0 6px!important;
}
.modalhead p{
  color:#748696!important;
  margin:0!important;
  font-size:14px!important;
}
.modalhead .darkeye{
  color:#239846!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
}
.modalform{
  padding:26px 32px 18px!important;
  background:#fff!important;
  color:#0b2d4b!important;
}
.modalform label,
.modalform .toggleline,
.permissions-title{
  color:#586d7e!important;
}
.modalform input,
.modalform select,
.modalform textarea{
  background:#fff!important;
  color:#0b2d4b!important;
  border:1px solid #cfdce3!important;
  border-radius:12px!important;
  min-height:46px!important;
}
.modalform input:focus,
.modalform select:focus,
.modalform textarea:focus{
  outline:none!important;
  border-color:#19a66f!important;
  box-shadow:0 0 0 3px rgba(25,166,111,.10)!important;
}
.modalactions{
  position:sticky;
  bottom:0;
  z-index:3;
  display:flex!important;
  justify-content:flex-end!important;
  gap:10px!important;
  padding:18px 32px 24px!important;
  background:#fff!important;
  border-top:1px solid #dfe7e9!important;
}
.iconbtn{
  width:44px!important;
  height:44px!important;
  border-radius:12px!important;
  border:0!important;
  background:#f1f5f7!important;
  color:#5a6c7a!important;
  font-size:25px!important;
  display:grid!important;
  place-items:center!important;
}
.iconbtn:hover{background:#e8eef1!important;color:#263e50!important}

/* User modal clarity */
.user-status-row{
  margin:6px 0 16px;
  padding:12px 14px;
  background:#f7faf9;
  border:1px solid #dfe7e9;
  border-radius:12px;
}
.permissions-section{
  margin-top:14px;
  padding:18px;
  background:#f7faf9;
  border:1px solid #dfe7e9;
  border-radius:16px;
}
.permissions-title{margin:0 0 12px;font-size:13px}
.permissions-grid{gap:10px!important}
.permissions-grid label{
  background:#fff!important;
  color:#0b2d4b!important;
  border:1px solid #dce5e9!important;
  box-shadow:none!important;
  padding:12px 14px!important;
}
.permissions-grid label:hover{
  border-color:#b9d9c7!important;
  background:#fbfefc!important;
}
.permissions-grid strong{color:#0b2d4b!important}
.permissions-grid small{color:#8a9aa5!important}
.user-delete-form{
  background:#fff!important;
  padding:0 32px 26px!important;
}

/* Sidebar logo: stronger contrast against dark nav */
.brand-logo-wrap{
  position:relative;
  margin:2px 2px 24px!important;
  padding:14px 12px!important;
  background:rgba(255,255,255,.96)!important;
  border-radius:18px!important;
  box-shadow:0 12px 30px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.22)!important;
  overflow:hidden;
}
.brand-logo-wrap::after{
  content:"";
  position:absolute;
  inset:auto 10% -18px 10%;
  height:28px;
  background:radial-gradient(ellipse,rgba(245,181,27,.28),transparent 70%);
  pointer-events:none;
}
.sidebar-logo{
  position:relative;
  z-index:1;
  width:100%!important;
  max-width:220px!important;
  margin:auto!important;
  filter:drop-shadow(0 4px 5px rgba(5,39,67,.18)) contrast(1.08) saturate(1.08)!important;
}

/* Logout as a clearly visible rounded control */
.logout-link.logout-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:0 15px!important;
  border:1px solid #efd0cc!important;
  border-radius:11px!important;
  background:#fff5f3!important;
  color:#a83a31!important;
  font-size:11px!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:0 2px 8px rgba(137,46,37,.05)!important;
  transition:.15s ease!important;
}
.logout-link.logout-button:hover{
  background:#ffe9e6!important;
  border-color:#e9b6b0!important;
  color:#8d2d26!important;
  transform:translateY(-1px);
}

/* Match language selector visual weight */
.language-select{
  padding:6px 7px 6px 10px!important;
  border:1px solid #dce5e9!important;
  border-radius:11px!important;
  background:#fff!important;
}
.language-select select{
  border:0!important;
  background:#f6f8f9!important;
  min-height:34px!important;
}

/* Small screens */
@media(max-width:900px){
  .modalbox,.user-modal,.position-modal{
    width:calc(100vw - 24px)!important;
    max-height:calc(100vh - 24px)!important;
    border-radius:18px!important;
  }
  .modalhead,.modalform,.modalactions{padding-left:20px!important;padding-right:20px!important}
  .modalhead h2{font-size:24px!important}
  .permissions-grid{grid-template-columns:1fr!important}
}

/* =========================================================
   SeasonFlow v17 — position editing + better user dialog size
   ========================================================= */

.row-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
}
.row-actions form{margin:0}
.edit-position-btn{
  min-width:82px;
  border-color:#d8e5e8!important;
}
.delete-position-btn{
  width:38px;
  min-width:38px;
  padding:0!important;
  color:#a83b33!important;
  border-color:#f0d1cd!important;
  background:#fff8f7!important;
}
.delete-position-btn:hover{
  background:#ffebe8!important;
  border-color:#eab8b2!important;
}

/* User dialog should feel like a dialog, not a full-screen page */
dialog.user-dialog{
  width:min(1080px,calc(100vw - 120px))!important;
  max-width:1080px!important;
  max-height:88vh!important;
  margin:auto!important;
  overflow:visible!important;
}
dialog.user-dialog .user-modal{
  width:100%!important;
  max-width:none!important;
  max-height:82vh!important;
  overflow:auto!important;
  border-radius:24px!important;
}
dialog.user-dialog .modalhead{
  border-radius:24px 24px 0 0!important;
}
dialog.user-dialog .modalactions{
  border-radius:0 0 24px 24px!important;
}
dialog.user-dialog .modalform{
  padding-top:22px!important;
  padding-bottom:16px!important;
}
dialog.user-dialog .permissions-grid{
  grid-template-columns:1fr 1fr!important;
}
dialog.user-dialog .permissions-grid label{
  min-height:58px;
}

/* Position edit uses the same balanced dialog footprint */
dialog.position-edit-dialog{
  width:min(980px,calc(100vw - 96px))!important;
  max-width:980px!important;
  max-height:90vh!important;
  margin:auto!important;
  overflow:visible!important;
}
dialog.position-edit-dialog .position-modal{
  width:100%!important;
  max-width:none!important;
  max-height:84vh!important;
}

@media(max-width:1100px){
  dialog.user-dialog{
    width:calc(100vw - 48px)!important;
  }
}
@media(max-width:760px){
  dialog.user-dialog,
  dialog.position-edit-dialog{
    width:calc(100vw - 24px)!important;
    max-height:94vh!important;
  }
  dialog.user-dialog .permissions-grid{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   SeasonFlow v18 — user dialog scroll/fixed header-footer fix
   ========================================================= */

/* Remove outer dialog artifacts/lines and let the card itself define the shape */
dialog.user-dialog{
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  width:min(1080px,calc(100vw - 96px))!important;
  max-width:1080px!important;
  max-height:none!important;
}
dialog.user-dialog::backdrop{
  background:rgba(7,29,43,.68)!important;
  backdrop-filter:blur(5px)!important;
}

/* One single rounded window */
dialog.user-dialog .user-modal{
  width:100%!important;
  height:min(820px,calc(100vh - 80px))!important;
  max-height:calc(100vh - 80px)!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
  border-radius:24px!important;
  border:1px solid #dfe7e9!important;
  background:#fff!important;
  box-shadow:0 28px 80px rgba(4,29,47,.28)!important;
}

/* Header no longer sticky inside a scrolling element */
dialog.user-dialog .modalhead{
  position:relative!important;
  top:auto!important;
  grid-row:1!important;
  z-index:2!important;
  flex-shrink:0!important;
  border-top:0!important;
  border-bottom:1px solid #dfe7e9!important;
  border-radius:24px 24px 0 0!important;
  box-shadow:none!important;
}

/* The form itself becomes a transparent grid so only .modalform scrolls */
dialog.user-dialog .user-modal{
  position:relative!important;
}
dialog.user-dialog .modalform{
  grid-row:2!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  padding:24px 32px 28px!important;
  background:#fff!important;
}

/* Footer stays visible at all times */
dialog.user-dialog .modalactions{
  position:relative!important;
  bottom:auto!important;
  grid-row:3!important;
  z-index:2!important;
  flex-shrink:0!important;
  border-top:1px solid #dfe7e9!important;
  border-radius:0 0 24px 24px!important;
  box-shadow:0 -8px 18px rgba(17,47,68,.035)!important;
  padding:16px 32px 20px!important;
}

/* Because form children need to participate in the modal grid */
dialog.user-dialog form.user-modal{
  display:grid!important;
}

/* Scrollbar styling inside user editor */
dialog.user-dialog .modalform::-webkit-scrollbar{width:10px}
dialog.user-dialog .modalform::-webkit-scrollbar-track{background:#f3f6f7}
dialog.user-dialog .modalform::-webkit-scrollbar-thumb{
  background:#c4d0d6;
  border-radius:999px;
  border:2px solid #f3f6f7;
}
dialog.user-dialog .modalform::-webkit-scrollbar-thumb:hover{background:#aebdc5}

/* Ensure permission cards can reach the bottom without being hidden */
dialog.user-dialog .permissions-section{margin-bottom:8px!important}

/* The separate delete form should not break layout when present */
dialog.user-dialog .user-delete-form{
  position:absolute!important;
  left:32px!important;
  bottom:18px!important;
  z-index:4!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}
dialog.user-dialog .user-delete-form + *{margin:0!important}

/* Prevent any legacy pseudo/outline artifacts at the top */
dialog.user-dialog:focus,
dialog.user-dialog:focus-visible{
  outline:none!important;
}
dialog.user-dialog .user-modal::before,
dialog.user-dialog .user-modal::after{
  display:none!important;
  content:none!important;
}

@media(max-width:1100px){
  dialog.user-dialog{
    width:calc(100vw - 48px)!important;
  }
  dialog.user-dialog .user-modal{
    height:calc(100vh - 48px)!important;
    max-height:calc(100vh - 48px)!important;
  }
}
@media(max-width:760px){
  dialog.user-dialog{
    width:calc(100vw - 20px)!important;
  }
  dialog.user-dialog .user-modal{
    height:calc(100vh - 20px)!important;
    max-height:calc(100vh - 20px)!important;
    border-radius:18px!important;
  }
  dialog.user-dialog .modalhead{
    border-radius:18px 18px 0 0!important;
  }
  dialog.user-dialog .modalactions{
    border-radius:0 0 18px 18px!important;
  }
  dialog.user-dialog .modalform{
    padding-left:20px!important;
    padding-right:20px!important;
  }
  dialog.user-dialog .user-delete-form{
    left:20px!important;
  }
}

/* =========================================================
   SeasonFlow v19 — definitive user editor modal fix
   ========================================================= */
dialog.user-dialog{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
dialog.user-dialog[open]{
  display:grid!important;
  place-items:center!important;
}
dialog.user-dialog::backdrop{
  background:rgba(7,29,43,.68)!important;
  backdrop-filter:blur(5px)!important;
}

dialog.user-dialog form.user-modal{
  position:relative!important;
  width:min(1080px,calc(100vw - 96px))!important;
  height:min(820px,calc(100vh - 80px))!important;
  max-width:1080px!important;
  max-height:calc(100vh - 80px)!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
  border:1px solid #dfe7e9!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 28px 80px rgba(4,29,47,.30)!important;
  color:#0b2d4b!important;
}

dialog.user-dialog form.user-modal > .modalhead{
  position:relative!important;
  inset:auto!important;
  grid-row:1!important;
  margin:0!important;
  padding:26px 32px 22px!important;
  background:#fff!important;
  border:0!important;
  border-bottom:1px solid #dfe7e9!important;
  border-radius:24px 24px 0 0!important;
  box-shadow:none!important;
  z-index:2!important;
}

dialog.user-dialog form.user-modal > .modalform{
  position:relative!important;
  grid-row:2!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:22px 32px 26px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  background:#fff!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
}

dialog.user-dialog form.user-modal > .modalactions{
  position:relative!important;
  inset:auto!important;
  grid-row:3!important;
  margin:0!important;
  padding:16px 32px 20px!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:10px!important;
  background:#fff!important;
  border:0!important;
  border-top:1px solid #dfe7e9!important;
  border-radius:0 0 24px 24px!important;
  box-shadow:0 -8px 20px rgba(17,47,68,.04)!important;
  z-index:2!important;
}

dialog.user-dialog > .user-delete-form{
  position:fixed!important;
  left:calc(50% - min(540px,calc((100vw - 96px)/2)) + 32px)!important;
  bottom:calc((100vh - min(820px,calc(100vh - 80px)))/2 + 20px)!important;
  z-index:10001!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}

dialog.user-dialog::before,
dialog.user-dialog::after,
dialog.user-dialog form.user-modal::before,
dialog.user-dialog form.user-modal::after{
  content:none!important;
  display:none!important;
}
dialog.user-dialog .modalbox{
  transform:none!important;
}
dialog.user-dialog .user-status-row{margin-top:2px!important}
dialog.user-dialog .permissions-section{margin-top:14px!important;margin-bottom:0!important}
dialog.user-dialog .permissions-grid{grid-template-columns:1fr 1fr!important}

dialog.user-dialog form.user-modal > .modalform::-webkit-scrollbar{width:10px}
dialog.user-dialog form.user-modal > .modalform::-webkit-scrollbar-track{background:#f4f7f8}
dialog.user-dialog form.user-modal > .modalform::-webkit-scrollbar-thumb{
  background:#bfccd2;
  border:2px solid #f4f7f8;
  border-radius:999px;
}

@media(max-width:1100px){
  dialog.user-dialog form.user-modal{
    width:calc(100vw - 48px)!important;
    height:calc(100vh - 48px)!important;
    max-height:calc(100vh - 48px)!important;
  }
  dialog.user-dialog > .user-delete-form{
    left:56px!important;
    bottom:44px!important;
  }
}
@media(max-width:760px){
  dialog.user-dialog form.user-modal{
    width:calc(100vw - 20px)!important;
    height:calc(100vh - 20px)!important;
    max-height:calc(100vh - 20px)!important;
    border-radius:18px!important;
  }
  dialog.user-dialog form.user-modal > .modalhead{
    border-radius:18px 18px 0 0!important;
    padding:20px!important;
  }
  dialog.user-dialog form.user-modal > .modalform{
    padding:18px 20px 22px!important;
  }
  dialog.user-dialog form.user-modal > .modalactions{
    border-radius:0 0 18px 18px!important;
    padding:14px 20px 16px!important;
  }
  dialog.user-dialog .permissions-grid{
    grid-template-columns:1fr!important;
  }
  dialog.user-dialog > .user-delete-form{
    left:30px!important;
    bottom:30px!important;
  }
}

/* =========================================================
   SeasonFlow v20 — rebuilt user editor (isolated component)
   ========================================================= */
.sf-user-dialog{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  overflow:hidden!important;
}
.sf-user-dialog[open]{
  display:grid!important;
  place-items:center!important;
}
.sf-user-dialog::backdrop{
  background:rgba(7,29,43,.68)!important;
  backdrop-filter:blur(5px);
}

.sf-user-editor{
  width:min(1040px,calc(100vw - 80px))!important;
  height:min(790px,calc(100vh - 72px))!important;
  max-width:1040px!important;
  max-height:calc(100vh - 72px)!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#fff!important;
  color:#0b2d4b!important;
  border:1px solid #dfe7e9!important;
  border-radius:24px!important;
  box-shadow:0 30px 90px rgba(3,28,45,.34)!important;
}

.sf-user-editor__header{
  grid-row:1;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:24px;
  padding:26px 30px 22px;
  background:#fff;
  border-bottom:1px solid #dfe7e9;
}
.sf-user-editor__eyebrow{
  display:block;
  color:#21964a;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.sf-user-editor__header h2{
  margin:7px 0 6px;
  color:#0b2d4b;
  font-size:30px;
  line-height:1.08;
}
.sf-user-editor__header p{
  margin:0;
  color:#718493;
  font-size:13px;
  line-height:1.45;
}
.sf-user-editor__close{
  flex:0 0 44px;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:12px;
  background:#f1f5f7;
  color:#5d6e7b;
  font-size:26px;
  cursor:pointer;
}
.sf-user-editor__close:hover{background:#e7eef1;color:#263f51}

.sf-user-editor__body{
  grid-row:2;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:22px 30px 28px;
  background:#fff;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.sf-user-editor__body::-webkit-scrollbar{width:10px}
.sf-user-editor__body::-webkit-scrollbar-track{background:#f4f7f8}
.sf-user-editor__body::-webkit-scrollbar-thumb{
  background:#becbd1;
  border:2px solid #f4f7f8;
  border-radius:999px;
}

.sf-user-editor__section{
  padding:18px;
  border:1px solid #dfe7e9;
  border-radius:16px;
  background:#f8faf9;
}
.sf-user-editor__section + .sf-user-editor__section{margin-top:16px}
.sf-user-editor__section label{
  display:grid;
  gap:7px;
  color:#5e7180;
  font-size:11px;
  font-weight:750;
}
.sf-user-editor__section input[type="text"],
.sf-user-editor__section input[type="password"],
.sf-user-editor__section select,
.sf-user-editor__section input:not([type]){
  width:100%;
  min-height:44px;
  box-sizing:border-box;
  padding:0 13px;
  border:1px solid #cfdce3;
  border-radius:11px;
  background:#fff;
  color:#0b2d4b;
  font:inherit;
}
.sf-user-editor__section input:focus,
.sf-user-editor__section select:focus{
  outline:none;
  border-color:#1ca36a;
  box-shadow:0 0 0 3px rgba(28,163,106,.10);
}

.sf-grid{display:grid;gap:14px}
.sf-grid--2{grid-template-columns:1fr 1fr}
.sf-grid--3{grid-template-columns:1fr 1fr 1fr;margin-top:14px}

.sf-user-editor__active{
  display:flex!important;
  align-items:center;
  gap:9px!important;
  margin-top:16px;
  padding:12px 14px;
  border:1px solid #dce6e8;
  border-radius:11px;
  background:#fff;
  color:#0b2d4b!important;
}
.sf-user-editor__active input{width:auto!important;margin:0}

.sf-user-editor__section-title{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:16px;
  margin-bottom:12px;
}
.sf-user-editor__section-title strong{color:#0b2d4b;font-size:13px}
.sf-user-editor__section-title small{color:#8b9aa4;font-size:10px}

.sf-permission-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.sf-permission-card{
  display:flex!important;
  align-items:center;
  gap:11px!important;
  min-height:62px;
  padding:11px 13px;
  border:1px solid #dce5e9;
  border-radius:11px;
  background:#fff;
  cursor:pointer;
}
.sf-permission-card:hover{border-color:#bad8c7;background:#fcfefd}
.sf-permission-card input{width:auto!important;margin:0;flex:0 0 auto}
.sf-permission-card span{display:flex;flex-direction:column;gap:2px}
.sf-permission-card strong{color:#0b2d4b;font-size:11px}
.sf-permission-card small{color:#8999a4;font-size:9px;font-weight:500}

.sf-user-editor__footer{
  grid-row:3;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px 30px 20px;
  background:#fff;
  border-top:1px solid #dfe7e9;
  box-shadow:0 -8px 20px rgba(17,47,68,.035);
}
.sf-user-editor__footer-right{display:flex;align-items:center;gap:10px}
.sf-btn{
  min-height:42px;
  padding:0 17px;
  border-radius:11px;
  border:1px solid transparent;
  font:inherit;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.sf-btn--primary{background:#169b63;color:#fff;box-shadow:0 5px 14px rgba(22,155,99,.18)}
.sf-btn--primary:hover{background:#118b58}
.sf-btn--secondary{background:#f3f6f7;color:#173349}
.sf-btn--secondary:hover{background:#e9eef1}
.sf-btn--danger{background:#fff6f4;border-color:#efc8c3;color:#ac382f}
.sf-btn--danger:hover{background:#ffeae6;border-color:#e7b4ae}

@media(max-width:900px){
  .sf-user-editor{
    width:calc(100vw - 32px)!important;
    height:calc(100vh - 32px)!important;
    max-height:calc(100vh - 32px)!important;
  }
  .sf-grid--3{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .sf-user-editor{
    width:calc(100vw - 16px)!important;
    height:calc(100vh - 16px)!important;
    max-height:calc(100vh - 16px)!important;
    border-radius:18px!important;
  }
  .sf-user-editor__header{padding:20px}
  .sf-user-editor__header h2{font-size:24px}
  .sf-user-editor__body{padding:18px 20px 22px}
  .sf-user-editor__footer{padding:14px 20px 16px}
  .sf-grid--2,.sf-grid--3,.sf-permission-grid{grid-template-columns:1fr}
  .sf-user-editor__footer{align-items:stretch}
}

/* =========================================================
   SeasonFlow v21 — clean user management rebuild
   ========================================================= */

/* NEW USER COLLAPSIBLE */
.new-user-panel{
  background:#fff;
  border:1px solid #dce5e9;
  border-radius:16px;
  box-shadow:0 5px 18px rgba(17,47,68,.045);
  overflow:hidden;
}
.new-user-panel > summary{
  list-style:none;
  cursor:pointer;
  padding:18px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  background:#fff;
}
.new-user-panel > summary::-webkit-details-marker{display:none}
.new-user-panel > summary > div{
  display:flex;
  align-items:center;
  gap:13px;
}
.new-user-panel summary strong{
  display:block;
  color:#0b2d4b;
  font-size:16px;
}
.new-user-panel summary small{
  display:block;
  margin-top:3px;
  color:#8999a4;
  font-size:11px;
}
.new-user-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#eaf8ef;
  color:#168a56;
  font-size:23px;
  font-weight:500;
}
.new-user-chevron{
  color:#617583;
  font-size:23px;
  transition:transform .18s ease;
}
.new-user-panel[open] .new-user-chevron{transform:rotate(180deg)}
.new-user-body{
  border-top:1px solid #e1e8eb;
  padding:22px;
  background:#fafcfc;
}
.new-user-permissions{
  margin-top:8px;
  padding:17px;
  border:1px solid #dce5e9;
  border-radius:14px;
  background:#fff;
}
.new-user-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:17px;
}

/* BRAND NEW USER EDIT DIALOG */
.user-editor-dialog{
  border:0!important;
  padding:0!important;
  background:transparent!important;
  width:auto!important;
  height:auto!important;
  max-width:none!important;
  max-height:none!important;
  overflow:visible!important;
}
.user-editor-dialog::backdrop{
  background:rgba(7,29,43,.64);
  backdrop-filter:blur(5px);
}

.user-editor-card{
  width:min(960px,calc(100vw - 80px));
  height:min(760px,calc(100vh - 80px));
  display:flex;
  flex-direction:column;
  margin:0;
  padding:0;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  border:1px solid #dce5e9;
  box-shadow:0 28px 80px rgba(3,29,47,.30);
  color:#0b2d4b;
}

.user-editor-header{
  flex:0 0 auto;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:24px 28px 21px;
  border-bottom:1px solid #e0e7ea;
  background:#fff;
}
.user-editor-kicker{
  display:block;
  color:#1d9850;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.user-editor-header h2{
  margin:6px 0 5px;
  color:#0b2d4b;
  font-size:28px;
  line-height:1.12;
}
.user-editor-header p{
  margin:0;
  color:#748594;
  font-size:12px;
}
.user-editor-close{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:11px;
  background:#f1f5f7;
  color:#5f7180;
  font-size:25px;
  cursor:pointer;
}
.user-editor-close:hover{background:#e7eef1}

.user-editor-content{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:20px 28px 24px;
  background:#f8faf9;
}
.user-editor-content::-webkit-scrollbar{width:10px}
.user-editor-content::-webkit-scrollbar-track{background:#f1f4f5}
.user-editor-content::-webkit-scrollbar-thumb{
  background:#bdcbd1;
  border:2px solid #f1f4f5;
  border-radius:999px;
}

.user-editor-block{
  padding:17px;
  border:1px solid #dce5e9;
  border-radius:14px;
  background:#fff;
}
.user-editor-block + .user-editor-block{margin-top:14px}

.user-editor-grid{
  display:grid;
  gap:13px;
}
.user-editor-grid.two{grid-template-columns:1fr 1fr}
.user-editor-grid.three{
  grid-template-columns:1fr 1fr 1fr;
  margin-top:13px;
}
.user-editor-grid label{
  display:grid;
  gap:6px;
  color:#5f7180;
  font-size:11px;
  font-weight:750;
}
.user-editor-grid input,
.user-editor-grid select{
  width:100%;
  min-height:43px;
  box-sizing:border-box;
  padding:0 12px;
  border:1px solid #cedae0;
  border-radius:10px;
  background:#fff;
  color:#0b2d4b;
  font:inherit;
}
.user-editor-grid input:focus,
.user-editor-grid select:focus{
  outline:none;
  border-color:#1aa168;
  box-shadow:0 0 0 3px rgba(26,161,104,.09);
}

.user-active-toggle{
  display:flex!important;
  align-items:center;
  gap:9px!important;
  margin-top:14px;
  padding:11px 13px;
  border:1px solid #dce5e9;
  border-radius:10px;
  background:#f8faf9;
  color:#0b2d4b!important;
  font-size:11px!important;
  font-weight:750!important;
}
.user-active-toggle input{width:auto!important;margin:0}

.user-editor-section-title{
  margin-bottom:11px;
}
.user-editor-section-title strong{
  color:#0b2d4b;
  font-size:12px;
}

.user-permissions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}
.user-permission-item{
  display:flex!important;
  align-items:center;
  gap:10px!important;
  min-height:58px;
  padding:10px 12px;
  border:1px solid #dce5e9;
  border-radius:10px;
  background:#fff;
  cursor:pointer;
}
.user-permission-item:hover{
  border-color:#bad9c6;
  background:#fcfefd;
}
.user-permission-item input{
  width:auto!important;
  margin:0;
  flex:0 0 auto;
}
.user-permission-item span{
  display:flex;
  flex-direction:column;
  gap:1px;
}
.user-permission-item strong{
  color:#0b2d4b;
  font-size:11px;
}
.user-permission-item small{
  color:#8999a4;
  font-size:9px;
}

.user-editor-footer{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:15px 28px 18px;
  border-top:1px solid #e0e7ea;
  background:#fff;
}
.user-editor-footer-actions{
  display:flex;
  align-items:center;
  gap:9px;
}
.user-delete-btn{
  background:#fff5f3!important;
  color:#ae3c32!important;
  border:1px solid #efc9c4!important;
}
.user-delete-btn:hover{
  background:#ffe9e6!important;
}

@media(max-width:900px){
  .user-editor-card{
    width:calc(100vw - 30px);
    height:calc(100vh - 30px);
  }
  .user-editor-grid.three{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .user-editor-card{
    width:calc(100vw - 16px);
    height:calc(100vh - 16px);
    border-radius:17px;
  }
  .user-editor-header{padding:19px}
  .user-editor-header h2{font-size:23px}
  .user-editor-content{padding:16px 18px 20px}
  .user-editor-footer{padding:13px 18px 15px}
  .user-editor-grid.two,
  .user-editor-grid.three,
  .user-permissions{grid-template-columns:1fr}
}

/* =========================================================
   SeasonFlow v22 — dedicated user edit page (no modal)
   ========================================================= */

.user-edit-page{
  max-width:1180px;
  margin:0 auto;
}

.user-edit-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.user-edit-identity{
  display:flex;
  align-items:center;
  gap:11px;
}
.user-edit-avatar{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:linear-gradient(135deg,#0c5d93,#1c9b57);
  color:#fff;
  font-weight:800;
}
.user-edit-identity > div:last-child{
  display:flex;
  flex-direction:column;
}
.user-edit-identity strong{
  color:#0b2d4b;
  font-size:13px;
}
.user-edit-identity span{
  color:#83939e;
  font-size:10px;
}

.user-edit-form{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.user-edit-card{
  background:#fff;
  border:1px solid #dce5e9;
  border-radius:18px;
  padding:24px;
  box-shadow:0 6px 22px rgba(17,47,68,.05);
}
.user-edit-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  padding-bottom:18px;
  margin-bottom:18px;
  border-bottom:1px solid #e3eaed;
}
.user-edit-card-head.compact{
  margin-bottom:14px;
}
.user-edit-kicker{
  color:#1e9951;
  font-size:10px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.user-edit-card-head h2{
  margin:5px 0 4px;
  color:#0b2d4b;
  font-size:23px;
}
.user-edit-card-head p{
  margin:0;
  color:#7d8d98;
  font-size:11px;
}

.user-edit-fields{
  display:grid;
  gap:14px;
}
.user-edit-fields.two{
  grid-template-columns:1fr 1fr;
}
.user-edit-fields.three{
  grid-template-columns:1fr 1fr 1fr;
  margin-top:14px;
}
.user-edit-fields label{
  display:grid;
  gap:7px;
  color:#607380;
  font-size:11px;
  font-weight:750;
}
.user-edit-fields input,
.user-edit-fields select{
  width:100%;
  min-height:46px;
  box-sizing:border-box;
  border:1px solid #cfdae0;
  border-radius:11px;
  padding:0 13px;
  background:#fff;
  color:#0b2d4b;
  font:inherit;
}
.user-edit-fields input:focus,
.user-edit-fields select:focus{
  outline:none;
  border-color:#1ba068;
  box-shadow:0 0 0 3px rgba(27,160,104,.09);
}

.user-edit-active{
  margin-top:15px;
  display:flex!important;
  align-items:center;
  gap:10px!important;
  padding:13px 14px;
  border:1px solid #dce5e9;
  border-radius:11px;
  background:#f8faf9;
}
.user-edit-active input{
  width:auto!important;
  margin:0;
}
.user-edit-active span{
  display:flex;
  flex-direction:column;
}
.user-edit-active strong{
  color:#0b2d4b;
  font-size:11px;
}
.user-edit-active small{
  color:#8c9aa4;
  font-size:9px;
}

.user-edit-permissions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.user-edit-permission{
  display:flex!important;
  align-items:center;
  gap:11px!important;
  min-height:64px;
  padding:12px 14px;
  border:1px solid #dce5e9;
  border-radius:11px;
  background:#fbfcfc;
  cursor:pointer;
  transition:.15s ease;
}
.user-edit-permission:hover{
  border-color:#b8d8c5;
  background:#fcfefd;
  transform:translateY(-1px);
}
.user-edit-permission input{
  width:auto!important;
  margin:0;
  flex:0 0 auto;
}
.user-edit-permission span{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.user-edit-permission strong{
  color:#0b2d4b;
  font-size:11px;
}
.user-edit-permission small{
  color:#8a99a4;
  font-size:9px;
}

.user-edit-actions{
  position:sticky;
  bottom:16px;
  z-index:5;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px;
  border:1px solid #dce5e9;
  border-radius:14px;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(10px);
  box-shadow:0 12px 35px rgba(17,47,68,.12);
}
.user-edit-actions-right{
  display:flex;
  align-items:center;
  gap:9px;
}
.user-edit-delete{
  background:#fff4f2!important;
  color:#ad3a31!important;
  border:1px solid #efc9c4!important;
}
.user-edit-delete:hover{
  background:#ffe8e4!important;
}

@media(max-width:900px){
  .user-edit-fields.three{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:680px){
  .user-edit-topbar{
    align-items:flex-start;
  }
  .user-edit-fields.two,
  .user-edit-fields.three,
  .user-edit-permissions{
    grid-template-columns:1fr;
  }
  .user-edit-card{
    padding:18px;
    border-radius:14px;
  }
  .user-edit-actions{
    bottom:8px;
  }
}


/* Header separator between user profile and logout — mirrors the language/profile divider */
.header-profile-separator{
  display:block;
  flex:0 0 1px;
  width:1px;
  height:40px;
  margin:0 10px 0 6px;
  background:var(--line);
  align-self:center;
}

/* v27 — container transport & documents */
.container-logistics{
  margin:0;
  padding:12px 16px 14px;
  border-top:1px solid #e4eaed;
  background:#fbfcfc;
}
.container-logistics-title{
  margin-bottom:9px;
}
.container-logistics-title span{
  color:#168a56;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.container-logistics-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(120px,1fr));
  gap:8px;
}
.container-logistics-grid>div{
  min-width:0;
  padding:9px 10px;
  border:1px solid #dfe7e9;
  border-radius:9px;
  background:#fff;
}
.container-logistics-grid small{
  display:block;
  margin-bottom:3px;
  color:#82939f;
  font-size:8.5px;
  font-weight:750;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.container-logistics-grid strong{
  display:block;
  overflow-wrap:anywhere;
  color:#14324a;
  font-size:10.5px;
  line-height:1.3;
}
.container-logistics-empty{
  padding:8px 10px;
  border:1px dashed #d7e0e4;
  border-radius:9px;
  color:#8798a3;
  font-size:10px;
  background:#fff;
}
.transport-modal{
  width:min(860px,calc(100vw - 64px))!important;
  max-width:860px!important;
}
.transport-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
@media(max-width:1250px){
  .container-logistics-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:760px){
  .container-logistics-grid,.transport-form-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .container-logistics-grid,.transport-form-grid{grid-template-columns:1fr}
}
.shipment-status{display:inline-flex!important;width:max-content;align-items:center;padding:4px 9px;border-radius:999px;font-size:9px!important;font-weight:800!important}
.shipment-loaded{color:#17663f!important;background:#e8f6ee;border:1px solid #c6e7d4}
.shipment-transit{color:#245e91!important;background:#eaf3fb;border:1px solid #cbdff0}
.shipment-arrived{color:#17663f!important;background:#ddf4e6;border:1px solid #b8e1c8}

/* =========================================================
   SeasonFlow v30 — customer notes & update history
   ========================================================= */
.customer-row-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  white-space:nowrap;
}
.customer-notes-toggle{
  display:inline-flex!important;
  align-items:center;
  gap:6px;
}
.notes-count{
  display:inline-grid;
  place-items:center;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  background:#eaf5ef;
  color:#168a56;
  font-size:9px;
  font-weight:800;
}
.notes-chevron{
  display:inline-block;
  color:#748695;
  font-size:15px;
  transition:transform .18s ease;
}
.customer-notes-toggle[aria-expanded="true"] .notes-chevron{
  transform:rotate(180deg);
}

.customer-notes-row>td{
  padding:0!important;
  background:#f5f8f8;
  border-top:0!important;
}
.customer-notes-panel{
  margin:0 12px 14px;
  padding:18px;
  border:1px solid #dce5e9;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 22px rgba(17,47,68,.055);
}
.customer-notes-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding-bottom:14px;
  margin-bottom:14px;
  border-bottom:1px solid #e4eaed;
}
.notes-kicker{
  display:block;
  color:#1a9650;
  font-size:9px;
  font-weight:800;
  letter-spacing:.09em;
}
.customer-notes-head h3{
  margin:4px 0 3px;
  color:#0b2d4b;
  font-size:18px;
}
.customer-notes-head p{
  margin:0;
  color:#7f909b;
  font-size:10px;
}
.notes-summary-pill{
  padding:6px 10px;
  border-radius:999px;
  background:#f0f5f6;
  color:#617481;
  font-size:9px;
  font-weight:750;
}

.customer-note-create{
  padding:13px;
  margin-bottom:16px;
  border:1px solid #dce5e9;
  border-radius:12px;
  background:#f9fbfa;
}
.customer-note-create textarea,
.customer-note-edit textarea{
  width:100%;
  box-sizing:border-box;
  resize:vertical;
  min-height:76px;
  padding:10px 12px;
  border:1px solid #cfdbe0;
  border-radius:10px;
  background:#fff;
  color:#14324a;
  font:inherit;
  font-size:11px;
  line-height:1.5;
}
.customer-note-create textarea:focus,
.customer-note-edit textarea:focus{
  outline:none;
  border-color:#1aa168;
  box-shadow:0 0 0 3px rgba(26,161,104,.08);
}
.customer-note-create-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:9px;
}
.customer-note-create-actions>span{
  color:#7d8d98;
  font-size:9px;
  font-weight:750;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.customer-note-history{
  display:flex;
  flex-direction:column;
}
.customer-note-card{
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  gap:8px;
}
.customer-note-timeline{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.timeline-dot{
  position:relative;
  z-index:2;
  width:9px;
  height:9px;
  margin-top:6px;
  border-radius:50%;
  background:#1b9b5b;
  box-shadow:0 0 0 4px #e9f6ef;
}
.timeline-line{
  width:1px;
  flex:1 1 auto;
  min-height:35px;
  margin-top:4px;
  background:#dbe5e1;
}
.customer-note-content{
  padding:0 0 15px;
}
.customer-note-meta{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.customer-note-meta>div:first-child{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
}
.customer-note-meta strong{
  color:#14324a;
  font-size:10.5px;
}
.customer-note-meta span{
  color:#8797a2;
  font-size:9px;
}
.note-edited{
  color:#9b8a65!important;
}
.customer-note-text{
  margin:7px 0 0;
  padding:10px 12px;
  border:1px solid #e1e8eb;
  border-radius:10px;
  background:#fbfcfc;
  color:#2e4659;
  font-size:11px;
  line-height:1.55;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.customer-note-actions{
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.customer-note-actions form{margin:0}
.note-action-link{
  border:0;
  padding:0;
  background:transparent;
  color:#51758f;
  font:inherit;
  font-size:9px;
  font-weight:750;
  cursor:pointer;
}
.note-action-link:hover{color:#168a56}
.danger-note-action{color:#b24a42}
.danger-note-action:hover{color:#922f28}

.customer-note-edit{
  margin-top:8px;
  padding:10px;
  border:1px solid #dce5e9;
  border-radius:10px;
  background:#f7faf9;
}
.customer-note-edit-actions{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  margin-top:8px;
}
.customer-notes-empty{
  display:flex;
  align-items:center;
  gap:11px;
  padding:17px;
  border:1px dashed #d7e1e4;
  border-radius:11px;
  background:#fbfcfc;
}
.notes-empty-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#edf6f1;
  color:#168a56;
  font-size:16px;
}
.customer-notes-empty strong{
  color:#486171;
  font-size:10.5px;
}
.customer-notes-empty p{
  margin:2px 0 0;
  color:#8b9aa4;
  font-size:9px;
}
@media(max-width:900px){
  .customer-note-meta{flex-direction:column}
  .customer-row-actions{flex-wrap:wrap}
}

/* =========================================================
   SeasonFlow v31 — collapsible navigation
   ========================================================= */
.shell{
  transition:grid-template-columns .22s ease;
}
.sidebar{
  position:relative;
  transition:width .22s ease, padding .22s ease;
}
.sidebar-collapse-btn{
  position:absolute;
  z-index:20;
  top:18px;
  right:-15px;
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(12,52,80,.16);
  border-radius:10px;
  background:#fff;
  color:#0c3b5f;
  box-shadow:0 5px 16px rgba(7,39,61,.14);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.sidebar-collapse-btn:hover{
  background:#f6faf8;
  box-shadow:0 7px 19px rgba(7,39,61,.19);
}
.sidebar-collapse-icon{
  display:block;
  margin-top:-2px;
  font-size:25px;
  line-height:1;
  font-weight:500;
  transition:transform .22s ease;
}

.shell.sidebar-collapsed{
  grid-template-columns:92px minmax(0,1fr);
}
.shell.sidebar-collapsed .sidebar{
  width:92px;
  padding-left:12px;
  padding-right:12px;
}
.shell.sidebar-collapsed .sidebar-collapse-icon{
  transform:rotate(180deg);
}
.shell.sidebar-collapsed .brand-logo-wrap{
  height:78px;
  min-height:78px;
  padding:7px;
  border-radius:17px;
}
.shell.sidebar-collapsed .sidebar-logo{
  width:100%;
  max-width:62px;
  height:62px;
  object-fit:contain;
}
.shell.sidebar-collapsed .sidebar nav{
  margin-top:22px;
}
.shell.sidebar-collapsed .sidebar nav a{
  width:56px;
  min-width:56px;
  height:54px;
  margin:0 auto 10px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  border-radius:14px;
  font-size:20px;
  overflow:hidden;
}
.shell.sidebar-collapsed .sidebar nav a span{
  display:none;
}
.shell.sidebar-collapsed .sidebar nav a.active{
  border-left-width:4px;
  padding-left:0;
}
.shell.sidebar-collapsed .sidefoot{
  justify-content:center;
  font-size:0;
}
.shell.sidebar-collapsed .sidefoot .status-dot{
  margin:0;
}
@media(max-width:900px){
  .sidebar-collapse-btn{display:none}
}

/* =========================================================
   SeasonFlow v32 — integrated sidebar control + customer-detail notes
   ========================================================= */

/* Collapse control now belongs to the white logo card */
.brand-logo-wrap{
  position:relative!important;
  overflow:visible!important;
}
.brand-logo-wrap .sidebar-collapse-btn{
  top:50%!important;
  right:12px!important;
  transform:translateY(-50%)!important;
  width:36px!important;
  height:36px!important;
  border-radius:11px!important;
  border:1px solid #d8e2e6!important;
  background:rgba(255,255,255,.96)!important;
  color:#0b436d!important;
  box-shadow:0 4px 12px rgba(7,39,61,.11)!important;
}
.brand-logo-wrap .sidebar-collapse-btn:hover{
  background:#f3f8f5!important;
  border-color:#bfd2c8!important;
}
.shell.sidebar-collapsed .brand-logo-wrap .sidebar-collapse-btn{
  top:auto!important;
  right:50%!important;
  bottom:-15px!important;
  transform:translateX(50%)!important;
}
.shell.sidebar-collapsed .brand-logo-wrap .sidebar-collapse-icon{
  transform:rotate(180deg);
}

/* Notes live only on opened customer */
.customer-detail-notes{
  overflow:hidden;
  border:1px solid #dce5e9;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 22px rgba(17,47,68,.045);
}
.customer-detail-notes>summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 20px;
  background:#fff;
}
.customer-detail-notes>summary::-webkit-details-marker{display:none}
.customer-detail-notes-summary-main{
  display:flex;
  align-items:center;
  gap:12px;
}
.customer-detail-notes-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#eaf7ef;
  color:#168a56;
  font-size:17px;
}
.customer-detail-notes-summary-main strong{
  display:block;
  color:#0b2d4b;
  font-size:15px;
}
.customer-detail-notes-summary-main small{
  display:block;
  margin-top:3px;
  color:#84949f;
  font-size:10px;
}
.customer-detail-notes-summary-side{
  display:flex;
  align-items:center;
  gap:10px;
}
.customer-detail-notes-chevron{
  color:#6f8290;
  font-size:20px;
  transition:transform .18s ease;
}
.customer-detail-notes[open] .customer-detail-notes-chevron{
  transform:rotate(180deg);
}
.customer-detail-notes-body{
  padding:18px 20px 20px;
  border-top:1px solid #e1e8eb;
  background:#fafcfc;
}
.customer-detail-notes .customer-note-create{
  background:#fff;
}
.customer-detail-notes .customer-note-text{
  background:#fff;
}
@media(max-width:700px){
  .brand-logo-wrap .sidebar-collapse-btn{right:8px!important}
  .customer-detail-notes>summary{padding:15px}
  .customer-detail-notes-body{padding:15px}
}

/* SeasonFlow v33 — sidebar collapse button position */
.shell:not(.sidebar-collapsed) .brand-logo-wrap .sidebar-collapse-btn{
  top:18px!important;
  right:18px!important;
  bottom:auto!important;
  transform:none!important;
}

/* SeasonFlow v34 — customer notes fill the free space below account movements */
.customer-detail-left{display:flex;flex-direction:column;gap:18px;min-width:0}
.customer-detail-left .customer-detail-notes{margin-top:0}
.customer-detail-grid{align-items:start}

/* SeasonFlow v35 — supplier purchasing & landed-cost module */
.supplier-sub{display:block;color:#8797a3;margin-top:4px}.supplier-kpis{display:grid;grid-template-columns:repeat(2,minmax(180px,280px));gap:16px;margin-bottom:18px}.supplier-kpi{background:#fff;border:1px solid #dbe5e8;border-radius:18px;padding:20px;box-shadow:0 8px 28px rgba(10,45,75,.05)}.supplier-kpi small,.supplier-article small,.supplier-panel-head small{display:block;color:#84949f;font-size:11px;font-weight:800;letter-spacing:.08em}.supplier-kpi strong{display:block;color:#0b2d4b;font-size:30px;margin:5px 0}.supplier-kpi span{color:#84949f}.supplier-detail-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.supplier-master-card,.supplier-article{background:#fff;border:1px solid #dbe5e8;border-radius:20px;overflow:hidden;margin-bottom:18px;box-shadow:0 8px 28px rgba(10,45,75,.05)}.supplier-master-card>summary,.supplier-article>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px}.supplier-master-card>summary::-webkit-details-marker,.supplier-article>summary::-webkit-details-marker{display:none}.supplier-master-card>summary strong{display:block;font-size:22px;color:#0b2d4b;margin:3px 0}.supplier-master-card>summary span{color:#7b8d99}.supplier-master-form{padding:22px 24px;border-top:1px solid #e2eaed}.supplier-article>summary{border-left:5px solid #18a566}.supplier-article-title{display:flex;align-items:center;gap:14px;min-width:0}.supplier-product-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#eaf7ef;color:#168a56;font-size:22px}.supplier-article-title strong{display:block;font-size:19px;color:#0b2d4b;margin:3px 0}.supplier-article-title span{color:#7d8f9b}.supplier-cost-total{text-align:right;margin-left:auto}.supplier-cost-total strong{display:block;color:#0b2d4b;font-size:21px;margin:3px 0}.supplier-cost-total span{color:#718491;font-size:12px}.supplier-chevron{font-size:20px;color:#6e8290}.supplier-article[open] .supplier-chevron{transform:rotate(180deg)}.supplier-article-body{padding:20px 24px 24px;background:#f7fafb;border-top:1px solid #e2eaed}.supplier-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.supplier-panel{background:#fff;border:1px solid #dce6e9;border-radius:16px;overflow:hidden}.supplier-panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid #e5ecee}.supplier-panel-head h3{margin:3px 0 0;color:#0b2d4b}.price-status{padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800}.price-status.fixed{background:#e7f7ee;color:#11844f}.price-status.negotiation{background:#fff5dc;color:#9b6a00}.supplier-history-row{display:flex;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid #edf1f2}.supplier-history-row strong,.supplier-history-row span,.supplier-history-row small{display:block}.supplier-history-row strong{color:#0b2d4b}.supplier-history-row span{color:#5f7381;margin:3px 0;font-size:13px}.supplier-history-row small{color:#93a0a9}.icon-delete{border:0;background:#fff0ee;color:#b63a30;width:32px;height:32px;border-radius:10px;cursor:pointer;font-size:18px}.supplier-empty{padding:20px;color:#8b9aa4;text-align:center}.supplier-add{border-top:1px solid #e5ecee}.supplier-add>summary,.supplier-inline-edit>summary{cursor:pointer;list-style:none;padding:14px 20px;color:#118a55;font-weight:800}.supplier-add form{padding:0 20px 20px}.supplier-inline-edit{background:#fff;border:1px dashed #cddde2;border-radius:14px;margin-bottom:18px}.supplier-inline-edit form{padding:0 18px 18px}.supplier-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.form.compact label{font-size:12px}.supplier-empty-main{text-align:center;padding:36px}@media(max-width:1000px){.supplier-columns{grid-template-columns:1fr}.supplier-form-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.supplier-form-grid,.supplier-kpis{grid-template-columns:1fr}.supplier-cost-total{display:none}.supplier-article>summary{padding:16px}.supplier-article-body{padding:14px}}

/* SeasonFlow v36 — supplier articles linked to product master */
.supplier-article-edit-card{border-style:solid;background:#fff}.supplier-article-edit-card>summary{display:flex;align-items:center;gap:10px;padding:14px 16px;color:#0b2d4b}.supplier-article-edit-card>summary>span:nth-child(2){display:flex;flex-direction:column;gap:2px}.supplier-article-edit-card>summary strong{font-size:13px}.supplier-article-edit-card>summary small{font-size:10px;font-weight:500;letter-spacing:0;color:#8596a1}.supplier-article-edit-card>summary .supplier-chevron{margin-left:auto}.supplier-edit-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#eaf7ef;color:#168a56}.supplier-product-select-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);gap:14px;align-items:end}.supplier-linked-master-info{padding:11px 13px;border:1px solid #dce6e9;border-radius:11px;background:#f8fbfa}.supplier-linked-master-info small{display:block;color:#84949f;font-size:9px;font-weight:800;letter-spacing:.07em}.supplier-linked-master-info strong{display:block;margin-top:4px;color:#14324a;font-size:11px}.supplier-product-preview{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:4px 0 4px}.supplier-product-preview>div{padding:10px 11px;border:1px solid #dfe7e9;border-radius:10px;background:#f8fbfa}.supplier-product-preview small{display:block;color:#84949f;font-size:8px;font-weight:800;letter-spacing:.06em}.supplier-product-preview strong{display:block;margin-top:4px;color:#14324a;font-size:10.5px;overflow-wrap:anywhere}.supplier-edit-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:4px}.supplier-form-hint{color:#7f909b;font-size:10px;line-height:1.4}.supplier-add-product-panel select{min-height:45px}@media(max-width:1000px){.supplier-product-select-row{grid-template-columns:1fr}.supplier-product-preview{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.supplier-product-preview{grid-template-columns:1fr}.supplier-edit-actions{align-items:stretch;flex-direction:column}.supplier-edit-actions .btn{width:100%}}

/* =========================================================
   SeasonFlow v37 — supplier UX, editable history, container split costing
   ========================================================= */
.supplier-master-body{padding:22px 24px;border-top:1px solid #e2eaed;background:#fbfcfc}
.supplier-master-form{padding:0!important;border:0!important}
.supplier-master-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.supplier-master-actions{display:flex;justify-content:flex-end;margin-top:4px}
.supplier-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:14px 16px;border:1px solid #efd0cb;border-radius:12px;background:#fff8f7}
.supplier-danger-zone div{display:flex;flex-direction:column;gap:3px}.supplier-danger-zone strong{color:#8f332b;font-size:11px}.supplier-danger-zone span{color:#9a7773;font-size:9px}
.supplier-delete-btn{background:#fff2f0!important;border:1px solid #eabdb7!important;color:#a4372e!important}.supplier-delete-btn:hover{background:#ffe5e1!important}
.supplier-history-row-actions{align-items:center}.supplier-row-buttons{display:flex;align-items:center;gap:7px;flex:0 0 auto}.supplier-row-buttons form{margin:0}
.supplier-history-edit,.supplier-split-edit{padding:14px 18px!important;border-bottom:1px solid #e6edef;background:#f8fbfa}
.supplier-history-edit .supplier-form-grid{margin-bottom:10px}
.supplier-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:28px 0 14px}.supplier-section-title h2{margin:4px 0;color:#0b2d4b}.supplier-section-title p{margin:0;color:#7e8f9b;font-size:11px}.supplier-section-kicker{color:#18965b;font-size:9px;font-weight:800;letter-spacing:.09em}
.supplier-shipment-card{background:#fff;border:1px solid #dbe5e8;border-radius:20px;overflow:hidden;margin-bottom:16px;box-shadow:0 8px 28px rgba(10,45,75,.05)}
.supplier-shipment-card>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;padding:18px 22px;border-left:5px solid #0c5d93}.supplier-shipment-card>summary::-webkit-details-marker{display:none}.supplier-shipment-card[open] .supplier-chevron{transform:rotate(180deg)}
.supplier-shipment-title{display:flex;align-items:center;gap:13px;min-width:0}.supplier-shipment-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#e9f2f8;color:#0c5d93;font-size:19px}.supplier-shipment-title small{display:block;color:#84949f;font-size:9px;font-weight:800;letter-spacing:.08em}.supplier-shipment-title strong{display:block;color:#0b2d4b;font-size:17px;margin:3px 0}.supplier-shipment-title span{display:block;color:#7d8f9b;font-size:11px}
.supplier-shipment-kpis{display:flex;gap:24px;margin-left:auto}.supplier-shipment-kpis>div{text-align:right}.supplier-shipment-kpis small{display:block;color:#8595a0;font-size:8px;font-weight:800;letter-spacing:.07em}.supplier-shipment-kpis strong{display:block;color:#0b2d4b;font-size:15px;margin-top:3px}
.supplier-shipment-body{padding:18px 22px 22px;border-top:1px solid #e2eaed;background:#f7fafb}.supplier-shipment-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.supplier-shipment-toolbar form{margin:0}.supplier-mini-edit{position:relative}.supplier-mini-edit>summary{list-style:none;cursor:pointer;padding:8px 11px;border:1px solid #dce6e9;border-radius:10px;background:#fff;color:#31576e;font-size:10px;font-weight:750}.supplier-mini-edit>summary::-webkit-details-marker{display:none}.supplier-mini-edit form{margin-top:8px;padding:12px;border:1px solid #dce6e9;border-radius:12px;background:#fff;max-width:700px}
.supplier-shipment-overview{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:16px}.supplier-split-panel,.supplier-container-cost-panel{background:#fff;border:1px solid #dce6e9;border-radius:16px;overflow:hidden}
.supplier-split-badge{padding:6px 10px;border-radius:999px;background:#eaf7ef;color:#168a56;font-size:10px;font-weight:800}.supplier-split-table{overflow-x:auto}.supplier-split-row{display:grid;grid-template-columns:minmax(210px,1.4fr) 80px 70px 105px 140px 115px 145px;gap:10px;align-items:center;padding:12px 16px;border-bottom:1px solid #edf1f2;min-width:930px;color:#284458;font-size:10px}.supplier-split-row>span:nth-child(n+2){text-align:right}.supplier-split-row>span:last-child{text-align:right}.supplier-split-row strong{color:#0b2d4b}.supplier-split-row small{display:block;color:#8a9aa4;margin-top:2px}.supplier-split-header{background:#f5f8f9;color:#718491;font-size:8.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.supplier-split-edit{min-width:930px}.supplier-live-note{align-self:end;padding:10px 12px;border:1px solid #dce6e9;border-radius:10px;background:#fff;color:#72848f;font-size:9px}
.supplier-shipment-totalbar{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:16px;border:1px solid #dce6e9;border-radius:13px;overflow:hidden;background:#dce6e9}.supplier-shipment-totalbar>div{padding:12px 14px;background:#fff}.supplier-shipment-totalbar span{display:block;color:#85949f;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.supplier-shipment-totalbar strong{display:block;margin-top:4px;color:#0b2d4b;font-size:13px}.supplier-new-shipment{margin-top:14px}
.form input,.form select,.form textarea,.supplier-master-form input,.supplier-master-form select,.supplier-master-form textarea{box-sizing:border-box;width:100%;border:1px solid #cfdbe0!important;border-radius:11px!important;background:#fff!important;color:#14324a!important;min-height:44px;padding:10px 12px;font:inherit}.form textarea,.supplier-master-form textarea{min-height:82px;resize:vertical}.form input:focus,.form select:focus,.form textarea:focus,.supplier-master-form input:focus,.supplier-master-form select:focus,.supplier-master-form textarea:focus{outline:none;border-color:#1aa168!important;box-shadow:0 0 0 3px rgba(26,161,104,.08)!important}.form label,.supplier-master-form label{display:grid;gap:6px;color:#607380;font-size:10px;font-weight:750}
@media(max-width:1150px){.supplier-shipment-overview{grid-template-columns:1fr}.supplier-master-grid{grid-template-columns:1fr 1fr}.supplier-shipment-kpis{display:none}}
@media(max-width:760px){.supplier-master-grid{grid-template-columns:1fr}.supplier-danger-zone,.supplier-shipment-toolbar{align-items:stretch;flex-direction:column}.supplier-shipment-totalbar{grid-template-columns:1fr 1fr}.supplier-section-title{align-items:flex-start;flex-direction:column}}

/* =========================================================
   SeasonFlow v38 — compact supplier panels + pallet split
   ========================================================= */

/* Price history and article cost blocks behave like compact dropdown cards */
.supplier-compact-panel{
  background:#fff;
  border:1px solid #dce6e9;
  border-radius:16px;
  overflow:hidden;
}
.supplier-compact-panel>summary{
  list-style:none;
  cursor:pointer;
}
.supplier-compact-panel>summary::-webkit-details-marker{display:none}
.supplier-panel-summary{
  border-bottom:0!important;
}
.supplier-panel-summary>div:first-child>span{
  display:block;
  margin-top:3px;
  color:#8a99a4;
  font-size:9px;
  font-weight:600;
  letter-spacing:0;
}
.supplier-panel-summary-right{
  display:flex;
  align-items:center;
  gap:10px;
}
.supplier-compact-panel[open]>.supplier-panel-summary{
  border-bottom:1px solid #e5ecee!important;
}
.supplier-compact-panel[open] .supplier-panel-summary .supplier-chevron{
  transform:rotate(180deg);
}
.supplier-panel-body{
  background:#fff;
}
.supplier-record-edit{
  padding:14px 18px;
  border-bottom:1px solid #e6edef;
  background:#f8fbfa;
}
.supplier-record-edit .supplier-edit-actions{
  justify-content:flex-end;
}
.supplier-record-edit .supplier-form-grid{
  margin-bottom:10px;
}

/* Pallet-driven supplier container split */
.supplier-split-row{
  grid-template-columns:minmax(210px,1.4fr) 58px 72px 78px 68px 105px 140px 115px 145px!important;
  min-width:1080px!important;
}
.supplier-split-edit{
  min-width:0!important;
}
.supplier-split-input-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.supplier-calculated-boxes[readonly]{
  background:#f3f7f5!important;
  color:#0b2d4b!important;
  font-weight:800;
}
.supplier-split-calc-hint{
  margin:8px 0 12px;
  padding:9px 11px;
  border:1px solid #dce6e9;
  border-radius:10px;
  background:#f8fbfa;
  color:#6f818d;
  font-size:9px;
}
.supplier-shipment-totalbar-five{
  grid-template-columns:repeat(5,1fr)!important;
}
@media(max-width:900px){
  .supplier-split-input-grid{grid-template-columns:1fr 1fr!important}
  .supplier-shipment-totalbar-five{grid-template-columns:1fr 1fr!important}
}
@media(max-width:600px){
  .supplier-split-input-grid{grid-template-columns:1fr!important}
}

/* =========================================================
   SeasonFlow v39 - container-specific EK + calculation PDF
   ========================================================= */
.supplier-shipment-toolbar-left{
  display:flex;
  align-items:flex-start;
  gap:9px;
  flex-wrap:wrap;
}
.supplier-pdf-btn{
  display:inline-flex!important;
  align-items:center;
  gap:7px;
  min-height:37px;
  border:1px solid #bcdaca!important;
  background:#edf8f2!important;
  color:#137c4b!important;
  text-decoration:none!important;
  font-weight:800!important;
}
.supplier-pdf-btn:hover{
  background:#e1f3e9!important;
  border-color:#a8cfba!important;
  color:#0f693e!important;
}
.supplier-split-input-grid-four{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.supplier-shipment-totalbar-six{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}
@media(max-width:1100px){
  .supplier-split-input-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .supplier-shipment-totalbar-six{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:650px){
  .supplier-split-input-grid-four{grid-template-columns:1fr!important}
  .supplier-shipment-totalbar-six{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* SeasonFlow v42 — physical container number */
.physical-container-number{
  color:#168a56;
  font-weight:800;
}

.shipment-planned{
  color:#6c5a1c!important;
  background:#fff6d9;
  border:1px solid #eadb9e;
}
.shipment-packhouse{
  color:#7a4f1b!important;
  background:#fff0de;
  border:1px solid #edcfaa;
}

/* v45: customer shortcut from dashboard */
.dashboard-customer-link{color:inherit;text-decoration:none;font-weight:500}
.dashboard-customer-link:hover{color:#079653;text-decoration:underline;text-underline-offset:3px}
.dashboard-customer-link:focus-visible{outline:2px solid #079653;outline-offset:3px;border-radius:4px}

/* SeasonFlow v46 — container traceability */
.container-tracking-badge{
  display:inline-flex;
  align-items:center;
  margin-top:6px;
  padding:4px 9px;
  border-radius:999px;
  border:1px solid #d5e7de;
  background:#eef8f3;
  color:#19744c;
  font-size:9px;
  font-weight:800;
  letter-spacing:.02em;
}
.tracking-readonly[readonly]{
  background:#f3f7f5!important;
  color:#476273!important;
  font-weight:800;
  cursor:not-allowed;
}

/* SeasonFlow v47 — collapsible new season-program form */
.new-program-panel{
  overflow:hidden;
  padding:0!important;
}
.new-program-panel>summary{
  list-style:none;
}
.new-program-panel>summary::-webkit-details-marker{display:none}
.new-program-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:24px 26px;
  cursor:pointer;
  background:#fff;
  user-select:none;
}
.new-program-summary:hover{
  background:#fbfdfc;
}
.new-program-summary-main{
  display:flex;
  align-items:center;
  gap:14px;
}
.new-program-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#eaf7ef;
  color:#12985a;
  font-size:23px;
  line-height:1;
  font-weight:700;
}
.new-program-summary h2{
  margin:0;
}
.new-program-summary p{
  margin:4px 0 0;
  color:#8797a3;
  font-size:10px;
}
.new-program-chevron{
  color:#6f8290;
  font-size:22px;
  transition:transform .18s ease;
}
.new-program-panel[open] .new-program-chevron{
  transform:rotate(180deg);
}
.new-program-body{
  padding:22px 26px 26px;
  border-top:1px solid #e1e8eb;
  background:#fff;
}

/* =========================================================
   SeasonFlow v51 — Settings / multilingual PDF footer
   ========================================================= */
.settings-page{
  max-width:1280px;
  margin:0 auto;
}
.settings-panel{
  border:1px solid #d8e4e8;
  border-radius:18px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 8px 28px rgba(14,52,73,.055);
}
.settings-panel>summary{
  list-style:none;
}
.settings-panel>summary::-webkit-details-marker{display:none}
.settings-summary{
  min-height:102px;
  padding:20px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  cursor:pointer;
  user-select:none;
  background:#fff;
}
.settings-summary:hover{background:#fbfdfc}
.settings-summary-main{
  display:flex;
  align-items:center;
  gap:15px;
}
.settings-summary-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#eaf7ef;
  color:#128f55;
  font-size:22px;
  font-weight:800;
}
.settings-summary-main small{
  display:block;
  margin-bottom:3px;
  color:#13905a;
  font-size:9px;
  font-weight:900;
  letter-spacing:.11em;
}
.settings-summary-main h2{
  margin:0;
  color:#0a2e4d;
}
.settings-summary-main p{
  margin:4px 0 0;
  color:#81929e;
  font-size:10px;
}
.settings-chevron{
  color:#6f8290;
  font-size:23px;
  transition:transform .18s ease;
}
.settings-panel[open] .settings-chevron{transform:rotate(180deg)}
.settings-panel-body{
  padding:22px 24px 26px;
  border-top:1px solid #e1e9ec;
  background:#f9fbfb;
}
.settings-info-row{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
  padding:12px 14px;
  border:1px solid #dce8e3;
  border-radius:13px;
  background:#f1f8f4;
}
.settings-info-icon{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#148c56;
  font-weight:900;
}
.settings-info-row strong{
  display:block;
  color:#17364d;
  font-size:10px;
}
.settings-info-row small{
  display:block;
  margin-top:2px;
  color:#7d8e99;
  font-size:9px;
}
.settings-footer-form{
  display:grid;
  gap:14px;
}
.footer-language-card{
  padding:16px;
  border:1px solid #d9e4e8;
  border-radius:15px;
  background:#fff;
}
.footer-language-head{
  display:flex;
  align-items:center;
  gap:11px;
  margin-bottom:11px;
}
.language-code{
  width:38px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#edf5f1;
  color:#168a56;
  font-size:10px;
  font-weight:900;
}
.footer-language-head strong{
  display:block;
  color:#0b2f4d;
  font-size:11px;
}
.footer-language-head small{
  display:block;
  margin-top:1px;
  color:#8a99a4;
  font-size:9px;
}
.footer-language-card textarea{
  width:100%;
  min-height:105px;
  resize:vertical;
  box-sizing:border-box;
}
.settings-footer-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-top:4px;
}
.footer-preview-note{
  color:#82939e;
  font-size:9px;
  font-weight:700;
}
.footer-preview-note span{
  display:inline-flex;
  margin-right:6px;
  padding:4px 7px;
  border-radius:7px;
  background:#eef5f2;
  color:#168a56;
  font-weight:900;
}
@media(max-width:700px){
  .settings-summary{padding:17px}
  .settings-panel-body{padding:16px}
  .settings-footer-actions{align-items:stretch;flex-direction:column}
}

.footer-format-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px;border:1px solid #d9e4e8;border-radius:15px;background:#fff}
.footer-format-grid label>span{display:block;margin-bottom:7px;color:#6f8290;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.footer-format-grid select{width:100%;box-sizing:border-box}
@media(max-width:700px){.footer-format-grid{grid-template-columns:1fr}}

/* SeasonFlow v53 — container documents + plan/actual */
.container-extension-panel{margin:10px 14px;border:1px solid #dce6e9;border-radius:13px;background:#fbfcfc;overflow:hidden}
.container-extension-panel>summary{list-style:none;display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;color:#17364d;font-size:10px;font-weight:900}
.container-extension-panel>summary::-webkit-details-marker{display:none}
.container-extension-panel>summary .kw-arrow{margin-left:auto}
.container-extension-panel[open]>summary .kw-arrow{transform:rotate(180deg)}
.extension-summary-meta{margin-left:auto;color:#7d909b;font-size:9px;font-weight:700}
.container-extension-panel>summary .extension-summary-meta+.kw-arrow{margin-left:0}
.container-extension-body{padding:14px;border-top:1px solid #e3eaed;background:#fff}
.document-list,.actual-cost-list{display:grid;gap:7px;margin-bottom:12px}
.document-row,.actual-cost-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:1px solid #e1e9ec;border-radius:10px;background:#fbfcfc}
.document-row>div{display:flex;align-items:center;gap:9px;min-width:0}
.document-row a{color:#0c6845;font-weight:800;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.document-row small,.actual-cost-list small{color:#8a99a4;font-size:8px}
.document-type{padding:3px 6px;border-radius:6px;background:#eaf7ef;color:#168a56;font-size:8px;font-weight:900}
.document-upload-form,.actual-cost-form{display:grid;grid-template-columns:170px 1fr auto;gap:9px;align-items:end}
.actual-cost-form{grid-template-columns:1fr 140px 1fr auto}
.actual-kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:12px}
.actual-kpi-grid>div{padding:10px;border:1px solid #e0e9ec;border-radius:10px;background:#f8fbfa}
.actual-kpi-grid small{display:block;color:#84949e;font-size:8px;text-transform:uppercase;font-weight:900}
.actual-kpi-grid b{display:block;margin-top:4px;color:#123650;font-size:11px}
.actual-cost-list>div>span{display:flex;flex-direction:column}
.actual-cost-list form{margin-left:auto}
@media(max-width:900px){.actual-kpi-grid{grid-template-columns:repeat(2,1fr)}.document-upload-form,.actual-cost-form{grid-template-columns:1fr}}
.extension-summary-meta.docs-complete{color:#148b55;font-weight:900}

/* SeasonFlow v54 — Operations dashboard, tasks and timeline */
.operations-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}
.operations-card{padding:0;overflow:hidden}
.operations-card .cardhead{padding:16px 18px;border-bottom:1px solid #e5ecef}
.operations-count{min-width:32px;height:32px;padding:0 9px;display:grid;place-items:center;border-radius:10px;background:#eef6f2;color:#168b56;font-weight:900;font-size:11px}
.operations-list{display:grid}
.operation-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;border-bottom:1px solid #edf1f3;text-decoration:none;color:#17364d}
.operation-row:last-child{border-bottom:0}
.operation-row:hover{background:#fafcfc}
.operation-row strong{display:block;font-size:10px}
.operation-row small{display:block;margin-top:3px;color:#84949e;font-size:8px}
.operation-row>span{display:flex;align-items:flex-end;flex-direction:column;gap:4px;max-width:45%;text-align:right;color:#667b88;font-size:9px}
.operation-row>span b{padding:3px 6px;border-radius:6px;background:#fff0ed;color:#bb3c2d;font-size:7px;text-transform:uppercase}
.operation-overdue{background:#fff9f7}
.alert-row>span{color:#a06b15}
.operations-empty{padding:22px;text-align:center;color:#8a9aa4;font-size:9px}

.container-task-list{display:grid;gap:7px;margin-bottom:12px}
.container-task-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid #e2e9ec;border-radius:10px;background:#fbfcfc}
.container-task-row.task-done{opacity:.58}
.container-task-row.task-overdue{border-color:#f1cbc3;background:#fff9f7}
.task-check form{margin:0}
.task-toggle,.task-toggle-static{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;border:1px solid #cfdce1;background:#fff;color:#168b56;font-weight:900;cursor:pointer}
.task-copy{min-width:0;flex:1}
.task-copy strong{display:block;color:#17364d;font-size:10px}
.task-copy small{display:block;margin-top:2px;color:#81919c;font-size:8px}
.task-overdue-badge{padding:4px 7px;border-radius:7px;background:#fff0ed;color:#b64435;font-size:7px;font-weight:900;text-transform:uppercase}
.container-task-form{display:grid;grid-template-columns:2fr 145px 125px 180px auto;gap:8px;align-items:end}

.container-timeline{position:relative;display:grid;gap:0;padding-left:8px}
.timeline-event{position:relative;display:grid;grid-template-columns:18px 1fr;gap:10px;padding:0 0 16px}
.timeline-event:before{content:"";position:absolute;left:8px;top:12px;bottom:-3px;width:1px;background:#dce6e9}
.timeline-event:last-child:before{display:none}
.timeline-dot{position:relative;z-index:1;width:9px;height:9px;margin-top:4px;border-radius:50%;background:#168b56;box-shadow:0 0 0 4px #edf7f2}
.timeline-copy strong{display:block;color:#17364d;font-size:10px}
.timeline-copy p{margin:3px 0;color:#657984;font-size:9px}
.timeline-copy small{color:#8a99a4;font-size:8px}
@media(max-width:1000px){
  .operations-grid{grid-template-columns:1fr}
  .container-task-form{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .container-task-form{grid-template-columns:1fr}
  .operation-row{align-items:flex-start}
}

/* SeasonFlow v55 — supplier quality & claims */
.supplier-performance-card{margin:14px 0 18px;background:#fff;border:1px solid #e1e9ec;border-radius:14px;overflow:hidden}
.supplier-performance-head{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;border-bottom:1px solid #edf1f3}
.supplier-performance-head small{font-size:7px;letter-spacing:.1em;color:#168b56;font-weight:900}
.supplier-performance-head h2{margin:3px 0 1px;font-size:14px;color:#17364d}
.supplier-performance-head p{margin:0;color:#85949d;font-size:8px}
.supplier-score-badge{padding:8px 11px;border-radius:10px;background:#edf8f2;color:#148b55;font-size:13px;font-weight:900}
.supplier-performance-grid{display:grid;grid-template-columns:repeat(5,1fr)}
.supplier-performance-grid>div{padding:13px 18px;border-right:1px solid #edf1f3}
.supplier-performance-grid>div:last-child{border:0}
.supplier-performance-grid span{display:block;color:#8b9aa3;font-size:7px;text-transform:uppercase;font-weight:800}
.supplier-performance-grid strong{display:block;margin-top:4px;color:#17364d;font-size:13px}
.supplier-quality-claims-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}
.supplier-quality-panel,.supplier-claim-panel{margin:0}
.quality-report-row,.claim-row{display:flex;gap:11px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #edf1f3}
.quality-score-circle{flex:0 0 38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eef5f2;color:#168b56;font-weight:900;font-size:13px}
.quality-score-circle small{font-size:6px;margin-left:-4px}
.quality-report-copy{flex:1;min-width:0}
.quality-report-copy strong,.claim-row strong{display:block;color:#17364d;font-size:9px}
.quality-report-copy span{display:block;margin-top:3px;color:#637984;font-size:7px}
.quality-report-copy small,.claim-row small{display:block;margin-top:3px;color:#8998a1;font-size:7px}
.quality-score-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}
.claim-row{justify-content:space-between}
.claim-row>div:first-child{min-width:0;flex:1}
.claim-row p{font-size:8px;color:#617681;margin:5px 0 0}
.claim-status{display:inline-block;margin-bottom:5px;padding:3px 6px;border-radius:6px;font-size:6px;font-weight:900;text-transform:uppercase}
.claim-open{background:#fff2df;color:#a66b0b}.claim-in_review{background:#edf3fb;color:#326b9c}.claim-resolved{background:#eaf7f0;color:#148b55}.claim-rejected{background:#f3f4f5;color:#65757e}
.claim-amount{display:flex;align-items:flex-end;flex-direction:column;gap:5px}
.claim-edit summary{font-size:7px;color:#47738e;cursor:pointer}
.claim-edit form{min-width:220px;margin-top:6px}
@media(max-width:1000px){.supplier-performance-grid{grid-template-columns:repeat(2,1fr)}.supplier-quality-claims-grid{grid-template-columns:1fr}.quality-score-grid{grid-template-columns:repeat(2,1fr)}}

/* SeasonFlow v56 — operational container claims */
.claim-open-badge{display:inline-block;margin-left:8px;padding:3px 7px;border-radius:7px;background:#fff0ed;color:#b54132;font-size:7px;font-weight:900;text-transform:uppercase}
.container-claim-card{margin-bottom:10px;padding:12px;border:1px solid #e2e9ec;border-radius:11px;background:#fbfcfc}
.container-claim-card.claim-is-open{border-left:3px solid #d96c52}
.container-claim-head{display:flex;justify-content:space-between;gap:12px}
.container-claim-head strong{display:block;color:#17364d;font-size:10px}
.container-claim-head small{display:block;margin-top:3px;color:#84949e;font-size:8px}
.container-claim-money{text-align:right}
.container-claim-money strong{font-size:12px}
.container-claim-description{margin:9px 0;color:#526b79;font-size:9px}
.claim-metrics{display:flex;flex-wrap:wrap;gap:7px}
.claim-metrics span{padding:5px 7px;border-radius:7px;background:#eef3f5;color:#71838d;font-size:7px}
.claim-metrics b{color:#17364d}
.claim-supplier-link,.claim-resolution{margin-top:8px;padding:7px 9px;border-radius:8px;background:#f4f8f6;color:#58716a;font-size:8px}
.claim-evidence-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.claim-evidence-list a{padding:5px 7px;border:1px solid #dce6e9;border-radius:7px;color:#176c50;text-decoration:none;font-size:7px;font-weight:800}
.claim-actions{display:flex;align-items:flex-end;gap:8px;margin-top:10px}
.claim-actions>details{flex:1}
.claim-actions>details>summary,.claim-create-panel>summary{cursor:pointer;color:#176c50;font-size:8px;font-weight:900}
.claim-edit-grid,.claim-create-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.claim-evidence-upload{display:flex;gap:6px;align-items:center}
.claim-evidence-upload input{max-width:180px;font-size:7px}
.claim-create-panel{margin-top:10px;padding-top:10px;border-top:1px solid #e5ecef}
.claim-create-panel>form{margin-top:10px}
.claim-new{background:#fff0ed;color:#b54132}.claim-supplier{background:#edf3fb;color:#326b9c}.claim-credit{background:#fff6df;color:#9c711a}.claim-done{background:#eaf7f0;color:#148b55}
@media(max-width:900px){.claim-edit-grid,.claim-create-grid{grid-template-columns:repeat(2,1fr)}.claim-actions{align-items:stretch;flex-direction:column}}
@media(max-width:600px){.claim-edit-grid,.claim-create-grid{grid-template-columns:1fr}.container-claim-head{flex-direction:column}.container-claim-money{text-align:left}}

.supplier-performance-grid{grid-template-columns:repeat(2,1fr)}

/* SeasonFlow v57 — dedicated dashboard open claims worklist */
.dashboard-claims-card{margin:16px 0;padding:0;overflow:hidden}
.dashboard-claims-card .cardhead{padding:16px 18px;border-bottom:1px solid #e5ecef}
.operations-count.claim-count{background:#fff0ed;color:#b54132}
.dashboard-claims-table{overflow-x:auto}
.dashboard-claims-head,.dashboard-claim-row{display:grid;grid-template-columns:90px 1.2fr 1.15fr 110px 125px 115px 90px 30px;gap:10px;align-items:center;min-width:930px;padding:10px 16px}
.dashboard-claims-head{background:#f7f9fa;color:#82929b;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e7edef}
.dashboard-claim-row{color:#526a77;text-decoration:none;font-size:8px;border-bottom:1px solid #edf1f3}
.dashboard-claim-row:last-child{border-bottom:0}
.dashboard-claim-row:hover{background:#fffaf8}
.dashboard-claim-row b{display:block;color:#17364d;font-size:9px}
.dashboard-claim-row small{display:block;margin-top:2px;color:#8b9aa3;font-size:7px}
.dashboard-claim-row .claim-status{font-style:normal}
.dashboard-claim-open{font-size:15px;color:#168b56;font-weight:900;text-align:right}
.dashboard-no-claims{min-width:930px}

/* SeasonFlow v58 — collapsible dashboard panels + resolvable container alerts */
.dashboard-operation-panel{padding:0;overflow:hidden}
.dashboard-operation-panel>summary{cursor:pointer;list-style:none;user-select:none}
.dashboard-operation-panel>summary::-webkit-details-marker{display:none}
.dashboard-panel-summary-right{display:flex;align-items:center;gap:10px}
.dashboard-panel-chevron{font-size:14px;color:#6f858f;transition:transform .18s ease}
.dashboard-operation-panel:not([open]) .dashboard-panel-chevron{transform:rotate(-90deg)}
.dashboard-operation-panel:not([open]) .cardhead{border-bottom:0}
.container-hints-panel .container-extension-body{display:flex;flex-direction:column;gap:8px}
.container-hint-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid #e4eaed;border-radius:10px;background:#fafcfc}
.container-hint-row strong{display:block;color:#17364d;font-size:9px}
.container-hint-row small{display:block;margin-top:3px;color:#7c8f99;font-size:8px}
.container-hint-row.hint-documents{border-left:3px solid #d98a38}
.container-hint-row.hint-eta{border-left:3px solid #4e86ad}
.container-hint-row.hint-claim{border-left:3px solid #d15f50}
@media(max-width:700px){.container-hint-row{align-items:stretch;flex-direction:column}.container-hint-row form{align-self:flex-end}}

/* SeasonFlow v59 — robust dashboard accordion buttons */
.dashboard-panel-toggle{width:100%;border:0;background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer}
.dashboard-panel-toggle.cardhead{display:flex;justify-content:space-between;align-items:center}
.dashboard-panel-body[hidden]{display:none!important}
.dashboard-operation-panel:not(.is-open) .dashboard-panel-chevron{transform:rotate(-90deg)}
.dashboard-operation-panel:not(.is-open) .dashboard-panel-toggle{border-bottom:0}
.dashboard-operation-panel.is-open .dashboard-panel-chevron{transform:rotate(0deg)}

/* SeasonFlow v60 — product positions directly below transport data */
.container-products-primary{margin:10px 0 12px}
.container-products-primary .tablewrap{border:1px solid #e4eaed;border-radius:10px;overflow-x:auto;background:#fff}
.container-products-primary .positiontable{margin:0}

/* SeasonFlow v61 — licensing */
.license-status-card{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;border:1px solid #dfe8eb;border-radius:12px;background:#f8fbfa;margin-bottom:12px}
.license-status-main{display:flex;align-items:center;gap:10px}.license-status-main small,.license-info-grid small{display:block;color:#82949e;font-size:7px;text-transform:uppercase;font-weight:900}.license-status-main strong{display:block;margin-top:3px;color:#17364d;font-size:12px}
.license-status-dot{width:10px;height:10px;border-radius:50%;background:#168b56;box-shadow:0 0 0 5px #e6f4ed}.license-expired .license-status-dot{background:#c34f43;box-shadow:0 0 0 5px #faece9}.license-trial .license-status-dot{background:#d18a28;box-shadow:0 0 0 5px #fff3df}
.license-days{text-align:right}.license-days b{display:block;color:#17364d;font-size:18px}.license-days span{color:#81939d;font-size:7px}
.license-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:12px}.license-info-grid>div{padding:10px;border:1px solid #e4eaed;border-radius:9px}.license-info-grid strong{display:block;margin-top:4px;color:#17364d;font-size:9px;word-break:break-all}
.license-activation-form{display:flex;align-items:flex-end;gap:10px;margin-top:12px}.license-activation-form label{flex:1}.license-activation-form textarea{width:100%;font-family:monospace;font-size:8px}.license-remove-form{margin-top:10px}.license-message{padding:9px 11px;border-radius:8px;font-size:8px;font-weight:800}.license-message.success{background:#eaf7f0;color:#148b55}.license-message.error{background:#fff0ed;color:#b54132}
.license-required-card{max-width:620px;margin:45px auto;padding:32px;text-align:center;background:#fff;border:1px solid #e0e8eb;border-radius:18px;box-shadow:0 12px 35px rgba(20,50,70,.08)}.license-lock{width:54px;height:54px;margin:0 auto 15px;display:grid;place-items:center;border-radius:15px;background:#fff1e6;color:#d17a2a;font-size:22px}.license-required-card h2{color:#17364d}.license-required-card p{color:#718690}.license-required-id{margin:18px 0;padding:12px;background:#f5f8f9;border-radius:10px}.license-required-id small{display:block;color:#8a9aa4;font-size:7px}.license-required-id strong{display:block;margin-top:5px;font-family:monospace;color:#17364d}.license-required-card .btn{margin:4px}
@media(max-width:700px){.license-info-grid{grid-template-columns:1fr}.license-activation-form{flex-direction:column;align-items:stretch}}

.login-trial-note{margin-top:14px;padding:10px 12px;border-radius:9px;background:#fff6e7;color:#7d622f;font-size:8px}.login-trial-note b,.login-trial-note span{display:block}.login-trial-note span{margin-top:3px}

/* SeasonFlow v62 — activation reminder */
.activation-reminder-bar{margin:0 22px 2px;padding:11px 14px;display:flex;align-items:center;gap:11px;border:1px solid #efd9aa;border-radius:11px;background:#fff8e8;color:#6f5a2b;box-shadow:0 3px 12px rgba(93,72,27,.05)}
.activation-reminder-icon{width:27px;height:27px;display:grid;place-items:center;flex:0 0 27px;border-radius:8px;background:#e5a63c;color:#fff;font-size:13px;font-weight:900}
.activation-reminder-copy{flex:1;min-width:0}.activation-reminder-copy strong{display:block;color:#6b5122;font-size:9px}.activation-reminder-copy span{display:block;margin-top:2px;color:#8b7446;font-size:8px}
.activation-reminder-action{padding:7px 10px;border-radius:8px;background:#17364d;color:#fff;text-decoration:none;font-size:8px;font-weight:900;white-space:nowrap}
.activation-reminder-user{font-size:8px;color:#806b3e;text-align:right}
.activation-reminder-urgent{border-color:#edb5ad;background:#fff0ed}.activation-reminder-urgent .activation-reminder-icon{background:#c65245}.activation-reminder-urgent .activation-reminder-copy strong{color:#a53d34}
.activation-complete-box{display:flex;align-items:center;gap:11px;padding:13px;border:1px solid #cfe8da;border-radius:10px;background:#eef8f3}.activation-complete-box>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#168b56;color:#fff;font-weight:900}.activation-complete-box strong{display:block;color:#176348;font-size:9px}.activation-complete-box small{display:block;margin-top:3px;color:#66847a;font-size:8px}
.license-activation-form input[type=password]{width:100%;min-height:40px}
@media(max-width:760px){.activation-reminder-bar{margin:0 12px;align-items:flex-start;flex-wrap:wrap}.activation-reminder-action,.activation-reminder-user{margin-left:38px}}

/* SeasonFlow v63 — independent dashboard accordions */
.operations-grid{align-items:start}
.dashboard-operation-panel{align-self:start;height:auto;min-height:0}
.dashboard-operation-panel .dashboard-panel-body{width:100%}
.dashboard-operation-panel:not(.is-open){height:auto!important}

/* SeasonFlow v64 — skipped weeks + persistent drag/drop documents */
.kw-card{position:relative}
.kw-card.kw-skipped{border-left:4px solid #8a98a1;background:#fbfcfc}
.kw-light.skipped i{background:#8a98a1}
.kw-badge.skipped{background:#eef2f4;color:#667983;border:1px solid #dce4e7}
.week-skip-form{position:absolute;top:25px;right:142px;z-index:4;margin:0}
.week-skip-btn{min-width:96px;padding:7px 12px;border:1px solid #d6e0e4;border-radius:999px;background:#fff;color:#607681;font-family:inherit;font-size:9px;font-weight:900;cursor:pointer;box-shadow:0 2px 7px rgba(20,45,60,.04)}
.week-skip-btn:hover{border-color:#98aab2;background:#f7f9fa;color:#17364d}
.week-skip-btn.is-skipped{background:#eef2f4;color:#526872}
.kw-card.has-week-skip .kw-empty-copy{padding-right:112px}
.kw-skipped .kw-body{background:#fafbfb}

.document-drop-form{grid-template-columns:170px minmax(240px,1fr) auto;align-items:stretch}
.document-drop-zone{position:relative;min-height:72px;padding:10px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1.5px dashed #b8c9d0;border-radius:10px;background:#f8fbfc;color:#657c88;cursor:pointer;text-align:center;transition:.15s ease}
.document-drop-zone:hover,.document-drop-zone.drag-active{border-color:#169a67;background:#eef9f4;color:#176b50}
.document-drop-zone .document-file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.document-drop-icon{font-size:18px;line-height:1;color:#168b5d;font-weight:900}
.document-drop-zone strong{margin-top:2px;font-size:9px;color:#17364d}
.document-drop-zone small{margin-top:2px;font-size:7px;color:#82949d}
.document-selected-files{grid-column:2/3;padding:6px 8px;border-radius:7px;background:#eef5f7;color:#5c7581;font-size:7px;overflow:hidden}
.document-selected-files small{display:block;font-weight:900;text-transform:uppercase;color:#81929a}
.document-selected-files span{display:block;margin-top:2px;white-space:normal;word-break:break-word}
@media(max-width:1000px){
  .week-skip-form{top:19px;right:126px}
  .week-skip-btn{min-width:84px;padding:6px 9px}
  .kw-card.has-week-skip .kw-empty-copy{padding-right:95px}
}
@media(max-width:720px){
  .week-skip-form{position:static;margin:0 14px 10px;display:flex;justify-content:flex-end}
  .kw-card.has-week-skip .kw-empty-copy{padding-right:0}
  .document-drop-form{grid-template-columns:1fr}
  .document-selected-files{grid-column:1}
}

/* SeasonFlow v65 — skipped weeks stay closed and reactivate button no longer overlaps */
.kw-card.kw-skipped .kw-body{display:none!important}
.kw-card.kw-skipped.expanded .kw-body{display:none!important}
.kw-card.kw-skipped .kw-arrow svg{transform:none!important}
.kw-card.kw-skipped .week-skip-form{right:205px}
.kw-card.kw-skipped .week-skip-btn{min-width:118px}
.kw-card.kw-skipped .kw-empty-copy{padding-right:150px}
@media(max-width:1200px){
  .kw-card.kw-skipped .week-skip-form{right:190px}
}
@media(max-width:1000px){
  .kw-card.kw-skipped .week-skip-form{right:178px}
  .kw-card.kw-skipped .week-skip-btn{min-width:108px}
}
@media(max-width:720px){
  .kw-card.kw-skipped .week-skip-form{position:static;margin:0 14px 10px;display:flex;justify-content:flex-end}
  .kw-card.kw-skipped .kw-empty-copy{padding-right:0}
}

/* SeasonFlow v66 — container customer payments */
.container-payment-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:10px}
.container-payment-kpis>div{padding:10px 11px;border:1px solid #e2e9ec;border-radius:9px;background:#f8fafb}
.container-payment-kpis small{display:block;color:#81939d;font-size:7px;font-weight:900;text-transform:uppercase}
.container-payment-kpis strong{display:block;margin-top:4px;color:#17364d;font-size:10px}
.payment-open-value{color:#b44b3f!important}.payment-paid-value{color:#168b56!important}
.payment-status-badge{display:inline-block!important;width:auto;padding:4px 7px;border-radius:999px;font-size:7px!important}
.payment-status-badge.paid{background:#e9f7ef;color:#168b56!important}
.payment-status-badge.partial{background:#fff4df;color:#9b6f1b!important}
.payment-status-badge.unpaid{background:#fff0ed;color:#b54132!important}
.container-payment-account-link{margin-bottom:9px}
.container-payment-account-link a{color:#177153;text-decoration:none;font-size:8px;font-weight:900}
.container-payment-list{display:flex;flex-direction:column;gap:7px;margin-bottom:10px}
.container-payment-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;border:1px solid #e4eaed;border-radius:9px;background:#fff}
.container-payment-row strong{display:block;color:#17364d;font-size:9px}
.container-payment-row small{display:block;margin-top:2px;color:#7c8f99;font-size:7px}
.container-payment-form{display:grid;grid-template-columns:125px 130px 160px 1fr 1fr auto;gap:8px;align-items:end;padding-top:10px;border-top:1px solid #e6ecef}
.container-payment-form input,.container-payment-form select{min-width:0}
@media(max-width:1100px){.container-payment-form{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.container-payment-kpis{grid-template-columns:repeat(2,1fr)}.container-payment-form{grid-template-columns:1fr}}

/* SeasonFlow v68 — customer overview PDF action */
.customer-pdf-action{display:flex;align-items:center;gap:6px}
.customer-pdf-action select{min-height:34px;padding:0 8px;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:rgba(255,255,255,.12);color:#fff;font-size:8px;font-weight:900}
.customer-pdf-action select option{color:#17364d;background:#fff}
@media(max-width:850px){.customer-pdf-action{width:100%}.customer-pdf-action .btn{flex:1}}

.customer-inline-pdf-action{display:flex;align-items:center;gap:6px}
.customer-inline-pdf-action select{min-height:31px;padding:0 8px;border:1px solid #d8e2e7;border-radius:8px;background:#fff;color:#17364d;font-size:8px;font-weight:900}
.customer-shipped-table{min-width:980px}

/* SeasonFlow v69 — compact dashboard KPI row */
.cards{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
.cards .metric{
  min-height:92px!important;
  padding:16px 20px!important;
  border-radius:14px!important;
}
.cards .metric span{font-size:8px!important;line-height:1.15!important}
.cards .metric strong{margin-top:8px!important;font-size:22px!important;line-height:1!important}
.cards .metric small{margin-top:7px!important;font-size:9px!important;line-height:1.15!important}
@media(max-width:900px){.cards{grid-template-columns:1fr!important}}
/* SeasonFlow v70 — unify dashboard KPI headings with section headings */
.cards .metric span{
  font-size:17px!important;
  line-height:1.2!important;
  font-weight:700!important;
  color:var(--ink)!important;
}

/* SeasonFlow v71 — supplier notes + collapsible customer transactions */
.supplier-notes-panel{margin:14px 0}
.customer-detail-transactions{
  overflow:hidden;
  border:1px solid #dce5e9;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 22px rgba(17,47,68,.045);
}
.customer-detail-transactions>summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:15px;
  background:#fff;
}
.customer-detail-transactions>summary::-webkit-details-marker{display:none}
.customer-detail-transactions[open] .customer-detail-notes-chevron{transform:rotate(180deg)}
.customer-transactions-body{
  border-top:1px solid #e1e8eb;
  background:#fff;
}
.customer-detail-transactions .tablewrap{margin:0}
.customer-detail-transactions table{margin:0}

/* SeasonFlow v72 — compact customer finance KPI row */
.customer-fin-cards{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:10px!important;
}
.customer-fin-cards .metric{
  min-height:86px!important;
  padding:14px 16px!important;
  border-radius:14px!important;
}
.customer-fin-cards .metric span{
  font-size:11px!important;
  line-height:1.15!important;
  font-weight:800!important;
}
.customer-fin-cards .metric strong{
  margin-top:7px!important;
  font-size:21px!important;
  line-height:1!important;
}
.customer-fin-cards .metric small{
  margin-top:5px!important;
  font-size:8px!important;
  line-height:1.15!important;
}
.creditbar{margin-top:4px!important}
@media(max-width:1100px){
  .customer-fin-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .customer-fin-cards{grid-template-columns:1fr!important}
}

/* SeasonFlow v73 — compact season-program KPI row */
.five-cards{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:12px!important;
}
.five-cards .metric{
  min-height:82px!important;
  padding:13px 16px!important;
  border-radius:14px!important;
}
.five-cards .metric span{
  font-size:10px!important;
  line-height:1.15!important;
  font-weight:800!important;
}
.five-cards .metric strong{
  margin-top:7px!important;
  font-size:20px!important;
  line-height:1.05!important;
  white-space:nowrap;
}
@media(max-width:1050px){
  .five-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .five-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:520px){
  .five-cards{grid-template-columns:1fr!important}
}

/* SeasonFlow v74 — uniform document upload controls */
.document-upload-form{
  align-items:stretch!important;
  gap:10px!important;
}
.document-upload-form>select[name="document_type"]{
  height:38px!important;
  min-height:38px!important;
  align-self:center!important;
  padding:0 34px 0 12px!important;
  border-radius:9px!important;
  font-size:10px!important;
  line-height:38px!important;
}
.document-upload-form>.btn.primary.small{
  height:38px!important;
  min-height:38px!important;
  align-self:center!important;
  padding:0 16px!important;
  border-radius:9px!important;
  font-size:10px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
@media(max-width:850px){
  .document-upload-form>select[name="document_type"],
  .document-upload-form>.btn.primary.small{
    width:100%!important;
  }
}

/* SeasonFlow v75 — uniform rounded form fields in actual-cost entry */
.actual-cost-form input,
.actual-cost-form select,
.actual-cost-form textarea{
  box-sizing:border-box!important;
  min-height:38px!important;
  padding:8px 12px!important;
  border:1px solid #cbd9df!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#12324a!important;
  font:inherit!important;
  outline:none!important;
}
.actual-cost-form input:focus,
.actual-cost-form select:focus,
.actual-cost-form textarea:focus{
  border-color:#76b8a2!important;
  box-shadow:0 0 0 3px rgba(36,166,111,.08)!important;
}
.actual-cost-form .btn{
  min-height:38px!important;
  border-radius:10px!important;
}

/* SeasonFlow v76 — uniform rounded inputs for container tasks/reminders */
.container-task-form input,
.container-task-form select,
.container-task-form textarea{
  box-sizing:border-box!important;
  min-height:38px!important;
  padding:8px 12px!important;
  border:1px solid #cbd9df!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#12324a!important;
  font:inherit!important;
  outline:none!important;
}
.container-task-form input:focus,
.container-task-form select:focus,
.container-task-form textarea:focus{
  border-color:#76b8a2!important;
  box-shadow:0 0 0 3px rgba(36,166,111,.08)!important;
}
.container-task-form .btn{
  min-height:38px!important;
  border-radius:10px!important;
}

/* Keep native date/select controls visually aligned with SeasonFlow fields */
.container-task-form input[type="date"]{
  appearance:auto;
}

/* SeasonFlow v80 — independently collapsible containers */
.containerhead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.containerhead-summary{min-width:0;flex:1}
.containerhead-controls{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.container-collapse-toggle{
  width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;
  border:0;border-radius:10px;background:#f1f5f6;color:#34566c;cursor:pointer;
  transition:background .15s ease,transform .15s ease;
}
.container-collapse-toggle:hover{background:#e7eef1}
.container-collapse-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}
.container-collapsible.expanded .container-collapse-toggle svg{transform:rotate(180deg)}
.container-collapsible.collapsed .container-collapse-toggle svg{transform:rotate(0deg)}
.container-collapsible.collapsed .containerhead{border-bottom:0}
.container-collapsible.collapsed{padding-bottom:0}
.container-main-body[hidden]{display:none!important}
@media(max-width:900px){
  .containerhead{align-items:stretch;flex-direction:column}
  .containerhead-controls{justify-content:space-between}
}

/* SeasonFlow v82 — container header tracking + vessel/ETA */
.container-title-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}
.container-tracking-inline{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border:1px solid #cce6d8;
  border-radius:999px;
  background:#eef8f3;
  color:#177653;
  font-size:8px;
  line-height:1;
  font-weight:900;
  white-space:nowrap;
}
.container-vessel-eta{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:7px;
  flex-wrap:wrap;
}
.container-vessel-eta>span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:4px 8px;
  border:1px solid #dce6ea;
  border-radius:999px;
  background:#f7fafb;
  color:#506b7a;
}
.container-vessel-eta small{
  font-size:7px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  color:#81949e;
}
.container-vessel-eta strong{
  font-size:8px;
  line-height:1;
  color:#17364d;
  font-weight:900;
}
@media(max-width:760px){
  .container-title-line{align-items:flex-start}
  .container-tracking-inline{white-space:normal}
}

/* SeasonFlow v83 — program header back navigation */
.program-page-header > div:first-child{margin-left:18px;min-width:0}
.program-page-header h1{min-width:0}
.program-header-heading{display:flex;align-items:center;gap:10px;min-width:0}
.program-header-heading>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.program-back-btn{width:30px;height:30px;flex:0 0 30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d9e4e8;border-radius:9px;background:#f5f8f9;color:#17415d;text-decoration:none;font-size:23px;line-height:1;font-weight:700;box-shadow:0 2px 8px rgba(18,54,77,.04);transition:.15s ease}
.program-back-btn:hover{background:#eaf5f1;border-color:#c8e4d8;color:#11845a;transform:translateX(-1px)}
.program-header-sub{display:block;padding-left:40px}
@media(max-width:1050px){.program-page-header>div:first-child{margin-left:6px}.program-header-sub{padding-left:40px}}

/* SeasonFlow v84 — unified navigation controls */
.global-header-left{
  display:flex;
  align-items:flex-start;
  gap:12px;
  min-width:0;
}
.global-header-copy{min-width:0}
.global-back-btn{
  width:28px;
  height:28px;
  flex:0 0 28px;
  margin-top:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:1px solid #dbe5e9;
  border-radius:8px;
  background:#f7fafb;
  color:#16435f;
  font-size:21px;
  line-height:1;
  font-weight:700;
  cursor:pointer;
  box-shadow:none;
  transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease;
}
.global-back-btn:hover{
  background:#eef7f3;
  border-color:#cce3d8;
  color:#11845a;
  transform:translateX(-1px);
}

/* Sidebar collapse: small, background-free and away from the logo artwork. */
.brand-logo-wrap .sidebar-collapse-btn,
.shell:not(.sidebar-collapsed) .brand-logo-wrap .sidebar-collapse-btn{
  top:10px!important;
  left:10px!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:25px!important;
  height:25px!important;
  border:0!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#178d58!important;
  box-shadow:none!important;
  opacity:.9;
}
.brand-logo-wrap .sidebar-collapse-btn:hover{
  background:rgba(20,157,97,.08)!important;
  color:#0c7548!important;
  box-shadow:none!important;
}
.brand-logo-wrap .sidebar-collapse-icon{
  margin:0!important;
  font-size:21px!important;
  line-height:1!important;
}
.shell.sidebar-collapsed .brand-logo-wrap .sidebar-collapse-btn{
  top:10px!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  transform:translateX(-50%)!important;
  background:transparent!important;
  box-shadow:none!important;
}
.shell.sidebar-collapsed .brand-logo-wrap .sidebar-collapse-icon{
  transform:rotate(180deg);
}

/* v83 program-only header offsets are superseded by the global header control. */
.program-page-header>div:first-child{margin-left:0!important}
.program-header-sub{padding-left:0!important}

@media(max-width:900px){
  .global-back-btn{display:inline-flex}
}

/* SeasonFlow v85 — vessel + ETD + ETA in every collapsed container header */
.container-vessel-eta{gap:7px!important}
.container-vessel-eta>span{padding:4px 8px!important}
