:root{font-family:Segoe UI,Apple SD Gothic Neo,Noto Sans KR,sans-serif;line-height:1.5;font-weight:400;color:#172033;background:#eef2f7;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{margin:0;min-width:320px;min-height:100vh}body{background:radial-gradient(circle at top left,rgba(16,185,129,.12),transparent 24%),linear-gradient(180deg,#f6f8fb,#e9eef5);color:#172033}button,input{font:inherit}.app-shell,.start-screen,.workmode-screen{min-height:100vh}.app-inner{max-width:1680px;margin:0 auto;padding:16px}.top-grid{display:grid;gap:16px;grid-template-columns:minmax(300px,1.05fr) minmax(420px,1.3fr);align-items:start}.bottom-grid{margin-top:16px;grid-template-columns:232px minmax(620px,1fr) 360px}.side-column{display:grid;gap:16px}.panel,.workbook-shell{background:#fffffff5;border:1px solid #d7deea;border-radius:24px;box-shadow:0 16px 40px #0f172a0f;padding:20px}.panel h1,.panel h3,.panel h4,.workbook-shell h3{margin:0}.panel-meta,.section-meta,.status-label,.file-card-status{color:#667085;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.scenario-title,.hero-title{margin:8px 0 0;font-size:clamp(32px,4vw,52px);font-weight:900;letter-spacing:-.04em;line-height:1.05}.objective-box,.notice-box,.selection-box,.soft-block,.soft-panel,.message-detail,.thought-box,.stage-note,.formula-bar{border:1px solid #d7deea;border-radius:18px;background:#f8fafc;padding:14px 16px}.notice-box{margin-top:16px;color:#166534;background:#ecfdf3;border-color:#b7e4c7}.objective-text,.report-title,.status-value{font-weight:800}.objective-text{margin-top:4px;font-size:20px}.metrics-grid,.action-row,.badge-row,.report-grid,.stage-grid,.start-grid{display:grid;gap:12px}.metrics-grid{margin-top:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.action-row,.badge-row{display:flex;flex-wrap:wrap}.action-row{margin-top:12px}.status-metric{border:1px solid #d7deea;border-radius:18px;background:#fff;padding:12px 14px}.status-good{background:#ecfdf3;border-color:#b7e4c7}.status-danger{background:#fff1f2;border-color:#fecdd3}.status-value{margin-top:6px;font-size:18px}.btn{border:1px solid transparent;border-radius:14px;padding:10px 14px;cursor:pointer;transition:.12s ease}.btn-primary{background:#111827;color:#fff}.btn-secondary,.btn-ghost{background:#fff;color:#172033;border-color:#d7deea}.btn:hover{transform:translateY(-1px)}.btn-disabled{opacity:.45;cursor:not-allowed;transform:none}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;border:1px solid #d7deea;background:#fff;font-size:12px}.badge-active{background:#0f9f6e;color:#fff;border-color:#0f9f6e}.badge-success{background:#ecfdf3;color:#166534;border-color:#b7e4c7}.badge-muted{background:#f8fafc;color:#475467}.hint-panel{grid-column:1 / -1}.hint-list,.message-list,.file-list,.action-column,.inventory-grid,.preview-list,.report-lines{display:grid;gap:10px}.subsection-label{margin:8px 0;font-size:12px;font-weight:700;text-transform:uppercase;color:#667085}.file-card,.message-card,.inventory-card,.preview-card{border:1px solid #d7deea;border-radius:18px;background:#f8fafc;padding:14px;text-align:left;color:inherit}.file-card,.message-card{cursor:pointer}.file-card-active,.message-card-unread,.inventory-card-selected{background:#ecfdf3;border-color:#b7e4c7}.file-card-locked{opacity:.5;cursor:not-allowed}.file-card-name,.message-card-head strong,.inventory-card-head strong{display:block;font-weight:700}.file-card-note,.message-card-body,.inventory-note,.panel-copy,.modal-copy{color:#475467}.message-card-head,.inventory-card-head,.selection-head,.section-title,.modal-header,.popup-head,.hero-top,.workbook-topbar,.workmode-topbar{display:flex;justify-content:space-between;gap:12px;align-items:center}.inventory-actions{display:flex;gap:8px;margin-top:12px}.empty-text,.empty-panel{color:#667085}.empty-panel{border:1px dashed #cbd5e1;border-radius:18px;padding:18px}.text-input{width:100%;border:1px solid #cbd5e1;border-radius:14px;padding:12px 14px;background:#fff}.workbook-shell{overflow:hidden;padding:0;background:#f6f6f6}.workbook-topbar,.workmode-topbar{background:#107c41;color:#fff;padding:14px 18px}.workbook-title{font-weight:700}.workbook-subtitle{color:#ffffffc7;font-size:12px}.workbook-chip{border-radius:999px;padding:6px 10px;background:#ffffff24;font-size:12px}.workbook-menu,.sheet-tabs{background:#f3f3f3;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;padding:12px 18px;font-size:13px}.workbook-body,.workmode-table{padding:18px}.excel-table{overflow:auto;border:1px solid #d7deea;border-radius:18px;background:#fff}.excel-grid{display:grid}.excel-head-cell,.excel-index-cell,.excel-cell{min-width:0;border-right:1px solid #d7deea;border-bottom:1px solid #d7deea;padding:10px 8px;font-size:12px}.excel-head-cell,.excel-index-cell{text-align:center;background:#f3f4f6;font-weight:600;color:#667085}.excel-cell-compact{padding:8px}.stage-grid{grid-template-columns:minmax(0,.82fr) minmax(280px,.4fr)}.stage-grid-wide{grid-template-columns:minmax(0,.65fr) minmax(260px,.35fr)}.dark-panel{background:linear-gradient(180deg,#364152,#111827);color:#fff}.success-panel{background:linear-gradient(180deg,#f2fff7,#fff);border-color:#b7e4c7}.shard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.shard-card{border:1px solid rgba(255,255,255,.22);border-radius:18px;background:#ffffff14;padding:16px}.shard-content{display:flex;justify-content:space-between;align-items:end;font-size:34px}.sequence-buttons{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.sequence-button{border:1px solid #d7deea;border-radius:16px;background:#fff;padding:14px 0;font-weight:700}.sequence-display{margin-top:8px;font-size:28px;font-weight:800;letter-spacing:.25em}.signal-grid-wrap{overflow:auto;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#030712b8;padding:16px}.signal-grid{display:grid;grid-template-columns:repeat(23,24px);gap:4px}.signal-cell{width:24px;height:24px;border-radius:6px;border:1px solid #1f2937;background:#111827}.signal-signal{border-color:#6ee7b7;background:#34d399;box-shadow:0 0 14px #34d399a6}.signal-noise{border-color:#fcd34d;background:#fbbf24}.popup-stack{position:fixed;right:16px;bottom:16px;width:min(360px,calc(100vw - 32px));display:grid;gap:12px;z-index:40}.popup-card{border-radius:22px;padding:16px;background:#fffffff5;border:1px solid #d7deea;box-shadow:0 20px 50px #0206172e}.popup-error{background:#fff1f2;border-color:#fecdd3}.popup-exit{opacity:.55}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0206177a;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;z-index:60}.modal-sheet{width:min(960px,100%);margin-top:40px;background:#fff;border-radius:28px;border:1px solid #d7deea;padding:24px;box-shadow:0 30px 90px #02061740}.report-layout{display:grid;gap:16px}.clear-panel{background:#0f172a;color:#fff}.dialogue-panel{background:#f5f3ff}.report-line{border-radius:14px;background:#f8fafc;padding:10px 12px}.start-screen{padding:24px}.start-hero{max-width:1400px;margin:0 auto;border:1px solid rgba(255,255,255,.08);border-radius:32px;padding:28px;color:#fff;background:radial-gradient(circle at top left,rgba(16,185,129,.18),transparent 24%),linear-gradient(135deg,#09090b,#0f172a 45%,#111827);box-shadow:0 30px 90px #0206172e}.hero-brand{font-weight:700}.hero-sub,.hero-copy,.save-text{color:#d1d5db}.start-grid{margin-top:20px;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)}.preview-panel{background:#0003;border-color:#ffffff1a}.preview-card{background:#ffffff0f;border-color:#ffffff14}.preview-card .section-meta{color:#cbd5e1}.workmode-screen{padding:18px}.workmode-shell{max-width:1700px;margin:0 auto;background:#fff;border:1px solid #d7deea;border-radius:24px;overflow:hidden}.formula-bar{border-radius:0;border-left:0;border-right:0}.sheet-tab{border-radius:999px;border:1px solid #d7deea;background:#fff;padding:6px 10px}.sheet-tab-active{background:#059669;color:#fff;border-color:#059669}@media(max-width:1180px){.top-grid,.bottom-grid,.start-grid,.stage-grid,.stage-grid-wide,.report-grid{grid-template-columns:1fr}.hint-panel{grid-column:auto}}@media(max-width:720px){.app-inner,.start-screen,.workmode-screen{padding:12px}.metrics-grid,.shard-grid,.sequence-buttons,.inventory-grid{grid-template-columns:1fr}}
