*{box-sizing:border-box}body{margin:0;background:#f4f3ef;color:#182a3d;font:16px/1.5 system-ui,sans-serif}header{background:#182a3d;color:white;padding:22px 5vw;display:flex;align-items:center;justify-content:space-between;gap:20px}header a{color:white;text-decoration:none}header strong{letter-spacing:2px}nav{display:flex;gap:24px;padding:16px 5vw;background:white;overflow:auto;border-bottom:1px solid #ddd}nav a{color:#334a5b;text-decoration:none;white-space:nowrap}main{max-width:1200px;margin:32px auto;padding:0 24px}h1{font-size:32px;margin:0 0 8px}h2{font-size:22px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:13px;color:#6c7a7d}.muted{color:#657378}.card{display:block;background:white;border:1px solid #dddcd4;border-radius:12px;padding:24px;margin:18px 0;text-decoration:none;color:inherit}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.grid .card{margin:0}.number{font-size:36px;font-weight:650}.top{display:flex;justify-content:space-between;gap:16px;align-items:center}button,.button{display:inline-block;background:#d36d46;color:white;border:0;border-radius:7px;padding:12px 18px;font:inherit;text-decoration:none;cursor:pointer}button:hover,.button:hover{background:#b9512a}header button{padding:7px 12px;background:#34485b}input,select,textarea{font:inherit;max-width:100%;padding:10px;border:1px solid #b8c0c2;border-radius:6px;background:white}label{display:block;margin:6px 0}form p{margin:18px 0}.table{overflow:auto}table{width:100%;border-collapse:collapse;background:white}th,td{text-align:left;padding:14px;border-bottom:1px solid #ddd;white-space:nowrap}th{font-size:14px;color:#586a73}.notice{background:#fff0d9;border-left:4px solid #d36d46;padding:14px}.errorlist{color:#ad3128}.login{max-width:440px;margin-top:10vh;background:white;padding:36px;border-radius:12px}.login input{width:100%}.tag{font-size:13px;background:#e6ece8;border-radius:5px;padding:4px 8px}.actions{display:flex;gap:12px;flex-wrap:wrap}@media(max-width:600px){header{padding:16px}main{padding:0 16px}nav{gap:18px;padding:14px 16px}.top{align-items:flex-start;flex-direction:column}h1{font-size:28px}}

/* Compact mobile forms with touch-sized controls. */
@media(max-width:600px){
 body{font-size:15px;line-height:1.4}
 header{padding:10px 12px;gap:10px}header strong{font-size:14px;letter-spacing:1px}
 nav{gap:14px;padding:0 12px}nav a{display:flex;align-items:center;min-height:44px;font-size:14px}
 main{margin:16px auto;padding:0 12px}h1{font-size:24px;margin:0 0 6px}h2{font-size:18px;margin:0 0 8px}
 p{margin:8px 0}.card{padding:12px;margin:10px 0;border-radius:9px}.grid{gap:10px}
 form p{margin:10px 0}label{margin:0 0 4px}
 input,select,textarea{min-height:44px;padding:8px 10px;font-size:16px}input[type=checkbox]{min-height:auto;width:22px;height:22px}
 button,.button{min-height:44px;padding:10px 14px}header button{min-height:44px}
 th,td{padding:9px 10px}.notice{padding:10px;margin:10px 0}.actions{gap:8px}
 .load-row{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}
 .load-row h2,.load-row .runout,.load-row>p:last-child{grid-column:1/-1}
 .load-row p{margin:0}.load-row input{width:100%}.load-row .runout{font-size:14px;margin-top:4px}
 .login{margin-top:24px;padding:18px}
}

nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 10px;overflow:visible}nav a{white-space:normal;min-height:40px;display:flex;align-items:center} .category-title{margin:20px 0 8px;font-size:18px}.product-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;background:white;border-bottom:1px solid #ddd}.product-row>div:first-child{min-width:0;flex:1}.product-row small{display:block;font-size:13px}.product-link{color:inherit;text-decoration:none}.product-row input[type=number]{width:90px}.purchase-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.purchase-fields input,.purchase-fields select{width:100%}.purchase-fields label{min-width:0}@media(max-width:600px){nav{padding:4px 12px;gap:0 8px}nav a{font-size:13px;min-height:40px}.product-row{padding:9px 10px}.product-row strong{font-size:14px;overflow-wrap:anywhere}.product-row>span{font-size:13px;white-space:nowrap}.purchase-fields{grid-template-columns:1.2fr .8fr 1.2fr}.purchase-fields label{font-size:13px}.purchase-fields [hidden]{display:none}.purchase-row{margin:6px 0;padding:10px}.purchase-row strong{font-size:14px}.category-title{margin-top:16px}}

.forecast-page{max-width:1000px}.forecast-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.forecast-card{min-width:0;background:white;border:1px solid #ddd;border-radius:8px;padding:12px}.forecast-card h2{font-size:16px;margin:0 0 8px;overflow-wrap:anywhere}.forecast-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.forecast-card dl>div{min-width:0}.forecast-card dt{font-size:12px;color:#657378}.forecast-card dd{margin:0;font-size:14px;overflow-wrap:anywhere}.forecast-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;border-top:1px solid #eee;margin-top:9px;padding-top:7px}.forecast-months small,.forecast-months strong{display:block;font-size:13px}.suggestion-table{table-layout:fixed}.suggestion-table td,.suggestion-table th{white-space:normal;overflow-wrap:anywhere;padding:8px;font-size:14px}@media(max-width:600px){.forecast-grid{grid-template-columns:1fr;gap:8px}.forecast-page h1{font-size:23px}.forecast-card{padding:10px}.forecast-page>p{font-size:13px}.forecast-page>form{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.forecast-page>form p{margin:4px 0}.forecast-page>form button{font-size:13px}.forecast-page input{max-width:100%}}
