:root{font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-width:320px;min-height:100%;overflow-x:hidden;background:var(--page)}body{margin:0;min-width:320px;min-height:100%;overflow-x:hidden}button,input,select,output{font:inherit}button,input,select{min-height:48px}button,select{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{color:var(--control-ink);background:var(--control);border:1px solid var(--rail-dark);border-radius:4px}button:active{background:var(--control-pressed);transform:translateY(1px)}button:disabled{color:var(--chalk-muted);background:var(--enamel-low);cursor:default;transform:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.app-shell{min-height:100vh;min-height:100svh;color:var(--chalk);background:var(--page);overflow-x:hidden}.host-clearance-berth{display:none}.app-header{min-height:104px;padding:max(20px,env(safe-area-inset-top)) 112px 14px 16px;color:var(--chalk);background:var(--enamel);border-bottom:1px solid var(--enamel-raised)}.brand-lockup{display:flex;align-items:center;gap:10px}.rail-glyph{width:58px;height:44px;flex:0 0 auto;color:var(--rail);fill:currentColor}.rail-glyph .glyph-magnet{stroke:var(--rail-dark);stroke-width:1}.rail-glyph .glyph-high{fill:var(--priority-high)}.rail-glyph .glyph-normal{fill:var(--priority-normal)}.brand-lockup h1{margin:0;font-family:American Typewriter,Rockwell,Courier New,serif;font-size:27px;font-weight:700;line-height:34px;letter-spacing:-.035em}.brand-lockup p,.estimate-truth{margin:0;color:var(--chalk-muted);font-size:13px;line-height:19px}.estimate-truth{margin:7px 0 0 68px}.workbench{width:min(100%,1080px);min-height:calc(100svh - 104px);margin-inline:auto;padding:12px 10px calc(132px + env(safe-area-inset-bottom));color:var(--page-ink)}.planner-grid{display:grid;gap:12px}.loading-dock,.weekly-rail{min-width:0}.week-meter{overflow:hidden;color:var(--chalk);background:var(--enamel-low);border:1px solid var(--rail-dark);border-radius:7px 7px 3px 3px}.week-meter>p{min-height:38px;display:flex;align-items:baseline;gap:6px;margin:0;padding:8px 12px 5px;color:var(--chalk-muted);font-size:13px;line-height:19px}.week-meter>p strong{color:var(--chalk);font-family:Avenir Next Condensed,Arial Narrow,sans-serif;font-size:23px;line-height:28px;font-variant-numeric:tabular-nums}.meter-readouts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--rail-dark);gap:1px;border-top:1px solid var(--rail-dark)}.meter-readouts output{min-width:0;min-height:57px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--chalk-muted);background:var(--enamel)}.meter-readouts output strong{max-width:100%;overflow:hidden;color:var(--chalk);font-family:Avenir Next Condensed,Arial Narrow,sans-serif;font-size:27px;font-weight:800;line-height:31px;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.meter-readouts output span{font-size:11px;font-weight:700;line-height:16px}.meter-readouts output[data-alert=true]{color:var(--overload-ink);background:var(--overload)}.meter-readouts output[data-alert=true] strong{color:var(--overload-ink)}.pack-handle{width:calc(100% - 20px);min-height:62px;display:flex;align-items:center;gap:10px;margin:-1px 10px 12px;padding:6px 12px 6px 8px;color:var(--control-ink);background:var(--control);border-radius:0 0 8px 8px;text-align:left}.pack-handle svg{width:38px;height:38px;flex:0 0 auto;fill:var(--enamel)}.pack-handle span{min-width:0;display:flex;flex-direction:column}.pack-handle strong{font-size:16px;line-height:22px}.pack-handle small{overflow:hidden;font-size:11px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.add-magnet,.unplaced-dock{margin-bottom:12px;padding:12px;color:var(--paper-ink);background:var(--paper);border:1px solid var(--rail-dark);border-radius:4px}.add-magnet{position:relative}.add-magnet:before,.add-magnet:after{content:"";width:6px;height:6px;position:absolute;top:8px;border:1px solid var(--rail-dark);border-radius:50%;background:var(--rail)}.add-magnet:before{left:8px}.add-magnet:after{right:8px}.form-heading,.dock-heading{min-height:34px;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.form-heading{padding-inline:10px}.form-heading h2,.dock-heading h2,.rail-heading h2{margin:0;font-family:American Typewriter,Rockwell,Courier New,serif;font-size:19px;line-height:26px}.form-heading span,.dock-heading span{color:var(--rail-dark);font-size:12px;font-weight:700;line-height:18px}.add-magnet label>span,.block-field legend{display:block;margin:0 0 4px;color:var(--rail-dark);font-size:12px;font-weight:700;line-height:18px}.name-field{display:block;margin-top:4px}.name-field input,.form-controls select{width:100%;color:var(--paper-ink);background:var(--control);border:1px solid var(--rail-dark);border-radius:3px}.name-field input{padding:10px 12px;font-size:16px;line-height:24px}.name-field input::placeholder{color:var(--rail-dark)}.form-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.form-controls>label{min-width:0;position:relative}.form-controls>label:after{content:"⌄";position:absolute;right:8px;bottom:14px;color:var(--rail-dark);font-size:15px;font-weight:800;line-height:18px;pointer-events:none}.block-field{min-width:0;grid-column:1 / -1;margin:0;padding:0;border:0}.block-stepper{display:grid;grid-template-columns:48px minmax(52px,1fr) 48px}.block-stepper button{min-width:48px;padding:0;border-radius:3px 0 0 3px;font-size:22px;line-height:28px}.block-stepper button:last-child{border-radius:0 3px 3px 0}.block-stepper output{min-width:0;height:48px;display:flex;align-items:baseline;justify-content:center;gap:3px;padding-top:7px;color:var(--chalk);background:var(--enamel);border-block:1px solid var(--rail-dark)}.block-stepper output strong{font-size:21px;line-height:28px;font-variant-numeric:tabular-nums}.block-stepper output span{overflow:hidden;color:var(--chalk-muted);font-size:10px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.form-controls select{height:48px;padding:8px 26px 8px 8px;font-size:14px;line-height:20px;appearance:none;-webkit-appearance:none}.add-button{width:100%;margin-top:9px;padding:8px 12px;color:var(--chalk);background:var(--enamel);font-weight:800}.add-button:active{color:var(--chalk);background:var(--enamel-raised)}.dock-heading{padding-bottom:6px}.empty-dock{min-height:52px;display:flex;align-items:center;margin:0;padding:8px 10px;color:var(--rail-dark);background:var(--control);border:1px dashed var(--rail);font-size:13px;line-height:19px}.unplaced-list{display:grid;gap:5px}.unplaced-task{width:100%;min-height:64px;display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:0 8px;padding:7px 9px;color:var(--paper-ink);background:var(--control);text-align:left}.unplaced-task[data-selected=true]{color:var(--selected-ink);background:var(--selected)}.unplaced-name{min-width:0;overflow:hidden;align-self:end;font-size:14px;font-weight:800;line-height:20px;text-overflow:ellipsis;white-space:nowrap}.unplaced-task>strong{grid-row:1 / 3;grid-column:2;align-self:center;justify-self:center;font-family:Avenir Next Condensed,Arial Narrow,sans-serif;font-size:24px;line-height:30px}.unplaced-task small{min-width:0;overflow:hidden;color:var(--rail-dark);font-size:11px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.notice-strip{min-height:52px;margin:0;padding:8px 10px 8px 15px;position:relative;color:var(--chalk-muted);background:var(--enamel);font-size:12px;line-height:18px}.notice-strip:before{content:"";width:5px;position:absolute;inset:0 auto 0 0;background:var(--rail);clip-path:polygon(0 0,100% 6px,100% calc(100% - 6px),0 100%)}.weekly-rail{color:var(--chalk);background:var(--enamel);border:1px solid var(--enamel-raised);border-radius:5px}.rail-heading{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid var(--rail-dark)}.rail-heading p{margin:1px 0 0;color:var(--chalk-muted);font-size:12px;line-height:18px}.rail-heading>span{width:46px;height:24px;display:flex;align-items:center;justify-content:space-around;flex:0 0 auto;background:var(--enamel-low);border:1px solid var(--rail-dark);border-radius:12px}.rail-heading>span i{width:8px;height:8px;display:block;background:var(--rail);border:1px solid var(--rail-bright);border-radius:50%}.day-stack{display:grid;gap:1px;background:var(--rail-dark)}.day-bin{min-width:0;padding:9px 8px 10px;background:var(--enamel)}.day-bin-head{min-height:68px;display:flex;align-items:flex-start;justify-content:flex-start;gap:4px;position:relative;padding:0 2px 21px}.day-name{min-width:0;flex:0 0 54px}.day-name h3{margin:0;font-family:Avenir Next Condensed,Arial Narrow,sans-serif;font-size:22px;line-height:27px;letter-spacing:.02em}.day-name p{min-height:17px;position:absolute;bottom:3px;left:2px;margin:0;color:var(--chalk-muted);font-size:11px;line-height:17px;white-space:nowrap}.overload-copy{color:var(--overload);font-weight:800}.capacity-stepper{min-width:166px;display:grid;grid-template-columns:48px 70px 48px}.capacity-stepper button{min-width:48px;padding:0;border-radius:4px 0 0 4px;font-size:22px;line-height:28px}.capacity-stepper button:last-child{border-radius:0 4px 4px 0}.capacity-stepper output{height:48px;display:flex;align-items:baseline;justify-content:center;gap:4px;padding-top:6px;color:var(--chalk);background:var(--enamel-low);border-block:1px solid var(--rail-dark)}.capacity-stepper output strong{font-family:Avenir Next Condensed,Arial Narrow,sans-serif;font-size:22px;line-height:30px;font-variant-numeric:tabular-nums}.capacity-stepper output span{color:var(--chalk-muted);font-size:10px;line-height:16px}.track-scroll{width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-color:var(--rail) var(--enamel-low);scrollbar-width:thin}.day-track{min-width:384px;height:58px;position:relative;background:var(--well-closed);border-block:1px solid var(--rail-dark)}.slot-rack{width:384px;height:58px;display:grid;grid-template-columns:repeat(8,48px)}.rail-slot{width:48px;height:58px;position:relative;display:block;border-right:1px solid var(--rail-dark)}.rail-slot.open{background:var(--well-open)}.rail-slot.closed{background:var(--well-closed)}.rail-slot.closed:before,.rail-slot.closed:after{content:"";width:29px;height:1px;position:absolute;top:28px;left:9px;background:var(--rail-dark);transform:rotate(37deg)}.rail-slot.closed:after{transform:rotate(-37deg)}.capacity-stop{width:6px;height:58px;position:absolute;z-index:4;top:0;left:var(--capacity-stop);transform:translate(-3px);background:var(--rail-bright);border-inline:1px solid var(--rail-dark);pointer-events:none}.capacity-stop i{width:14px;height:8px;position:absolute;top:-1px;left:-5px;display:block;background:var(--rail);border:1px solid var(--rail-dark);border-radius:2px}.tasks-on-rail{min-width:0;height:48px;display:flex;position:absolute;z-index:3;top:5px;left:0}.task-magnet{width:calc(var(--task-blocks) * 48px);min-width:calc(var(--task-blocks) * 48px);height:48px;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:5px;overflow:hidden;padding:7px 11px 7px 9px;color:var(--magnet-ink);background:var(--magnet);border-color:var(--rail-dark);border-radius:2px;clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px));animation:seat-magnet .18s cubic-bezier(.2,.76,.32,1) both}.task-magnet[data-selected=true]{color:var(--selected-ink);background:var(--selected)}.magnet-name{min-width:0;overflow:hidden;font-size:13px;font-weight:800;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.magnet-blocks,.one-block-mark{flex:0 0 auto;font-family:Avenir Next Condensed,Arial Narrow,sans-serif;font-size:16px;font-weight:900;line-height:22px}.one-block-mark{width:100%;overflow:hidden;text-align:center}.day-overload-note{margin:5px 0 0;padding-left:3px;color:var(--overload);font-size:11px;font-weight:700;line-height:17px}.magnet-controls{margin-top:7px;padding:8px;color:var(--paper-ink);background:var(--paper);border:1px solid var(--rail-dark);border-radius:3px}.selected-magnet-copy{min-width:0;display:flex;flex-direction:column;padding:0 2px 6px}.selected-magnet-copy strong{overflow:hidden;font-size:14px;line-height:20px;text-overflow:ellipsis;white-space:nowrap}.selected-magnet-copy span{color:var(--rail-dark);font-size:11px;line-height:16px}.magnet-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.magnet-action-grid button{min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;gap:3px;padding:5px;font-size:11px;font-weight:700;line-height:16px}.magnet-action-grid button span{font-size:17px;line-height:20px}.remove-control{color:var(--danger-ink);background:var(--danger)}.remove-control:active{color:var(--danger-ink);background:var(--priority-high)}.truth-plate{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:12px;padding:14px;color:var(--chalk-muted);background:var(--enamel-low);border:1px solid var(--rail-dark);border-radius:4px}.truth-plate p{margin:0;font-size:12px;line-height:18px}.truth-plate button{min-width:160px;padding:7px 12px}.dialog-backdrop{position:fixed;z-index:40;inset:0;display:grid;place-items:end center;padding:16px 12px max(18px,env(safe-area-inset-bottom));background:var(--enamel-low)}.confirm-dialog{width:min(100%,480px);padding:12px;color:var(--paper-ink);background:var(--paper);border:1px solid var(--rail-dark);border-radius:7px 7px 3px 3px}.dialog-grip{width:80px;height:18px;display:flex;align-items:center;justify-content:space-around;margin:-5px auto 6px;background:var(--rail);border:1px solid var(--rail-dark);border-radius:2px}.dialog-grip i{width:8px;height:8px;display:block;background:var(--rail-dark);border-radius:50%}.confirm-dialog h2{margin:0;font-family:American Typewriter,Rockwell,Courier New,serif;font-size:22px;line-height:29px}.dialog-body p{margin:8px 0 12px;font-size:14px;line-height:21px}.dialog-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:7px}.dialog-actions button{min-width:0;padding:7px;font-size:13px;font-weight:800;line-height:18px}.dialog-cancel{color:var(--control-ink);background:var(--control-pressed)}.dialog-confirm{color:var(--chalk);background:var(--enamel)}.dialog-confirm.destructive{color:var(--danger-ink);background:var(--danger)}.app-shell[data-embedded-layout=transient],.app-shell[data-embedded-layout=compact-phone],.app-shell[data-embedded-layout=short-phone],.app-shell[data-embedded-layout=phone]{width:100%;height:var(--app-viewport-height);min-height:0;display:flex;flex-direction:column;position:fixed;inset:0;overflow:hidden;overflow:clip}.app-shell[data-embedded-layout=transient] .app-header,.app-shell[data-embedded-layout=compact-phone] .app-header,.app-shell[data-embedded-layout=short-phone] .app-header,.app-shell[data-embedded-layout=phone] .app-header{flex:0 0 auto}.app-shell[data-embedded-layout=transient] .workbench,.app-shell[data-embedded-layout=compact-phone] .workbench,.app-shell[data-embedded-layout=short-phone] .workbench,.app-shell[data-embedded-layout=phone] .workbench{min-height:0;flex:1 1 auto;overflow-x:hidden;overflow-y:auto;padding-bottom:24px;overscroll-behavior:contain;scroll-padding-bottom:18px}.app-shell[data-embedded-layout=transient] .host-clearance-berth,.app-shell[data-embedded-layout=compact-phone] .host-clearance-berth,.app-shell[data-embedded-layout=short-phone] .host-clearance-berth,.app-shell[data-embedded-layout=phone] .host-clearance-berth{height:62px;min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);align-items:center;flex:0 0 62px;position:relative;z-index:12;overflow:hidden;background:var(--enamel-low);border-top:1px solid var(--rail-dark)}.berth-rail{height:8px;display:block;background:var(--rail);border-block:1px solid var(--rail-dark)}.berth-rail-left{margin-left:14px;border-left:1px solid var(--rail-dark);border-radius:2px 0 0 2px}.berth-rail-right{margin-right:14px;border-right:1px solid var(--rail-dark);border-radius:0 2px 2px 0}.host-clearance-cradle{height:62px;display:flex;align-items:flex-start;justify-content:space-around;padding:8px 9px 0;position:relative;background:var(--well-closed);border-inline:1px solid var(--rail-dark)}.host-clearance-cradle:before{content:"";width:28px;height:8px;position:absolute;top:27px;left:13px;background:var(--enamel);border:1px solid var(--rail-dark);border-radius:2px}.host-clearance-cradle i{width:6px;height:6px;display:block;background:var(--rail);border:1px solid var(--rail-dark);border-radius:50%}.app-shell[data-embedded-layout=transient] .dialog-backdrop,.app-shell[data-embedded-layout=compact-phone] .dialog-backdrop,.app-shell[data-embedded-layout=short-phone] .dialog-backdrop,.app-shell[data-embedded-layout=phone] .dialog-backdrop{padding-bottom:calc(74px + env(safe-area-inset-bottom))}.app-shell[data-embedded-layout=compact-phone] .app-header{width:100%;height:120px;min-height:120px;position:relative;z-index:20;inset:auto}.app-shell[data-embedded-layout=compact-phone]{display:grid;grid-template-rows:120px minmax(0,1fr) 62px}.app-shell[data-embedded-layout=compact-phone] .workbench{width:100%;position:static;inset:auto}.app-shell[data-embedded-layout=compact-phone] .host-clearance-berth{width:100%;position:relative;inset:auto}.app-shell[data-embedded-layout=short-phone] .app-header{min-height:110px}.app-shell[data-embedded-layout=compact-phone] .app-header,.app-shell[data-embedded-layout=short-phone] .app-header{padding:10px 12px 8px}.app-shell[data-embedded-layout=compact-phone] .rail-glyph,.app-shell[data-embedded-layout=short-phone] .rail-glyph{width:48px;height:36px}.app-shell[data-embedded-layout=compact-phone] .brand-lockup h1,.app-shell[data-embedded-layout=short-phone] .brand-lockup h1{font-size:23px;line-height:29px}.app-shell[data-embedded-layout=compact-phone] .brand-lockup p,.app-shell[data-embedded-layout=compact-phone] .estimate-truth,.app-shell[data-embedded-layout=short-phone] .brand-lockup p,.app-shell[data-embedded-layout=short-phone] .estimate-truth{font-size:11px;line-height:15px}.app-shell[data-embedded-layout=compact-phone] .estimate-truth,.app-shell[data-embedded-layout=short-phone] .estimate-truth{margin:5px 0 0 58px}.app-shell[data-embedded-layout=compact-phone] .block-stepper,.app-shell[data-embedded-layout=short-phone] .block-stepper{margin-top:6px}.app-shell[data-embedded-layout=compact-phone] .day-bin,.app-shell[data-embedded-layout=short-phone] .day-bin{min-height:170px}.app-shell[data-embedded-layout=compact-phone] .magnet-controls,.app-shell[data-embedded-layout=short-phone] .magnet-controls{margin-bottom:18px}.app-shell[data-embedded-layout=transient] .app-header{display:none}@keyframes seat-magnet{0%{transform:translateY(-4px) rotate(-.5deg)}to{transform:translateY(0) rotate(0)}}@media(hover:hover){button:not(:disabled):hover{border-color:var(--rail-bright)}.task-magnet:not(:disabled):hover{color:var(--selected-ink);background:var(--selected)}}@media(min-width:700px)and (min-height:521px){.app-header{padding-left:24px}.workbench{padding-inline:16px}.planner-grid{grid-template-columns:300px minmax(0,1fr);align-items:start}.loading-dock{position:sticky;top:12px}.day-bin-head{min-height:50px;align-items:center;justify-content:space-between;gap:8px;position:static;padding:0 2px 7px}.day-name{flex:0 1 auto}.day-name p{position:static;margin:-1px 0 0;white-space:normal}}@media(min-width:568px)and (max-height:520px)and (min-aspect-ratio:1.35){.app-header{min-height:68px;padding:8px 112px 7px 14px}.rail-glyph{width:48px;height:36px}.brand-lockup h1{font-size:23px;line-height:29px}.brand-lockup p,.estimate-truth{font-size:11px;line-height:15px}.estimate-truth{display:none}.workbench{min-height:calc(100svh - 68px);padding:8px 8px 118px}.planner-grid{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:8px}.loading-dock{position:static}.unplaced-dock,.notice-strip{display:none}.weekly-rail{max-height:calc(100svh - 84px);overflow-y:auto}.rail-heading{min-height:56px;padding-block:7px}.day-bin-head{min-height:50px;align-items:center;justify-content:space-between;gap:8px;position:static;padding:0 2px 7px}.day-name{flex:0 1 auto}.day-name p{position:static;margin:-1px 0 0;white-space:normal}}@media(max-width:374px){.app-header{padding-left:12px}.workbench{padding-inline:6px}.form-controls{grid-template-columns:220px;justify-content:start}.block-field{grid-column:1}.magnet-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(forced-colors:active){button,input,select,.week-meter,.add-magnet,.unplaced-dock,.weekly-rail,.truth-plate,.confirm-dialog,.magnet-controls{border-color:CanvasText}.task-magnet[data-selected=true]{outline:3px solid Highlight}.capacity-stop{background:Highlight}}
