:root{color-scheme:light;--color-ink: #1f2a37;--color-ink-muted: #526172;--color-paper: #fffdf8;--color-paper-warm: #f5f0e7;--color-surface: #ffffff;--color-primary: #2363a8;--color-primary-dark: #164c84;--color-focus: #a33b00;--color-safety: #b4492e;--color-quality: #356f52;--color-wait: #986b19;--color-line: #c7d0d9;--color-line-strong: #9aa8b5;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius-sm: 12px;--radius-md: 16px;--radius-lg: 20px;--content-width: 76rem;--reading-width: 48rem;--control-height: 2.75rem;--safe-bottom: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box}html{min-width:0;background:var(--color-paper-warm);color:var(--color-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,sans-serif;line-height:1.55;text-rendering:optimizeLegibility}body{min-width:0;min-height:100vh;margin:0;overflow-wrap:anywhere}button,input,select,textarea{font:inherit}button,select,input[type=checkbox],input[type=radio]{cursor:pointer}button,select,input:not([type=hidden]),textarea{min-height:var(--control-height)}input[type=checkbox],input[type=radio]{width:2.75rem;min-width:2.75rem;height:2.75rem;min-height:2.75rem}button,select,input[type=text],textarea{border:2px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-ink)}button{padding:var(--space-2) var(--space-4);font-weight:700}button:not(:disabled):hover{border-color:var(--color-primary);background:#edf5fc}button:disabled{cursor:not-allowed;color:var(--color-ink-muted);background:#edf0f2}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}a{color:var(--color-primary-dark)}h1,h2,h3,h4,p,ul,ol,dl{margin-top:0}h1,h2,h3,h4{line-height:1.25;text-wrap:balance}h1{margin-bottom:var(--space-2);font-size:clamp(1.75rem,4vw,2.5rem)}h2{margin-bottom:var(--space-3);font-size:clamp(1.35rem,3vw,1.8rem)}h3{margin-bottom:var(--space-2);font-size:1.15rem}h4{margin-bottom:var(--space-2);font-size:1rem}ul,ol{padding-left:1.4rem}fieldset{min-width:0;margin:0;padding:var(--space-4);border:2px solid var(--color-line);border-radius:var(--radius-md)}legend{padding:0 var(--space-2);font-weight:800}label{display:grid;gap:var(--space-1);font-weight:700}textarea{width:100%;min-height:5rem;padding:var(--space-2) var(--space-3);resize:vertical}select,input[type=text]{width:100%;padding:var(--space-2) var(--space-3)}table{width:100%;border-collapse:collapse}th,td{padding:var(--space-3);border:2px solid var(--color-line);text-align:left;vertical-align:top}th{background:#edf3f7}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}main{width:min(100% - 2rem,var(--content-width));min-width:0;margin:0 auto;padding:var(--space-6) 0 calc(5rem + var(--safe-bottom))}.app-disclaimer{max-width:var(--reading-width);color:var(--color-ink-muted)}.scenario-navigation ul{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:0;margin:var(--space-4) 0;list-style:none}.scenario-navigation li{min-width:0}.scenario-navigation button{max-width:100%;overflow-wrap:anywhere}.save-toggle{display:inline-flex;grid-template-columns:auto 1fr;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.save-toggle input{width:1.25rem;height:1.25rem}#save-toggle-description{max-width:var(--reading-width);color:var(--color-ink-muted);font-size:.9rem}.stage-shell{min-width:0;margin-top:var(--space-6);padding:clamp(var(--space-4),4vw,var(--space-6));border:2px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper)}.stage-shell>h2{margin-bottom:var(--space-1)}.stage-shell>p{color:var(--color-ink-muted)}.stage-help-panel{display:grid;gap:var(--space-2);max-width:var(--reading-width);padding:var(--space-3) var(--space-4);border-left:5px solid var(--color-primary);background:#edf5fc}.stage-help-panel h3{margin-bottom:0}.stage-help-panel dl{display:grid;gap:var(--space-2);margin-bottom:0}.stage-help-panel dl>div{display:grid;grid-template-columns:minmax(6rem,auto) minmax(0,1fr);gap:var(--space-2)}.stage-help-panel dt{font-weight:800}.stage-help-panel dd{margin:0}.app-footer{display:flex;justify-content:flex-end;margin-top:var(--space-5);padding-top:var(--space-3);border-top:2px solid var(--color-line)}.briefing-screen,.relation-screen,.schedule-screen,.simulation-screen,.analysis-screen,.revision-screen,.report-screen{display:grid;min-width:0;gap:var(--space-4);max-width:var(--reading-width)}.briefing-screen>.required-action{justify-self:start}.stage-layout,.schedule-editor,.relation-board{min-width:0}.stage-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5);align-items:start}.stage-layout>*,.schedule-editor>*,.relation-screen>*,.revision-screen>*,.report-screen>*{min-width:0}.relation-board{overflow:hidden}.mobile-summary-panel{min-width:0}.mobile-summary-panel>summary{min-height:var(--control-height);padding:var(--space-2) var(--space-3);border:2px solid var(--color-line-strong);border-radius:var(--radius-sm);background:var(--color-surface);font-weight:800;cursor:pointer}.mobile-summary-panel[open]>summary{margin-bottom:var(--space-3);border-color:var(--color-primary)}@media(max-width:600px){main{width:min(100% - 1rem,var(--content-width));padding-top:var(--space-4)}.stage-shell{margin-top:var(--space-4);padding:var(--space-3)}.briefing-screen{gap:0}.stage-layout{display:block}.stage-layout>.mobile-summary-panel,.mobile-summary-panel{margin-top:var(--space-4)}.scenario-navigation ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.scenario-navigation button{width:100%}.stage-help-panel dl>div{display:block;grid-template-columns:1fr;gap:0}.stage-help-panel{gap:var(--space-1);padding:var(--space-2) var(--space-3) var(--space-1)}.stage-help-panel dl{gap:0}.stage-help-panel dt,.stage-help-panel dd{display:inline}.stage-help-panel dt:after{content:": "}}.live-status,.relation-feedback,.revision-failure,.evidence-validation{padding:var(--space-3);border-left:5px solid var(--color-primary);background:#edf5fc}.live-status--blocked,.revision-failure{border-left-color:var(--color-safety);background:#fff0eb}.task-card-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:var(--space-3)}.task-card,.task-card-summary,.mission-goals,.bottleneck-card,.attempt-comparison,.prediction-gate,.prediction-feedback,.selected-finding,.timeline-step-list,.timeline-grid-section,.relation-editor,.relation-board,.evidence-form,.teacher-summary,.simulation-timeline{min-width:0;padding:var(--space-4);border:2px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface)}.task-card{padding:0;overflow:hidden;border-top:5px solid var(--color-primary)}.task-card>summary{display:list-item;min-height:var(--control-height);gap:var(--space-1);padding:var(--space-3) var(--space-4);list-style-position:inside;cursor:pointer}.task-card__summary-content{display:grid;gap:var(--space-1)}.task-card>summary::marker{color:var(--color-primary)}.task-card>summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:-3px}.task-card[open]>summary{border-bottom:2px solid var(--color-line);background:#edf5fc}.task-card__summary-title{font-weight:800}.task-card__summary-meta{color:var(--color-ink-muted);font-size:1rem}.task-card__body{min-width:0;padding:var(--space-4)}.task-card dl{display:grid;gap:var(--space-2);margin-bottom:0}.task-card__field{display:grid;grid-template-columns:minmax(6rem,.4fr) minmax(0,1fr);gap:var(--space-2)}.task-card dt{color:var(--color-ink-muted);font-weight:800}.task-card dd{margin:0}.task-card-summary{display:grid;gap:0}.task-card-summary__constraints{display:grid;gap:0;padding:var(--space-1) var(--space-2);line-height:1.25;border-left:4px solid var(--color-safety);background:#fff8ef}.task-card-summary__constraints h4{margin:0}.task-card-summary__constraints ul{display:grid;gap:0;margin:0}.task-card-summary__constraints li{font-size:1rem;overflow-wrap:anywhere}.task-card-summary ol{display:grid;gap:0;margin-bottom:0}.task-card-summary li{display:block;min-width:0;gap:var(--space-1);padding:0 var(--space-1);line-height:1.25;border-left:4px solid var(--color-primary);background:#f4f8fb}.task-card-summary li span,.task-card-summary li small{display:inline;overflow-wrap:anywhere;color:var(--color-ink-muted);font-size:1rem}.relation-editor fieldset,.placement-form fieldset,.prediction-gate{display:grid;gap:var(--space-3)}.role-picker{display:flex!important;flex-wrap:wrap;gap:var(--space-3)}.role-picker label,.prediction-gate label{display:flex;align-items:center;gap:var(--space-2)}.role-picker input,.prediction-gate input{width:2.75rem;min-width:2.75rem;height:2.75rem;min-height:2.75rem;flex:0 0 auto}.bottleneck-cards{display:grid;gap:var(--space-3)}.bottleneck-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);cursor:pointer}.bottleneck-card input{width:2.75rem;min-width:2.75rem;height:2.75rem;min-height:2.75rem;margin-top:.25rem}.bottleneck-card-content{display:grid;gap:var(--space-1);min-width:0}.bottleneck-card--resource-wait{border-left:5px solid var(--color-wait)}.bottleneck-card--dependency-path{border-left:5px solid var(--color-primary)}.bottleneck-card--role-wait{border-left:5px solid var(--color-quality)}.bottleneck-card--solo-wait{border-left:5px solid var(--color-safety)}.simulation-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-3);border:2px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface)}.simulation-timeline ol{display:grid;gap:var(--space-2);padding-left:1.4rem}.simulation-timeline li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2)}.simulation-wait{padding:var(--space-3);border-left:5px solid var(--color-wait);background:#fff8e8}.simulation-wait p:last-child{margin-bottom:0}.schedule-view-switcher{display:flex;flex-wrap:wrap;gap:var(--space-2)}.schedule-view-switcher button[aria-pressed=true]{border-color:var(--color-primary);background:#e4f0fb}.timeline-grid-section{overflow-x:auto}.timeline-grid{display:grid;min-width:0;grid-template-columns:9rem repeat(var(--timeline-columns, 1),minmax(4rem,1fr));border:2px solid var(--color-line)}.timeline-grid-scroll-hint{color:var(--color-ink-muted);font-size:1rem;font-weight:700}.placement-start-help,.placement-role-help,.timeline-role-note{margin-bottom:0;color:var(--color-ink-muted);font-size:1rem}@media(min-width:601px){.timeline-grid{min-width:34rem}}.timeline-grid__header,.timeline-grid__row{display:contents}.timeline-grid__header>*,.timeline-grid__row>*{min-width:0;padding:var(--space-2);border-right:2px solid var(--color-line);border-bottom:2px solid var(--color-line);overflow-wrap:anywhere}.timeline-grid__header>*{background:#edf3f7;font-weight:800}.task-chip{display:grid;min-width:0;gap:var(--space-1)}.task-chip button:first-child{min-width:0;padding:var(--space-1);overflow-wrap:anywhere}.task-occupancy,.resource-occupancy{display:block;font-size:.85rem;overflow-wrap:anywhere}.attempt-comparison{overflow-x:auto}.attempt-comparison table{min-width:38rem}.update-history-trigger{position:static;min-height:2.75rem;border-color:var(--color-primary);border-radius:999px;background:var(--color-surface)}.scenario-navigation__button{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-1) var(--space-2);width:100%}.scenario-selection-status{color:var(--color-primary-dark);font-size:.85rem;font-weight:800}.modal-backdrop{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:var(--space-4);background:#1f2a37}.modal-dialog{width:min(100%,34rem);max-height:calc(100vh - 2rem);overflow:auto;padding:var(--space-5);border:2px solid var(--color-line-strong);border-radius:var(--radius-lg);background:var(--color-paper)}@media(max-width:600px){.task-card__field{grid-template-columns:1fr;gap:0}.attempt-comparison table{min-width:0}.attempt-comparison thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.attempt-comparison tr,.attempt-comparison td,.attempt-comparison th{display:block}.attempt-comparison tr{margin-bottom:var(--space-3);border:2px solid var(--color-line)}.attempt-comparison td:before{display:block;margin-bottom:var(--space-1);color:var(--color-ink-muted);font-size:.85rem;font-weight:800}.attempt-comparison td:nth-of-type(1):before{content:"최초 일정"}.attempt-comparison td:nth-of-type(2):before{content:"수정 일정"}.attempt-comparison td:nth-of-type(3):before{content:"변화"}}@media print{body>#root>main>*{visibility:hidden}.teacher-summary,.teacher-summary *{visibility:visible}.teacher-summary{position:absolute;top:0;left:0;width:100%;border:0;box-shadow:none}.no-print,.no-print *{display:none!important}}.evidence-form{display:grid;gap:var(--space-3)}.evidence-progress{display:grid;grid-template-columns:1fr auto;gap:var(--space-1) var(--space-3);align-items:center;padding:var(--space-3);border:2px solid var(--color-primary);border-radius:var(--radius-md);background:#edf5fc}.evidence-progress__bar{grid-column:1 / -1;display:block;height:.7rem;overflow:hidden;border-radius:999px;background:#d8e4ee}.evidence-progress__bar>span{display:block;height:100%;border-radius:inherit;background:var(--color-primary);transition:width .16s ease-out}.evidence-example,.evidence-next,.evidence-learner-term{margin-bottom:0;overflow-wrap:anywhere}.evidence-learner-term{color:var(--color-ink-muted)}.evidence-example{padding:var(--space-2) var(--space-3);border-left:4px solid var(--color-quality);background:#f5f8ed}.evidence-next{color:var(--color-primary-dark);font-weight:800}.report-learning-wrap-up{padding:var(--space-4);border:2px solid var(--color-quality);border-radius:var(--radius-md);background:#f8faef}.report-learning-wrap-up ul{display:grid;gap:var(--space-2);margin-bottom:var(--space-4)}.report-learning-wrap-up p{margin-bottom:0}.evidence-form fieldset{display:grid;gap:var(--space-3)}.evidence-form fieldset>label{min-width:0}@media(max-width:600px){.evidence-form fieldset{gap:var(--space-2);padding:var(--space-3)}.evidence-example{font-size:.95rem}.report-learning-wrap-up{padding:var(--space-3)}}.relation-list{display:grid;width:100%;gap:var(--space-2);padding-left:1.5rem}.relation-list li{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2);border-bottom:2px solid var(--color-line)}.relation-list li span{min-width:0;overflow-wrap:anywhere}.relation-list li button{flex:0 0 auto;min-height:var(--control-height)}.relation-requirements{display:grid;gap:var(--space-2);padding:var(--space-3);border-left:5px solid var(--color-primary);background:#edf5fc}.relation-requirements h3,.relation-requirements p,.relation-requirement-list{margin-bottom:0}.relation-requirement-list{display:grid;width:100%;gap:var(--space-2);padding-left:1.5rem}.relation-requirement-list li{overflow-wrap:anywhere}.relation-graph{display:block;width:100%;min-height:280px;height:auto;overflow:visible;border:2px solid var(--color-line);border-radius:var(--radius-md);background:#f7fafc}.relation-node rect{fill:var(--color-surface);stroke:var(--color-primary);stroke-width:2}.relation-node text,.relation-edge-label{fill:var(--color-ink);font-family:inherit;font-size:12px;font-weight:700}.relation-edge--safety,.relation-edge-label--safety{color:var(--color-safety)}.relation-edge--quality,.relation-edge-label--quality{color:var(--color-quality)}.relation-edge--workflow,.relation-edge-label--workflow{color:var(--color-primary)}@media(max-width:600px){.relation-list li{align-items:flex-start;flex-direction:column}.relation-graph{display:none}}.gi-pulse{animation:gi-pulse 1.8s ease-in-out infinite}@keyframes gi-pulse{0%,to{box-shadow:0 0 #2363a82e}50%{box-shadow:0 0 0 6px #2363a847}}@media(prefers-reduced-motion:reduce){.gi-pulse{animation:none;box-shadow:0 0 0 3px var(--color-focus)}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
