:root{--gyg-yellow:#ffd200;--gyg-black:#111;--gyg-red:#e8483f;--gyg-ink:#1e1e1e;--gyg-charcoal:#4b4840;--gyg-paper:#faf8ef;--gyg-panel:#fff;--gyg-line:#d8d2c3;--gyg-soft-line:#7e766033;--gyg-warm-grey:#918a7b;color:var(--gyg-ink);background:var(--gyg-paper);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{background:var(--gyg-paper);min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{grid-template-columns:auto minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:#fffaf0;border-right:1px solid #4b48403d;width:min(340px,100vw);position:relative;overflow-x:hidden;box-shadow:10px 0 28px #11111117}.sidebar.is-collapsed{width:56px}.sidebar-rail-button{background:var(--gyg-yellow);width:36px;height:36px;color:var(--gyg-black);border:1px solid #111111d1;border-radius:8px;justify-content:center;align-items:center;margin:12px auto 0;display:flex;box-shadow:0 8px 18px #1111111f}.sidebar-content{flex-direction:column;gap:10px;height:100vh;padding:12px;display:flex;overflow:hidden}.sidebar-header,.section-heading,.crew-card-main{justify-content:space-between;align-items:center;gap:10px;display:flex}.sidebar-header{background:var(--gyg-black);border-radius:8px;min-height:46px;padding:10px 11px}.sidebar-title{gap:2px;min-width:0;display:grid}.sidebar-collapse-button{flex-basis:34px;width:34px;min-height:34px}.crew-card-main{align-items:flex-start}.sidebar-header h1,.section-heading h2{color:var(--gyg-ink);margin:0;font-size:1.2rem;line-height:1.1}.section-heading h2{font-size:1rem}.sidebar-header h1{color:#fff;line-height:1}.eyebrow{color:#6d6656;letter-spacing:0;text-transform:uppercase;margin:0 0 3px;font-size:.72rem;font-weight:850}.sidebar-header .eyebrow{color:var(--gyg-yellow);margin:0;line-height:1}.sidebar-section{border:1px solid var(--gyg-line);background:var(--gyg-panel);border-radius:8px;min-width:0;box-shadow:0 1px #ffffffe6}.import-section{flex:none}.crew-section{flex-direction:column;flex:auto;min-height:0;padding:10px;display:flex;overflow:hidden}.section-toggle{width:100%;min-height:40px;color:var(--gyg-black);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:0 10px;font-weight:850;display:flex}.section-toggle:hover{background:#fff4b8}.import-body{border-top:1px solid var(--gyg-line);gap:8px;padding:10px;display:grid}.import-hint{color:#665f46;margin:0;font-size:.78rem;font-weight:760;line-height:1.35}.filter-section{gap:6px;padding:8px;display:grid}.filter-heading{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.filter-heading h2{color:var(--gyg-ink);margin:0;font-size:1rem;line-height:1.1}.filter-body{gap:6px;display:grid}.sidebar-filter-grid{grid-template-columns:minmax(0,1fr) 96px;gap:6px;display:grid}.field-row{grid-template-columns:74px minmax(0,1fr);align-items:center;gap:8px;display:grid}.time-tuner{gap:8px;display:grid}.time-tuner-toggle{border:1px solid var(--gyg-line);width:fit-content;min-height:30px;color:var(--gyg-black);background:#fffdf7;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:.78rem;font-weight:850;display:inline-flex}.time-tuner-toggle:hover{border-color:var(--gyg-black);background:#fff4b8}.time-tuner-grid{border:1px solid var(--gyg-line);background:#fffaf0;border-radius:8px;grid-template-columns:1fr 1fr;gap:8px;padding:8px;display:grid}.time-tuner-grid.single{grid-template-columns:1fr}.time-tuner-grid label{color:#665f46;gap:4px;font-size:.72rem;display:grid}label{color:#3d3726;font-size:.82rem;font-weight:800}select,input,textarea{width:100%;min-width:0;min-height:36px;color:var(--gyg-ink);background:#fff;border:1px solid #cdc7b7;border-radius:7px;outline:none;padding:0 9px}textarea{resize:vertical;min-height:58px;padding:8px 9px}select:focus,input:focus,textarea:focus{border-color:var(--gyg-black);box-shadow:0 0 0 3px #ffd10061}.primary-button,.secondary-button,.icon-button{border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:38px;font-weight:850;display:inline-flex}.primary-button{border:1px solid var(--gyg-black);background:var(--gyg-yellow);color:var(--gyg-black)}.primary-button:hover{background:#f4bd00}.secondary-button{border:1px solid var(--gyg-line);color:var(--gyg-black);background:#fffdf7}.secondary-button:hover:not(:disabled){border-color:var(--gyg-black);background:#fff4b8}.secondary-button:disabled{cursor:wait;opacity:.72}.icon-button{border:1px solid var(--gyg-line);width:36px;color:var(--gyg-black);background:#fffdf7;flex:0 0 36px}.icon-button:hover{background:#fff4b8}.icon-button.danger,.danger-action{color:var(--gyg-red)}.sidebar-header .icon-button{border-color:var(--gyg-yellow);background:var(--gyg-yellow);color:var(--gyg-black)}.import-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.import-stats span{background:var(--gyg-black);min-height:28px;color:var(--gyg-yellow);border:1px solid #2e2b25;border-radius:999px;justify-content:center;align-items:center;font-size:.78rem;font-weight:850;display:flex}.warning-box{color:#6d221f;background:#fff7d6;border:1px solid #e8483f75;border-radius:7px;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:9px;display:grid}.warning-box.compact{align-items:center;padding:7px 8px}.warning-box p{margin:0;font-size:.82rem}.clear-filter-button{border:1px solid var(--gyg-line);min-height:28px;color:var(--gyg-black);background:#fffdf7;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:.74rem;font-weight:850;display:inline-flex}.clear-filter-button:hover{border-color:var(--gyg-black);background:#fff4b8}.sidebar-search input,.sidebar-daypart-select{min-height:32px;font-size:.82rem}.sidebar-daypart-select{border:1px solid var(--gyg-line);width:100%;color:var(--gyg-black);background:#fff;border-radius:7px;padding:0 8px;font-weight:850}.sidebar-filter-actions{justify-content:space-between;align-items:flex-start;gap:6px;display:flex}.sidebar-time-tuner{flex:auto;min-width:0}.sidebar-time-tuner .time-tuner-toggle{min-height:30px}.sidebar-time-tuner .time-tuner-grid{width:100%}.skill-filter-group{gap:6px;display:grid}.skill-filter-heading{color:#6d6656;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;font-size:.72rem;font-weight:900;display:flex}.skill-filter-chip-list{flex-wrap:wrap;gap:5px;display:flex}.skill-filter-chip{border:1px solid var(--gyg-line);min-height:26px;color:var(--gyg-black);background:#fffdf7;border-radius:999px;align-items:center;padding:0 9px;font-size:.74rem;font-weight:850;display:inline-flex}.skill-filter-chip:hover{border-color:var(--gyg-black);background:#fff4b8}.skill-filter-chip.is-selected{border-color:var(--gyg-black);background:var(--gyg-yellow);box-shadow:inset 0 0 0 1px #11111124}.skill-filter-chip.is-warning{color:#7a201d;background:#ffe0e3;border-color:#f0b1b0}.skill-filter-chip.is-warning.is-selected{border-color:var(--gyg-red);background:var(--gyg-yellow);color:var(--gyg-black)}.sidebar-print-actions{flex:none;grid-template-columns:1fr 1fr;gap:8px;display:grid}.compact-action{min-height:34px;padding:0 8px;font-size:.8rem}.crew-list{flex-direction:column;flex:auto;gap:7px;min-height:0;margin-top:9px;padding-right:2px;display:flex;overflow:hidden auto}.crew-card{border:1px solid var(--gyg-line);border-left:4px solid var(--gyg-yellow);background:#fffef9;border-radius:8px;gap:6px;min-width:0;padding:8px;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid}.crew-card:hover{border-color:#111111b8;transform:translateY(-1px);box-shadow:0 8px 18px #11111117}.crew-card[draggable=true]{cursor:grab}.crew-card:active{cursor:grabbing}.drag-button{color:#776f55;cursor:grab;touch-action:none;background:0 0;border:0;border-radius:6px;flex:0 0 22px;justify-content:center;align-items:center;width:22px;height:32px;padding:0;display:inline-flex}.drag-button:hover{color:var(--gyg-black);background:#fff4b8}.drag-button:active{cursor:grabbing}.crew-card-fields{flex:auto;gap:5px;min-width:0;display:grid}.crew-card input{min-width:0;min-height:28px;padding:0 8px;font-size:.82rem}.crew-name-input{font-weight:850}.crew-card .icon-button{flex-basis:28px;width:28px;min-height:28px}.crew-card .icon-button.danger{opacity:0;transition:opacity .14s}.crew-card:hover .icon-button.danger,.crew-card:focus-within .icon-button.danger{opacity:1}.crew-time-row{align-items:center;gap:5px;display:flex}.crew-time-row input{color:#4e493e;flex:1 1 0;min-width:0;min-height:26px;padding:0 6px;font-size:.76rem}.crew-time-row span{color:#8a8271;font-size:.72rem;font-weight:850}.skill-chip-list{flex-wrap:wrap;gap:4px;display:flex}.crew-card .skill-chip-list{padding-left:30px}.skill-chip-list.is-compact{gap:5px;padding-left:0}.skill-chip{color:#285334;background:#dff3e3;border:1px solid #b9d7bf;border-radius:999px;align-items:center;min-height:20px;padding:0 7px;font-size:.68rem;font-weight:850;display:inline-flex}.skill-chip.warning{color:#7a1418;background:#ffe0e3;border-color:#f0b1b0}.skill-chip.muted{color:#5e685f;background:#eef0ec;border-color:#d1d6cf}.warning-list{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.warning-list span{color:#7a1418;background:#ffe4e5;border-radius:999px;align-items:center;min-height:22px;padding:0 7px;font-size:.7rem;font-weight:850;display:inline-flex}.quiet,.empty-state{color:#738076}.empty-state{margin:auto;font-weight:850}.allocation-stage{background:var(--gyg-paper);grid-template-rows:auto minmax(0,1fr);align-content:start;place-items:stretch center;gap:12px;min-width:0;min-height:100vh;padding:14px 18px 18px;display:grid;position:relative;overflow:auto}.allocation-stage.is-drop-active{outline-offset:-3px;outline:3px solid #ffd20052}.map-toolbar{background:#fffef9f0;border:1px solid #4b48402e;border-radius:8px;align-self:start;gap:10px;width:min(100%,1500px);min-width:0;padding:12px;display:grid;box-shadow:0 10px 26px #1111110f}.map-toolbar-main{grid-template-columns:minmax(190px,1fr) auto;align-items:start;gap:12px;display:grid}.map-toolbar-title{min-width:0}.map-toolbar h1{color:var(--gyg-black);margin:0;font-size:1.12rem;line-height:1.1}.roster-status{color:#59655d;margin:6px 0 8px;font-size:.76rem;font-weight:850;line-height:1.2}.roster-status.is-available{color:#245d37}.roster-status.is-error{color:var(--gyg-red)}.roster-date-nav{grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:6px;display:grid}.roster-date-nav .icon-button{flex-basis:34px;width:34px;min-height:34px}.roster-date-field{min-width:0;display:grid;position:relative}.roster-date-field span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.roster-date-field svg{color:#738076;pointer-events:none;position:absolute;top:50%;left:9px;transform:translateY(-50%)}.roster-date-field input{min-height:34px;padding-left:31px;font-size:.8rem;font-weight:850}.map-toolbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:8px;display:flex}.map-toolbar-actions .compact-action,.map-toolbar-actions .clear-filter-button{white-space:nowrap}.map-toolbar-actions .clear-filter-button{border-radius:7px;min-height:34px}.topbar-skill-filter{border-top:1px solid #7e76602e;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding-top:8px;display:grid}.topbar-skill-filter .skill-filter-heading{justify-content:start;gap:0;min-width:76px;padding-top:3px;display:grid}.topbar-skill-filter .skill-filter-chip-list{flex-wrap:nowrap;min-width:0;padding-bottom:2px;overflow-x:auto}.map-workspace{place-items:start center;width:100%;min-width:0;min-height:0;display:grid}@media (width<=1180px){.map-toolbar-main{grid-template-columns:minmax(0,1fr)}.map-toolbar-actions{justify-content:flex-start}}.store-map-frame{aspect-ratio:16/9;background:linear-gradient(#7e766013 1px, transparent 1px), linear-gradient(90deg, #7e766013 1px, transparent 1px), var(--gyg-paper);background-size:32px 32px;border:1px solid #4b484047;border-radius:8px;width:min(100%,1500px,177.778vh - 206.222px);min-width:min(100%,720px);box-shadow:0 22px 50px #1111111a,inset 0 1px #ffffffd9}.store-map{background:0 0;border:0;width:100%;height:100%;position:relative;overflow:visible}.store-map-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.map-floor{fill:#0000}.map-counter{fill:#918a7b1f;stroke:#4b48408f;stroke-linejoin:round;stroke-width:3px;vector-effect:non-scaling-stroke}.map-divider{stroke:#e8483f94;stroke-linecap:round;stroke-width:2px;vector-effect:non-scaling-stroke}.map-wall{fill:none;stroke:var(--gyg-charcoal);stroke-linecap:round;stroke-width:6px;vector-effect:non-scaling-stroke}.map-labels{pointer-events:none}.map-label{fill:#4b48404d;letter-spacing:0;font-size:16px;font-weight:800}.map-label-small{font-size:16px}.map-label-vertical{font-size:16px;font-weight:800}.position-slot{background:linear-gradient(180deg, #ffdd3e 0%, var(--gyg-yellow) 100%);width:clamp(28px,2.7vw,44px);height:clamp(28px,2.7vw,44px);color:var(--gyg-black);z-index:5;border:1px solid #11111185;border-radius:999px;justify-content:center;align-items:center;transition:background-color .14s,border-color .14s,opacity .14s,box-shadow .14s,transform .14s;display:inline-flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 8px 18px #11111124,inset 0 1px #ffffff8c}.position-slot-dot{background:var(--gyg-black);opacity:.88;border-radius:999px;width:24%;height:24%}.position-slot:hover,.allocation-stage.is-drop-active .position-slot:hover{border-color:var(--gyg-black);transform:translate(-50%,calc(-50% - 1px))scale(1.06);box-shadow:0 0 0 4px #ffd20047,0 12px 24px #1111112e}.allocation-stage.is-drop-active .position-slot{opacity:.45}.allocation-stage.is-drop-active .position-slot.is-drag-valid{opacity:1}.allocation-stage.is-drop-active .position-slot.is-drag-invalid{opacity:.28;box-shadow:0 5px 12px #1111111a}.allocation-stage.is-drop-active .position-slot.is-drag-hovered{opacity:1;z-index:14;transform:translate(-50%,calc(-50% - 1px))scale(1.1)}.allocation-stage.is-drop-active .position-slot.is-drag-hovered.is-drag-valid{border-color:var(--gyg-black);background:linear-gradient(180deg, #ffdf48 0%, var(--gyg-yellow) 100%);box-shadow:0 0 0 5px #ffd20047,0 14px 28px #1113}.allocation-stage.is-drop-active .position-slot.is-drag-hovered.is-drag-invalid{color:#fff;background:linear-gradient(#ff7d82 0%,#e8483f 100%);border-color:#a91f25;box-shadow:0 0 0 5px #e8483f3d,0 14px 28px #7a141847}.allocation-stage.is-drop-active .position-slot.is-drag-hovered.is-drag-invalid .position-slot-dot{background:#fff}.allocation-stage.is-drop-active .position-slot.is-drag-hovered.is-drag-invalid .position-crew-name{color:#fff}.position-slot.is-selected{border-color:var(--gyg-black);outline:2px solid var(--gyg-black);outline-offset:3px;z-index:8}.position-slot.is-assigned{background:linear-gradient(180deg, #ffdf48 0%, var(--gyg-yellow) 100%);cursor:grab;touch-action:none;border-radius:999px;width:clamp(52px,6.2vw,88px);height:clamp(30px,2.4vw,34px)}.position-slot.is-assigned:active{cursor:grabbing}.position-slot.is-skill-mismatch{border-color:#e8483fdb;box-shadow:0 0 0 3px #e8483f29,0 10px 20px #11111124}.position-warning-badge{border:2px solid var(--gyg-paper);background:var(--gyg-red);border-radius:999px;width:10px;height:10px;position:absolute;top:-3px;right:-3px}.position-crew-name{max-width:100%;color:var(--gyg-black);text-overflow:ellipsis;white-space:nowrap;padding:0 6px;font-size:.72rem;font-weight:850;overflow:hidden}.position-hover-label{max-width:150px;color:var(--gyg-black);pointer-events:none;text-overflow:ellipsis;white-space:nowrap;background:#fffef9;border:1px solid #111111c7;border-radius:7px;padding:5px 8px;font-size:.72rem;font-weight:900;line-height:1.1;position:absolute;bottom:calc(100% + 7px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 12px 24px #1111112e}.position-slot.is-drag-hovered.is-drag-valid .position-hover-label{border-color:#1f7a3ac7}.position-slot.is-drag-hovered.is-drag-invalid .position-hover-label{border-color:#a91f25c7}.position-popover{z-index:15;pointer-events:auto;min-width:188px;max-width:240px;transform:translate(var(--popover-translate-x,-50%), var(--popover-translate-y,calc(-100% - 18px)));background:#fffef9;border:1px solid #111111c7;border-radius:8px;gap:5px;padding:10px;display:grid;position:absolute;top:0;left:0;box-shadow:0 18px 34px #11111129}.position-popover-role{color:var(--gyg-black);font-size:.86rem;font-weight:900;line-height:1.15}.position-popover-label,.position-popover-meta{color:#6d6656;font-size:.72rem;font-weight:800;line-height:1.2}.position-popover-label{text-transform:uppercase;margin-top:2px}.position-popover-value{color:var(--gyg-black);font-size:.8rem;font-weight:900;line-height:1.15}.position-popover-warning{color:var(--gyg-red);font-size:.72rem;font-weight:900;line-height:1.2}.position-popover-action{justify-self:start;min-height:30px;margin-top:2px}.admin-page,.crew-skills-page{background:#faf9f2;flex-direction:column;height:100vh;min-height:100vh;padding:18px;display:flex;overflow:hidden}.admin-header,.crew-skills-header{border-bottom:1px solid var(--gyg-line);align-items:center;gap:14px;padding-bottom:14px;display:flex}.admin-header h1,.crew-skills-header h1{color:var(--gyg-black);margin:0;font-size:1.45rem;line-height:1.1}.admin-layout{flex:auto;grid-template-columns:minmax(320px,520px) minmax(0,1fr);gap:14px;min-height:0;margin-top:14px;display:grid}.admin-import-panel,.admin-preview-panel{border:1px solid var(--gyg-line);background:#fff;border-radius:8px;flex-direction:column;gap:12px;min-width:0;min-height:0;padding:14px;display:flex}.admin-panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-panel-heading h2{color:var(--gyg-black);margin:0;font-size:1.12rem;line-height:1.15}.admin-panel-heading .roster-date-nav{flex:0 270px;width:min(100%,270px)}.admin-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-paste-field{flex:auto;gap:6px;min-height:0;display:grid}.admin-paste-field textarea{flex:auto;min-height:260px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.78rem;line-height:1.42}.admin-status{border:1px solid var(--gyg-line);color:#3d3726;background:#fffdf7;border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:9px;display:grid}.admin-status p{margin:0;font-size:.82rem}.admin-status.is-saved{color:#193f26;background:#dff3e3;border-color:#b9d7bf}.admin-status.is-error{color:#7a1418;background:#ffe0e3;border-color:#e8483f75}.admin-preview-list{flex-direction:column;flex:auto;gap:7px;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.admin-preview-row{border:1px solid var(--gyg-line);border-left:4px solid var(--gyg-yellow);background:#fffef9;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 10px;display:grid}.admin-preview-row span:first-child{color:var(--gyg-black);text-overflow:ellipsis;white-space:nowrap;font-weight:900;overflow:hidden}.admin-preview-row span:last-child{color:#665f46;white-space:nowrap;font-size:.78rem;font-weight:850}.crew-skills-layout{flex:auto;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:14px;min-height:0;margin-top:14px;display:grid}.crew-browser,.crew-skill-editor{border:1px solid var(--gyg-line);background:#fff;border-radius:8px;min-height:0}.crew-browser{flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex;overflow:hidden}.search-field{display:block;position:relative}.search-field svg{color:#738076;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-field input{padding-left:34px}.checkbox-row{color:#3d3726;align-items:center;gap:8px;font-size:.82rem;font-weight:850;display:flex}.checkbox-row input{width:auto;min-height:auto}.add-crew-button{width:100%}.crew-browser-list{flex-direction:column;flex:auto;gap:6px;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.crew-browser-item{border:1px solid var(--gyg-line);min-height:38px;color:var(--gyg-black);text-align:left;background:#fff;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;display:flex}.crew-browser-item:hover,.crew-browser-item.is-selected{border-color:var(--gyg-black);background:#fff4b8}.archived-pill{color:#5e685f;background:#eef0ec;border-radius:999px;align-items:center;min-height:20px;padding:0 7px;font-size:.68rem;font-weight:850;display:inline-flex}.crew-skill-editor{align-content:start;gap:14px;padding:16px;display:grid}.crew-skill-editor-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.crew-skill-editor-heading h2{color:var(--gyg-black);margin:0;font-size:1.2rem;line-height:1.15}.skill-group-list{gap:12px;display:grid}.skill-group{border:1px solid var(--gyg-line);background:#fffdf4;border-radius:8px;overflow:hidden}.skill-group-heading{border-bottom:1px solid var(--gyg-line);background:#f4f3ee;justify-content:space-between;align-items:center;gap:10px;min-height:38px;padding:0 12px;display:flex}.skill-group-heading h3{color:var(--gyg-black);margin:0;font-size:.88rem;line-height:1.15}.skill-group-heading span{color:#665f46;font-size:.72rem;font-weight:900}.skill-toggle-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px;padding:10px;display:grid}.skill-toggle{min-height:42px;color:var(--gyg-black);background:#fff;border:1px solid #cbd5c8;border-radius:7px;font-weight:850}.skill-toggle:hover:not(:disabled){border-color:var(--gyg-black);background:#fff4b8}.skill-toggle.is-selected{color:#193f26;background:#dff3e3;border-color:#245d37}.skill-toggle:disabled{cursor:not-allowed;opacity:.58}@media (width<=820px){.admin-page,.crew-skills-page{height:auto;min-height:100vh;padding:12px;overflow:visible}.admin-layout,.crew-skills-layout{grid-template-columns:minmax(0,1fr)}.admin-panel-heading{display:grid}.admin-panel-heading .roster-date-nav{flex-basis:auto;width:100%}.admin-preview-list{max-height:360px}}.drag-preview{z-index:20;border:1px solid var(--gyg-black);background:var(--gyg-yellow);max-width:180px;min-height:32px;color:var(--gyg-black);pointer-events:none;text-overflow:ellipsis;white-space:nowrap;border-radius:7px;padding:6px 10px;font-size:.82rem;font-weight:850;position:fixed;top:0;left:0;overflow:hidden;box-shadow:0 12px 28px #11111138}.print-surface{display:none}.print-sheet{color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact;font-family:Verdana,Arial,Helvetica,sans-serif;font-size:7.8px;line-height:1.12}.print-sheet *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.excel-print-sheet{width:190mm;max-width:100%;margin:0 auto}.excel-print-table{border-collapse:collapse;table-layout:fixed;width:100%}.excel-print-table th,.excel-print-table td{text-align:center;vertical-align:middle;word-break:break-word;border:1px solid #000;height:17px;padding:2px 4px;overflow:hidden}.excel-print-table th{font-weight:800}.excel-day-row th,.excel-day-row td{text-align:left;background:#fff;border:0;height:18px;font-size:11px;font-weight:400}.excel-day-row td{border-bottom:1px solid #000}.excel-key-notes-row td{text-align:left;vertical-align:top;white-space:pre-wrap;background:#f2f2f2;border-bottom:2px solid #000;height:122px;font-size:10px;font-style:italic}.excel-template-heading-row th{height:24px}.excel-field-heading-row th{background:#d9d9d9;height:54px;font-size:8.2px}.excel-template-title{background:#d9d9d9;font-size:8.6px;border:2px solid #000!important}.excel-break-list-heading{background:#bfbfbf;font-size:9px;border:2px solid #000!important}.excel-position-cell,.excel-section-row th{text-align:left}.excel-position-cell{background:#d9d9d9}.excel-section-row th{background:#c9c9c9}.excel-position-cell{font-weight:400}.excel-name-cell{text-align:left;font-weight:800}.excel-section-row th{font-style:italic}.excel-spacer-cell{background:#bfbfbf;border:0!important;border-left:2px solid #000!important;border-right:2px solid #000!important}.excel-gutter-cell{background:#fff;border:0!important}.excel-notes-heading-row th{text-align:center;background:#d9d9d9;height:24px;font-size:9px;font-style:italic;border:2px solid #000!important}.excel-notes-heading-row td{background:#f2f2f2;border:2px solid #000!important;border-bottom:0!important}.excel-notes-fill-row td{background:#f7f7f7;height:116px;border:2px solid #000!important;border-top:0!important}.excel-col-gutter{width:1.2%}.excel-col-position{width:20.4%}.excel-col-name{width:19.7%}.excel-col-shift{width:21.8%}.excel-col-break-name,.excel-col-spacer{width:7.38%}.excel-allocation-table tr:not(.excel-day-row):not(.excel-key-notes-row):not(.excel-template-heading-row):not(.excel-field-heading-row):not(.excel-notes-heading-row):not(.excel-notes-fill-row) th,.excel-allocation-table tr:not(.excel-day-row):not(.excel-key-notes-row):not(.excel-template-heading-row):not(.excel-field-heading-row):not(.excel-notes-heading-row):not(.excel-notes-fill-row) td{height:17px}.excel-allocation-table tr>td[colspan="2"][rowspan]{background:#f2f2f2;border:2px solid #000;font-size:9px;font-weight:400}.excel-allocation-table .excel-gutter-cell{background:#fff;border:0!important}.print-review-text{color:#b00020;font-weight:800}@media print{@page{size:A4 portrait;margin:7mm}body{background:#fff;min-width:0;min-height:0}.app-shell{display:none!important}.print-surface{display:block}}@media (width<=620px){.app-shell{grid-template-columns:1fr}.sidebar,.sidebar.is-collapsed{border-bottom:1px solid #d9dfd5;border-right:0;width:100%}.sidebar.is-collapsed{height:52px}.sidebar-content{height:58vh}.sidebar-rail-button{margin-top:8px}.allocation-stage{min-height:42vh;padding:12px}.map-toolbar-main,.topbar-skill-filter{grid-template-columns:1fr}.topbar-skill-filter .skill-filter-heading{min-width:0;display:flex}.topbar-skill-filter .skill-filter-chip-list{flex-wrap:wrap;overflow-x:visible}.store-map-frame{min-width:620px}.crew-skills-layout{grid-template-columns:1fr}.crew-skills-page{height:auto;overflow:visible}.crew-browser{height:min(440px,48vh);min-height:220px}.crew-skill-editor{min-height:0}}
