/* v0.1.1: first-shift guidance and feedback; preserve the existing game layout. */
.shift-goal{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:17px 23px;margin:-6px 0 22px;border:1px solid #dce5d6;border-radius:12px;background:#edf3e8}
.shift-goal .eyebrow{font-size:8px;letter-spacing:1.2px;color:#6c876c}
.shift-goal h2{font-size:15px;margin:5px 0;letter-spacing:-.35px}
.shift-goal p{font-size:11px;color:#6e826f;margin:0;line-height:1.5}
.goal-controls{flex-shrink:0;display:grid;grid-template-columns:auto auto;gap:8px 17px;align-items:center;min-width:210px}
#goal-cost{font-size:10px;color:#627b65;text-align:right;font-variant-numeric:tabular-nums}
#goal-action{font-size:11px;font-weight:600;color:#2c6b56;background:#dce9d8;padding:12px;border-radius:7px;min-height:40px}
.goal-controls .progress{grid-column:1/-1;margin:0;height:4px}
.team-bonus{font-size:9px;color:#5c7a64;margin:0 0 12px;line-height:1.5}
.staff-copy .owned-production{color:#477561;margin-top:3px}
.staff-copy .upgrade-requirement{color:#997440;font-size:9px;margin-top:4px}
.staff-price .cost{font-size:11px}.upgrade-card .staff-price{max-width:65px;white-space:normal;font-size:10px}
.producer{min-height:86px}.upgrade-card{min-height:78px}.staff-copy{min-width:0}.producer .staff-copy small{overflow-wrap:anywhere}
#quantities button{min-width:32px;min-height:32px}.tabs button{min-height:44px}
.equipment-cart{display:none}.equipped .equipment-cart{display:block}
.has-team{animation:nurse-work 3s ease-in-out infinite;transform-origin:124px 97px}
.new-room{animation:room-open .75s ease-out}
@keyframes nurse-work{0%,100%{transform:translateX(0) rotate(0)}40%{transform:translateX(-3px) rotate(-2deg)}70%{transform:translateX(1px) rotate(1deg)}}
@keyframes room-open{0%{opacity:0;transform:translateY(10px) scale(.93)}65%{transform:translateY(-3px) scale(1.02)}100%{opacity:1;transform:none}}
#celebration{position:fixed;left:50%;top:40%;pointer-events:none;z-index:20}
#toast{pointer-events:none}
.confetti{display:block;position:absolute;width:7px;height:12px;border-radius:2px;animation:celebrate .9s ease-out forwards}
@keyframes celebrate{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(var(--drift),220px) rotate(var(--spin))}}
.saved.is-warning{color:#ffe1a6;max-width:200px}.offline-reward{font-size:28px;color:#287465!important}
.dialog-actions button,.file-label{min-height:44px;display:inline-flex;align-items:center}#backup-detail{font-size:11px}
[data-theme=dark] .shift-goal{background:#203b38;border-color:#3b5c50}
[data-theme=dark] .shift-goal p,[data-theme=dark] .shift-goal .eyebrow,[data-theme=dark] #goal-cost,[data-theme=dark] .team-bonus,[data-theme=dark] .staff-copy .owned-production{color:#b8d2be}
[data-theme=dark] #goal-action{color:#e3f3e7;background:#315b4d}
[data-theme=dark] .staff-copy .upgrade-requirement{color:#e2c48e}[data-theme=dark] .offline-reward{color:#a3dfb7!important}
@media(max-width:1120px){.goal-controls{min-width:195px}.staff-price .cost{font-size:10px}.staff-copy small{font-size:9px}.producer{grid-template-columns:28px minmax(0,1fr) auto;gap:6px}}
@media(max-width:800px){.producer .staff-copy small{font-size:11px}.producer .staff-price .cost{font-size:13px}.producer{grid-template-columns:38px minmax(0,1fr) auto}.team-bonus{font-size:10px}}
@media(max-width:540px){.shift-goal{padding:12px 14px;gap:10px;margin:-6px 0 17px}.shift-goal>div:first-child{min-width:0}.shift-goal h2{font-size:12px;line-height:1.4;margin:4px 0}.shift-goal p{display:none}.goal-controls{display:flex;flex-direction:column;min-width:95px;gap:5px}.goal-controls .progress{width:100%}.goal-controls #goal-cost{font-size:9px}#goal-action{font-size:9px;padding:7px 9px;min-height:32px}.heading h1{font-size:28px}.wallet{padding:14px 19px;gap:10px 0;margin-bottom:20px}.wallet strong{font-size:28px}.saved.is-warning{display:block;max-width:none;margin-top:3px;font-size:10px}#quantities button{min-height:40px;min-width:38px}.staff-copy .upgrade-requirement{font-size:10px}.panel{scroll-margin-top:175px}}
@media(prefers-reduced-motion:reduce){.has-team,.new-room,.confetti{animation:none!important}.confetti{display:none}}
@media(max-width:540px){main{padding-top:16px}.heading{margin-bottom:16px}.heading .eyebrow{margin-bottom:8px}.heading h1{font-size:26px;line-height:1.2}.wallet{margin-bottom:17px}.care-panel{padding-top:16px}.care-panel h2{margin-top:13px}.care-stage{min-height:235px}#care svg{width:160px;height:185px}.care-label{padding:12px 18px}.care-note{margin-top:10px}}
@media(max-width:540px){#toast{top:72px;bottom:auto;font-size:11px;padding:10px 14px;width:max-content;max-width:90vw}}
