body{padding:24px}
.admin{max-width:1120px;margin:35px auto;overflow:visible}
.admin h1{font-size:28px;line-height:1.5;letter-spacing:0;margin:0}
.admin h2,.login h2{font-size:20px;line-height:1.5;letter-spacing:0;margin:0 0 12px}
.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:28px}
.admin-heading p,.muted{font-size:14px;color:#61756c;margin:6px 0 16px}
.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.actions form{margin:0}.actions button{width:auto}.actions .hero-cta{min-width:0;font-size:14px}
.admin-overview{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;padding:24px 0 32px;margin-bottom:28px;border-top:1px solid #d5ddd2;border-bottom:1px solid #d5ddd2}
.option-settings{border-right:1px solid #d5ddd2;padding-right:32px;min-width:0}
.chart-layout{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.pie{width:180px;height:180px;aspect-ratio:1;flex:none;border-radius:50%}
.chart-legend{list-style:none;padding:0;margin:0;flex:1;min-width:180px}
.chart-legend li{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:14px}
.swatch{width:10px;height:10px;border-radius:2px;flex:none}
.legend-label{flex:1;overflow-wrap:anywhere}.legend-label small{display:block;color:#61756c;font-size:11px}
.percent{color:#61756c;min-width:48px;text-align:left;direction:ltr}
.option-row{display:flex;align-items:center;gap:14px}.option-row>div{flex:1;min-width:0}
.option-settings input:not([type=checkbox]){margin-bottom:14px;min-height:44px;padding:9px 12px;font-size:14px}
.availability-toggle{display:flex;gap:8px;align-items:center;flex:none;margin:14px 0 0}
.availability-toggle input{width:18px;height:18px;min-height:0;margin:0;padding:0;accent-color:#123f32}
.option-settings button{width:auto;min-height:44px;padding:9px 18px;font-size:14px}
.table-wrap{overflow:auto;width:100%;margin-top:16px}
table{border-collapse:collapse;width:100%;min-width:760px;white-space:nowrap;font-size:14px}
td,th{text-align:right;padding:14px;border-bottom:1px solid #d5ddd2}
th{font-weight:600}th:not(:first-child){max-width:220px;white-space:normal;overflow-wrap:anywhere}
.notice{padding:12px 16px;border:1px solid #79a343;border-radius:6px;background:#f1f8e6;font-size:14px}
.notice.error{border-color:#ba3c3c;background:#fff1ef;color:#9b302b}
.empty-state{color:#61756c;padding:30px 0;font-size:14px}
.login{max-width:420px;margin:60px auto;border-radius:8px}
@media(max-width:760px){body{padding:18px}.admin{margin:18px auto}.admin h1{font-size:24px}.admin-overview{grid-template-columns:minmax(0,1fr);gap:28px}.option-settings{border-right:0;border-top:1px solid #d5ddd2;padding:24px 0 0}.chart-layout{gap:20px}.pie{width:160px;height:160px}.admin-heading{gap:12px}.actions{gap:8px}}
