:root{--ink:#16221f;--muted:#61706c;--paper:#f3f1eb;--surface:#fffefb;--forest:#123f3a;--forest-2:#1f5b50;--mint:#bde3cf;--lime:#d9ec9b;--gold:#d7ab5c;--line:#d9ddd7;--danger:#a3423f;--shadow:0 18px 46px #1d363014}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{color:var(--ink);background:radial-gradient(circle at 8% 0%, #bde3cf61, transparent 28rem), linear-gradient(180deg, #f8f7f2 0, var(--paper) 28rem);-webkit-font-smoothing:antialiased;margin:0;font-family:Pretendard,Noto Sans KR,Apple SD Gothic Neo,system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{width:min(1500px,100%);min-height:100vh;margin:0 auto;padding:0 36px}.masthead{border-bottom:1px solid #123f3a2b;align-items:center;gap:17px;min-height:108px;display:flex}.brand-mark{width:51px;height:51px;color:var(--surface);background:var(--forest);box-shadow:7px 7px 0 var(--mint);border-radius:16px 16px 16px 5px;flex:none;place-items:center;font:800 24px/1 Georgia,serif;display:grid}.brand-copy{min-width:0}.brand-copy h1{letter-spacing:-.02em;margin:2px 0 0;font:600 clamp(18px,2vw,26px)/1.2 Georgia,Times New Roman,serif}.eyebrow,.section-index,.panel-kicker{color:var(--forest-2);letter-spacing:.16em;margin:0;font-size:10px;font-weight:800}.header-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.phase-badge,.signin-link{border:1px solid #123f3a33;border-radius:999px;font-size:12px;font-weight:700}.phase-badge{background:#ffffff8c;align-items:center;gap:8px;padding:10px 14px;display:flex}.phase-badge i{background:#4a9e77;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #4a9e7724}.signin-link{color:#fff;background:var(--forest);padding:10px 16px;text-decoration:none}.module-nav{border:1px solid var(--line);background:#ffffff91;border-radius:18px;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:23px;display:grid;overflow:hidden;box-shadow:0 8px 28px #1d36300a}.module-item{border-right:1px solid var(--line);color:#7e8885;align-items:center;gap:10px;min-height:70px;padding:12px 15px;display:flex;position:relative}.module-item:last-child{border-right:0}.module-item.is-active{color:#fff;background:var(--forest)}.module-number{color:var(--gold);font:italic 700 17px/1 Georgia,serif}.module-item b,.module-item small{display:block}.module-item b{font-size:13px}.module-item small{opacity:.74;white-space:nowrap;margin-top:3px;font-size:10px}.module-item em{color:#84908d;background:#ebeeea;border-radius:4px;padding:2px 5px;font-size:8px;font-style:normal;position:absolute;top:7px;right:8px}.page-heading{justify-content:space-between;align-items:flex-end;gap:32px;padding:48px 6px 30px;display:flex}.page-heading h2{letter-spacing:-.035em;max-width:720px;margin:7px 0 9px;font:700 clamp(29px,3vw,44px)/1.14 Georgia,Times New Roman,serif}.page-heading p:not(.section-index){max-width:660px;color:var(--muted);margin:0;font-size:14px;line-height:1.7}.phase-progress{gap:18px;padding-bottom:5px;display:flex}.phase-progress span{color:#8e9895;white-space:nowrap;align-items:center;gap:7px;font-size:10px;display:flex;position:relative}.phase-progress span:not(:last-child):after{content:"";background:#cbd0cc;width:22px;height:1px;margin-left:10px}.phase-progress b{border:1px solid #cbd0cc;border-radius:50%;place-items:center;width:24px;height:24px;font:700 9px/1 Georgia,serif;display:grid}.phase-progress .current{color:var(--forest);font-weight:700}.phase-progress .current b{color:#fff;background:var(--forest);border-color:var(--forest)}.workspace{padding-bottom:42px}.workspace-grid{grid-template-columns:minmax(0,1.55fr) minmax(360px,.85fr);align-items:start;gap:22px;display:grid}.panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffefbeb;border-radius:22px}.project-form,.project-list-panel,.toc-preview,.demo-guide{padding:27px}.panel-title{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:23px;display:flex}.panel-title h3{margin:5px 0 0;font:700 24px/1.2 Georgia,Times New Roman,serif}.editing-chip,.count-badge,.domain-chip{border-radius:999px;font-size:11px;font-weight:800}.editing-chip{color:#785619;background:#f5e7c8;padding:7px 11px}.count-badge{color:#fff;background:var(--forest);place-items:center;min-width:34px;height:34px;display:grid}.domain-chip{color:var(--forest);background:var(--mint);padding:8px 13px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field{flex-direction:column;gap:7px;min-width:0;margin-bottom:16px;display:flex}.field-wide{grid-column:1/-1}.field>span,.stakeholder-fields legend{color:#3a4945;letter-spacing:.01em;font-size:11px;font-weight:800}.field span i{color:#a2602d;margin-left:4px;font-size:9px;font-style:normal}.field input,.field select,.field textarea{width:100%;color:var(--ink);background:#fbfbf8;border:1px solid #d8ddd8;border-radius:10px;outline:none;transition:border-color .16s,box-shadow .16s,background .16s}.field input,.field select{min-height:44px;padding:0 13px}.field textarea{resize:vertical;padding:12px 13px;line-height:1.65}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--forest-2);background:#fff;box-shadow:0 0 0 3px #1f5b501a}.field input::placeholder,.field textarea::placeholder{color:#a4aba8}.toc-field{margin-top:5px;position:relative}.toc-field small{color:#909996;align-self:flex-end;font-size:9px}.stakeholder-fields{background:#f7f8f3;border:1px dashed #cbd4cd;border-radius:14px;margin:2px 0 17px;padding:17px 17px 1px}.stakeholder-fields legend{padding:0 7px}.form-actions{justify-content:flex-end;gap:9px;margin-top:3px;display:flex}.button{cursor:pointer;border:0;border-radius:10px;min-height:44px;padding:0 17px;font-size:12px;font-weight:800;transition:transform .15s,opacity .15s}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.6}.button-primary{color:#fff;background:var(--forest);align-items:center;gap:28px;display:flex;box-shadow:0 8px 20px #123f3a2e}.button-primary span{color:var(--lime);font-size:17px}.button-muted{color:var(--forest);background:#e9eeea}.notice{border-radius:12px;align-items:center;gap:11px;margin-bottom:16px;padding:13px 15px;font-size:12px;display:flex}.notice>span{border-radius:50%;place-items:center;width:23px;height:23px;font-weight:900;display:grid}.notice p{flex:1;margin:0}.notice button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:20px}.notice-error{color:#78322f;background:#f8e4e1;border:1px solid #edc6c1}.notice-error>span{color:#fff;background:var(--danger)}.notice-success{color:#245f4d;background:#e2f2e9;border:1px solid #bcdcca}.notice-success>span{color:#fff;background:#357b61}.demo-notice{color:#eaf4ed;background:var(--forest);border:1px solid #ffffff1f;border-radius:15px;grid-template-columns:minmax(280px,.8fr) 1.2fr;align-items:center;gap:24px;margin-bottom:16px;padding:16px 20px;display:grid;box-shadow:0 12px 30px #123f3a24}.demo-notice div span,.demo-notice div b{display:block}.demo-notice div span{color:var(--lime);letter-spacing:.16em;font-size:8px;font-weight:900}.demo-notice div b{margin-top:4px;font:700 14px/1.4 Georgia,Noto Serif KR,serif}.demo-notice p{color:#c5d8d0;margin:0;font-size:10px;line-height:1.65}.demo-guide{min-height:520px}.demo-guide h3{margin:6px 0 14px;font:700 27px/1.25 Georgia,Noto Serif KR,serif}.demo-guide>div:first-child>p{color:var(--muted);margin:0;font-size:12px;line-height:1.8}.demo-guide ol{flex-direction:column;gap:9px;margin:24px 0;padding:0;list-style:none;display:flex}.demo-guide li{background:#f6f7f2;border:1px solid #e1e5df;border-radius:12px;grid-template-columns:35px 1fr;gap:13px;padding:14px;display:grid}.demo-guide li>span{color:var(--gold);font:italic 800 12px/1.4 Georgia,serif}.demo-guide li b{color:var(--forest);font-size:12px}.demo-guide li p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.55}.demo-guardrail{color:#6d5627;background:#f5ecd8;border-radius:11px;padding:14px 16px}.demo-guardrail b{font-size:10px}.demo-guardrail p{margin:4px 0 0;font-size:9px;line-height:1.6}.demo-login-link{width:fit-content;margin-top:18px;text-decoration:none}.project-list-panel{max-height:calc(100vh - 32px);position:sticky;top:16px;overflow:auto}.project-list{flex-direction:column;gap:8px;display:flex}.project-row{width:100%;color:inherit;text-align:left;cursor:pointer;background:#f8f8f4;border:1px solid #0000;border-radius:13px;grid-template-columns:30px minmax(0,1fr) 42px;align-items:center;gap:10px;padding:14px 12px;display:grid}.project-row:hover{border-color:#c7d5cc}.project-row.is-selected{box-shadow:inset 4px 0 0 var(--forest-2);background:#eef5ef;border-color:#91b6a2}.project-order{color:#9aa39f;font:italic 700 12px/1 Georgia,serif}.project-main{min-width:0}.project-main b,.project-main small,.project-main em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-main b{font-size:13px}.project-main small{color:#64716d;margin-top:5px;font-size:10px}.project-main em{color:#919a97;margin-top:5px;font-size:9px;font-style:normal}.project-meta{text-align:center}.project-meta small,.project-meta b{display:block}.project-meta small{color:#89928f;font-size:8px}.project-meta b{color:var(--forest);margin-top:2px;font:700 17px/1 Georgia,serif}.selection-actions{background:var(--forest);color:#fff;border-radius:14px;margin-top:17px;padding:15px}.selection-actions span,.selection-actions b{display:block}.selection-actions span{color:var(--mint);letter-spacing:.09em;font-size:9px;font-weight:800}.selection-actions b{margin-top:5px;font-size:12px}.selection-actions button{color:var(--forest);background:var(--lime);cursor:pointer;border:0;border-radius:7px;margin-top:13px;padding:7px 10px;font-size:10px;font-weight:800}.loading-state,.empty-state{color:#77827f;text-align:center;place-items:center;min-height:230px;display:grid}.loading-state i{border:2px solid #d6ddd8;border-top-color:var(--forest);border-radius:50%;width:26px;height:26px;margin-bottom:13px;animation:.8s linear infinite spin}.loading-state span,.empty-state p{font-size:11px}.empty-state b{color:var(--forest);align-self:end}.empty-state p{align-self:start;max-width:230px;margin:8px auto;line-height:1.6}@keyframes spin{to{transform:rotate(360deg)}}.toc-preview{margin-top:22px;overflow:hidden}.impact-flow{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:9px;display:grid}.impact-flow>div{background:#f4f5f0;border:1px solid #e0e3de;border-radius:13px;min-height:112px;padding:17px 15px;position:relative}.impact-flow>i{color:#91a19c;font:400 17px/1 Georgia,serif}.impact-flow div>span{color:#9ba6a2;font:italic 700 10px/1 Georgia,serif}.impact-flow small,.impact-flow b{display:block}.impact-flow small{color:var(--forest-2);letter-spacing:.1em;margin-top:15px;font-size:9px;font-weight:900}.impact-flow b{margin-top:5px;font-size:12px;line-height:1.45}.impact-flow .highlight{background:#e5f1e8;border-color:#a8cbb6}.impact-flow .impact{color:#fff;background:var(--forest);border-color:var(--forest)}.impact-flow .impact span,.impact-flow .impact small{color:var(--lime)}.toc-story{background:#f1eadb;border-radius:13px;grid-template-columns:110px 1fr;gap:18px;margin-top:18px;padding:20px;display:grid}.toc-story span{color:#8a6427;letter-spacing:.1em;font-size:9px;font-weight:900}.toc-story p{margin:0;font:400 14px/1.8 Georgia,Noto Serif KR,serif}.stakeholder-strip{align-items:center;gap:9px;margin-top:15px;display:flex}.stakeholder-strip>span{color:#8d9693;letter-spacing:.14em;margin-right:5px;font-size:8px;font-weight:900}.stakeholder-strip div{background:#f5f5f1;border-radius:8px;align-items:center;gap:7px;padding:7px 10px;display:flex}.stakeholder-strip small{color:#7c8985;font-size:8px}.stakeholder-strip b{font-size:10px}.empty-preview{color:#7f8986;background:#f6f6f2;border-radius:13px;place-items:center;min-height:180px;font-size:12px;display:grid}.site-footer{color:#75807c;letter-spacing:.08em;border-top:1px solid #123f3a1f;justify-content:space-between;padding:25px 3px 35px;font-size:9px;display:flex}.auth-page{background:#f7f6f1;grid-template-columns:minmax(440px,620px) minmax(360px,1fr);min-height:100vh;display:grid}.auth-card{flex-direction:column;justify-content:center;width:min(460px,100% - 48px);margin:0 auto;padding:48px 0;display:flex}.auth-brand{color:var(--ink);align-items:center;gap:14px;margin-bottom:72px;text-decoration:none;display:flex}.auth-brand>span{color:#fff;background:var(--forest);width:43px;height:43px;box-shadow:5px 5px 0 var(--mint);border-radius:13px 13px 13px 4px;place-items:center;font:800 20px/1 Georgia,serif;display:grid}.auth-brand small,.auth-brand b{display:block}.auth-brand small{color:var(--forest-2);letter-spacing:.14em;font-size:8px;font-weight:800}.auth-brand b{margin-top:3px;font:700 18px/1.1 Georgia,serif}.auth-heading h1,.auth-signed-in h1{letter-spacing:-.035em;margin:8px 0 12px;font:700 38px/1.15 Georgia,Times New Roman,serif}.auth-heading>p:last-child,.auth-signed-in>p:not(.panel-kicker){color:var(--muted);margin:0 0 28px;font-size:13px;line-height:1.7}.auth-form label{flex-direction:column;gap:8px;display:flex}.auth-form label span{font-size:11px;font-weight:800}.auth-form input{border:1px solid var(--line);background:#fff;border-radius:10px;outline:none;width:100%;height:49px;padding:0 14px}.auth-form input:focus{border-color:var(--forest-2);box-shadow:0 0 0 3px #1f5b501a}.auth-form .button{justify-content:space-between;width:100%;margin-top:12px}.auth-divider{color:#939c99;align-items:center;gap:10px;margin:23px 0;font-size:9px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.github-button{color:#fff;cursor:pointer;background:#202723;border:0;border-radius:10px;width:100%;height:47px;font-size:12px;font-weight:800}.auth-footnote{color:#949c99;text-align:center;margin:24px 0 0;font-size:9px;line-height:1.6}.auth-message{border-radius:9px;margin:-8px 0 18px;padding:11px 13px;font-size:11px}.auth-message.error{color:#78322f;background:#f8e4e1}.auth-message.success{color:#245f4d;background:#e2f2e9}.auth-actions{align-items:center;gap:10px;display:flex}.auth-actions .button-primary{text-decoration:none}.auth-aside{color:#fff;background:radial-gradient(circle at 100% 0, #2d7162 0, transparent 38%), var(--forest);flex-direction:column;justify-content:center;padding:8vw;display:flex}.auth-aside>p{color:var(--lime);letter-spacing:.18em;font-size:9px;font-weight:900}.auth-aside blockquote{letter-spacing:-.04em;margin:18px 0 70px;font:400 clamp(34px,4vw,60px)/1.35 Georgia,Noto Serif KR,serif}.auth-aside>div{border-top:1px solid #ffffff2b;gap:16px;padding:15px 0;font-size:12px;display:flex}.auth-aside>div span{color:var(--gold);font:italic 700 12px/1 Georgia,serif}@media (max-width:1080px){.module-nav{grid-template-columns:repeat(3,1fr)}.module-item:nth-child(3){border-right:0}.module-item:nth-child(-n+3){border-bottom:1px solid var(--line)}.workspace-grid{grid-template-columns:1fr}.project-list-panel{max-height:none;position:static}.impact-flow{grid-template-columns:1fr}.impact-flow>i{text-align:center;transform:rotate(90deg)}}@media (max-width:760px){.app-shell{padding:0 15px}.masthead{min-height:88px}.brand-mark{border-radius:13px 13px 13px 4px;width:42px;height:42px}.brand-copy h1{font-size:16px}.eyebrow{font-size:8px}.phase-badge{display:none}.signin-link{padding:8px 11px}.module-nav{border-radius:14px;grid-template-columns:1fr 1fr}.module-item:nth-child(2n){border-right:0}.module-item:nth-child(3){border-right:1px solid var(--line)}.module-item:nth-child(-n+4){border-bottom:1px solid var(--line)}.page-heading{padding:36px 3px 23px;display:block}.page-heading h2{font-size:30px}.phase-progress{display:none}.project-form,.project-list-panel,.toc-preview,.demo-guide{border-radius:17px;padding:20px}.demo-notice{grid-template-columns:1fr;gap:8px;padding:15px}.form-grid{grid-template-columns:1fr;gap:0}.toc-story{grid-template-columns:1fr;gap:8px}.stakeholder-strip{flex-direction:column;align-items:stretch}.stakeholder-strip>span{margin-bottom:4px}.site-footer{flex-direction:column;gap:12px}.auth-page{display:block}.auth-card{width:min(440px,100% - 36px);min-height:100vh}.auth-brand{margin-bottom:52px}.auth-aside{display:none}}
