:root{font-family:Inter,Segoe UI,system-ui,sans-serif;color:#211b35;background:#f7f6fb;font-size:15px;--ink:#211b35;--muted:#615a72;--accent:#603dc6;--line:#e8e3f0;--surface:#fff}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #7956e6;outline-offset:3px}.sidebar{background:#201833;color:#fff;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:27px 19px 20px}.brand{display:flex;align-items:center;gap:11px;font-weight:750;font-size:19px;margin:0 7px 37px}.brand small{display:block;color:#c2b5dc;font-size:12px;font-weight:500;margin-top:2px}.logo{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:#a98cff;color:#21183c;font-weight:850}.side-body>label{font-size:11px;letter-spacing:.13em;color:#cec0e6;padding-left:4px}.sidebar select,.side-new{width:100%;margin-top:9px;color:#fff;background:#322746;border:1px solid #4b3b64;border-radius:9px;padding:10px}.sidebar select{margin-bottom:1px}.side-new{text-align:left;background:transparent;border-style:dashed;color:#e3d7fe}nav{display:grid;gap:5px;margin-top:31px}nav button{display:flex;gap:12px;align-items:center;text-align:left;padding:11px;color:#e1d7ef;background:none;border:0;border-radius:9px}nav button[aria-current=page]{background:#443260;color:#fff;font-weight:650}nav button:hover,.side-new:hover{background:#3c2d53}.nav-icon{width:18px;text-align:center;color:#c6afff}.side-foot{margin-top:auto;color:#d1c5e4;font-size:11px;padding:12px 2px 0;display:flex;gap:7px;align-items:center}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8fe2b5}.top{height:68px;border-bottom:1px solid var(--line);background:var(--surface);display:flex;justify-content:space-between;align-items:center;padding:0 34px;gap:12px;color:var(--muted);font-size:13px}.top b{margin:0 8px;color:#a399b2}.wrap{max-width:1320px;margin:auto;padding:29px 34px 50px}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:9px;background:var(--accent);color:#fff;font-weight:650;padding:9px 14px;font-size:13px;white-space:nowrap}.button:hover{filter:brightness(.93)}.outline{color:var(--ink);background:#fff;border-color:#ded7ea}.hero{background:linear-gradient(110deg,#eee6ff,#f5edff 64%,#e7dbff);border:1px solid #e7dbf9;padding:29px 32px;border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:24px;overflow:hidden}.tag,.pill{display:inline-flex;align-items:center;gap:6px;border-radius:99px;font-size:12px;font-weight:700;background:#fff9;color:#5634a3;padding:6px 10px}.pill{background:#f1eafa;white-space:nowrap}.hero h1{font-size:clamp(29px,3.8vw,48px);letter-spacing:-.055em;margin:9px 0 8px;overflow-wrap:anywhere}.hero p,.subtitle,.muted{color:var(--muted);margin:0;line-height:1.5}.hero-art{height:108px;width:151px;flex:none;position:relative;display:grid;place-items:center;background:#fff5;border:1px solid #fff9;border-radius:23px;transform:rotate(-8deg);color:#7352c8}.hero-art i{width:84px;height:62px;border:2px solid #9575df;border-radius:12px;display:grid;place-items:center;font:700 25px monospace}.hero-art i:before{content:"";position:absolute;width:82px;top:38px;border-top:1px solid #ab90ed}.hero-art i span{padding-top:12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:17px 0}.card,.phase,.entry{background:#fff;border:1px solid var(--line);border-radius:13px}.stat{padding:16px 18px}.stat small{display:block;color:var(--muted);font-size:12px;margin-bottom:7px}.stat strong{font-size:19px}.meter{width:100%;height:6px;appearance:none;border:0;background:#ece5f5;border-radius:9px;display:block;margin-top:10px;overflow:hidden}.meter::-webkit-progress-bar{background:#ece5f5}.meter::-webkit-progress-value{background:#7954d5}.meter::-moz-progress-bar{background:#7954d5}.overview{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:17px;align-items:start}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:5px 0 12px}h2{font-size:19px;letter-spacing:-.025em;margin:0}h3{font-size:16px;margin:0 0 13px}.phase{margin-bottom:8px}.phase summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:11px;padding:11px 13px}.phase summary::-webkit-details-marker{display:none}.phase summary:after{content:"⌄";color:#745ca9}.phase[open] summary:after{content:"⌃"}.phase-no{height:31px;width:31px;border-radius:8px;background:#f1eafa;color:#6541b3;display:grid;place-items:center;font-size:12px;font-weight:800;flex:none}.phase-name{font-weight:700;flex:1}.phase-count{font-size:12px;color:var(--muted)}.tasks{border-top:1px solid var(--line);padding:0 13px}.task{display:flex;gap:9px;align-items:flex-start;padding:10px 0;line-height:1.4;font-size:13px}.task+.task{border-top:1px solid var(--line)}input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px;flex:none;margin:1px 0 0}.task small{margin-left:auto;white-space:nowrap;color:var(--muted)}.panel{padding:17px;margin-bottom:13px}.next{border-color:#dfd0fa}.panel label,dialog label,.entry label{display:grid;gap:6px;color:var(--muted);font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wide{grid-column:1/-1}input:not([type=checkbox]),textarea,select{min-width:0;width:100%;border:1px solid #ded7e9;border-radius:8px;padding:9px 10px;background:#fcfbfe;color:var(--ink)}textarea{resize:vertical;min-height:67px}.page-title{margin:0 0 7px;font-size:34px;letter-spacing:-.05em}.page-header{margin-bottom:20px}.notice{background:#efe8fa;border-radius:10px;padding:11px 14px;color:#503783;font-size:13px;margin:0 0 16px}.entry{padding:15px;margin-bottom:9px}.entry-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.entry-top select{width:auto}.tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.empty{padding:19px;color:var(--muted);border:1px dashed #d8cce8;border-radius:10px}dialog{border:1px solid var(--line);border-radius:14px;width:min(460px,calc(100% - 28px));padding:24px;color:var(--ink)}dialog::backdrop{background:#1e1638a0}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:17px}.toast{position:fixed;bottom:16px;right:16px;max-width:calc(100% - 32px);padding:11px 15px;background:#29203d;color:#fff;border-radius:9px;z-index:5}.sub-actions{margin-top:13px}.field-note{font-size:12px;margin-top:8px}@media(max-width:950px){body{grid-template-columns:197px minmax(0,1fr)}.wrap,.top{padding-left:22px;padding-right:22px}.overview{grid-template-columns:1fr}.quick{grid-row:1}.quick .card:last-child{display:none}}@media(max-width:650px){body{display:block}.sidebar{position:static;height:auto;padding:13px}.brand{margin:0 0 13px}.side-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}.side-body>label{grid-column:1/-1}.side-body select,.side-new{margin:0}.sidebar nav{grid-column:1/-1;display:flex;overflow:auto;margin-top:5px}.sidebar nav button{white-space:nowrap;padding:8px}.side-foot{padding-top:7px}.top{height:auto;min-height:57px;padding:8px 13px}.wrap{padding:15px 13px 35px}.hero{padding:19px}.hero-art{display:none}.stats{gap:6px}.stat{padding:10px}.stat strong{font-size:15px}.stat small{font-size:11px}.form-grid{grid-template-columns:1fr}.phase-name{font-size:13px}}.backup{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.side-new{width:auto;min-width:100%}.quick .card:last-child{display:block}@media(max-width:650px){.top>.backup{flex-shrink:0}.top .button{padding:7px;font-size:11px}.top>span{overflow-wrap:anywhere}}
