.auth-gate[hidden],.app-shell[hidden],.auth-form[hidden]{display:none!important}.auth-gate{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f4f7f5;color:#18372d}
.auth-card{width:min(430px,100%);background:#fff;border:1px solid #dce5e1;border-radius:18px;padding:28px;box-shadow:0 18px 55px rgba(17,44,35,.12)}
.auth-brand{display:flex;align-items:center;gap:10px;font:700 15px Manrope,sans-serif;color:#17352b}.auth-brand-mark{width:38px;height:38px;border-radius:11px;background:#dcefe6;color:#16543e;display:grid;place-items:center;font-weight:700}.auth-card h1{font:700 27px Manrope,sans-serif;margin:22px 0 8px}.auth-card>p{color:#64746e;line-height:1.55}
.auth-form{display:grid;gap:16px;margin-top:24px}.auth-form label{font-weight:700;font-size:13px}.auth-form input{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:12px;border:1px solid #aebdb7;border-radius:9px;font:inherit}.auth-form button,.logout-button{border:0;border-radius:9px;padding:11px 15px;background:#1f7656;color:#fff;font-weight:700}.auth-form button:disabled{opacity:.65}
.auth-form input:focus-visible,.auth-form button:focus-visible,.logout-button:focus-visible{outline:3px solid #80cbae;outline-offset:3px}.auth-status{min-height:1.5em;color:#9b3f31;font-weight:600}
.session-user{font-size:10px;color:#596b65}.logout-button{background:#eef4f1;color:#225d49;padding:8px 10px}
@media (prefers-reduced-motion:reduce){.auth-gate *{scroll-behavior:auto!important;transition:none!important}}
.product-context-gate{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f4f7f5;color:#18372d}
.product-context-gate[hidden]{display:none}.product-context-card{width:min(680px,100%);background:#fff;border:1px solid #dce5e1;border-radius:18px;padding:28px;box-shadow:0 18px 55px rgba(17,44,35,.12)}
.product-context-card [hidden]{display:none}
.product-context-kicker{font:700 12px Manrope,sans-serif;letter-spacing:.08em;color:#1e6f50}.product-context-card h1{font:700 27px Manrope,sans-serif;margin:10px 0 8px}
.product-context-status{min-height:1.5em}.product-context-error{padding:12px;border-left:4px solid #a13e30;background:#fff1ef;color:#7f2f25;margin:14px 0}
.product-context-form,.product-context-summary,.product-context-choices{display:grid;gap:15px;margin-top:20px}.product-context-form label{font-weight:700;font-size:13px}
.product-context-form input,.product-context-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:12px;border:1px solid #aebdb7;border-radius:9px;font:inherit}
.product-context-summary>div,.product-context-choice{border:1px solid #dce5e1;border-radius:10px;padding:13px;text-align:left;background:#fff}.product-context-summary p{margin:5px 0 0;white-space:pre-wrap}
.product-field-error{display:block;min-height:1.25em;margin-top:5px;color:#8b352a;font-size:12px}.prototype-notice{padding:10px 18px;background:#fff4d8;border-bottom:1px solid #d8bd78;color:#5d4813;font-weight:700;text-align:center}
.product-context-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.product-context-actions button,.product-context-choice{border:1px solid #1f7656;border-radius:9px;padding:11px 15px;background:#fff;color:#225d49;font-weight:700}
.product-context-actions button:first-child{background:#1f7656;color:#fff}.product-context-form :focus-visible,.product-context-actions button:focus-visible,.product-context-choice:focus-visible,.product-context-error:focus-visible{outline:3px solid #80cbae;outline-offset:3px}
@media (prefers-reduced-motion:reduce){.product-context-gate *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.live-planning-panel{margin-left:236px;padding:20px 32px;background:#eef7f2;border-bottom:1px solid #b8d7c9;color:#18372d}.live-planning-panel[hidden],.live-planning-panel [hidden]{display:none}
.live-planning-head,.live-planning-section-head,.live-planning-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.live-planning-head h2{margin:3px 0 5px;font:700 20px Manrope,sans-serif}.live-planning-head p{margin:0;max-width:760px;color:#526a61}
.live-planning-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}.live-planning-grid>section,.live-planning-form{background:#fff;border:1px solid #cfe0d9;border-radius:12px;padding:15px}.live-planning-section-head h3{margin:5px 0;font-size:13px}
.live-planning-list{display:grid;gap:8px;margin-top:10px}.live-planning-list article{border-top:1px solid #e4ece8;padding-top:9px}.live-planning-list article:first-child{border-top:0}.live-planning-list p{margin:4px 0 0;color:#60726b;font-size:11px}
.live-planning-list article{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:start}.live-planning-list article p{grid-column:1}.live-planning-list article button{grid-column:2;grid-row:1/3}.live-planning-conflict{margin-top:14px;padding:14px;border:2px solid #8a5a00;border-radius:10px;background:#fff8e6}.live-planning-conflict h3{margin:0 0 6px}.live-planning-conflict p{margin:0 0 10px}
.live-planning-conflict-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.live-planning-conflict-compare section{min-width:0;padding:10px;background:#fff;border:1px solid #d9c48f;border-radius:8px}.live-planning-conflict-compare h4{margin:0 0 6px}.live-planning-conflict-compare pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.5 ui-monospace,monospace}
.live-planning-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.live-planning-form label{font-weight:700;font-size:12px}.live-planning-form input,.live-planning-form textarea,.live-planning-form select{display:block;width:100%;margin-top:5px;padding:9px;border:1px solid #aebdb7;border-radius:8px;font:inherit}.live-planning-form label:has(textarea),.live-planning-actions{grid-column:1/-1}.live-planning-actions{justify-content:flex-end}
#livePlanningError{padding:10px;border-left:4px solid #a13e30;background:#fff1ef;color:#7f2f25;margin-top:10px}#livePlanningStatus{min-height:1.2em;margin:8px 0 0}
.live-planning-panel :focus-visible{outline:3px solid #80cbae;outline-offset:3px}
@media(max-width:780px){.live-planning-panel{margin-left:0;padding:16px}.live-planning-grid,.live-planning-form,.live-planning-conflict-compare{grid-template-columns:1fr}.live-planning-head{flex-direction:column}.live-planning-form label:has(textarea),.live-planning-actions{grid-column:1}}
@media (prefers-reduced-motion:reduce){.live-planning-panel *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
