.plan-page{--plan-bg:#f7f7f5;--plan-line:#e5e5e2;--plan-text:#292927;--plan-muted:#787774;display:grid;grid-template-columns:250px 1fr;min-height:calc(100vh - 76px);background:var(--plan-bg);color:var(--plan-text)}.plan-index{position:-webkit-sticky;position:sticky;top:0;height:100vh;padding:28px 18px;background:#f0f0ed;border-right:1px solid var(--plan-line);display:flex;flex-direction:column}.plan-index>div{display:flex;align-items:center;gap:10px;padding:0 8px 25px}.plan-logo{display:grid;place-items:center;width:32px;height:32px;border-radius:7px;background:#e9d8cc;color:#8a4f37;font-weight:900}.plan-index nav{display:flex;flex-direction:column;gap:3px}.plan-index nav a{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:6px;color:#565652;font-size:.8rem}.plan-index nav a:hover{background:#e3e3df;color:#222}.plan-index nav span{color:#aaa;font-size:.65rem;font-weight:800}.plan-index>small{margin-top:auto;padding:18px 9px 0;border-top:1px solid #d9d9d5;color:#999;line-height:1.55}.plan-workspace{min-width:0}.plan-toolbar{position:-webkit-sticky;position:sticky;top:0;z-index:5;min-height:52px;padding:8px 28px;display:flex;align-items:center;justify-content:space-between;background:rgba(247,247,245,.92);border-bottom:1px solid var(--plan-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:.75rem;color:var(--plan-muted)}.plan-toolbar>div:first-child{display:flex;align-items:center;gap:8px}.save-dot{width:7px;height:7px;border-radius:50%;background:#4fa875}.plan-toolbar-actions{display:flex;gap:4px}.plan-toolbar button{padding:7px 10px;border:0;border-radius:6px;background:transparent;color:#595955;font-size:.72rem}.plan-toolbar button:hover{background:#e9e9e5}.plan-toolbar button.danger:hover{background:#f6e4df;color:#a5412f}.plan-document{width:min(100%,920px);margin:0 auto;padding:80px 70px 140px}.plan-cover{padding-bottom:45px;border-bottom:1px solid var(--plan-line)}.plan-cover-icon{width:74px;height:74px;display:grid;place-items:center;margin-bottom:30px;border-radius:16px;background:#2d6a57;color:white;font-family:Georgia,serif;font-size:2.2rem;font-weight:900;box-shadow:0 10px 24px rgba(45,106,87,.16)}.plan-cover>p,.plan-section-heading p{color:#a66a52;font-size:.68rem;font-weight:900;letter-spacing:.14em}.plan-cover h1{font-size:clamp(2.4rem,5vw,4.8rem);margin:12px 0 24px;outline:none}.plan-body:focus,.plan-cover h1:focus,.plan-section h2:focus{background:#fff;border-radius:5px;box-shadow:0 0 0 3px rgba(45,106,87,.12)}.plan-meta{display:flex;flex-wrap:wrap;gap:7px}.plan-meta span{padding:5px 9px;border-radius:5px;background:#e9e9e5;color:#676763;font-size:.7rem}.plan-callout{display:flex;gap:14px;margin:35px 0 25px;padding:18px 20px;background:#edf3ee;border-radius:8px;color:#4b5d54}.plan-callout b{color:#2d6a57}.plan-callout p{margin:0;font-size:.84rem}.plan-sections{border-top:1px solid var(--plan-line)}.plan-section{padding:30px 0;border-bottom:1px solid var(--plan-line);scroll-margin-top:75px}.plan-section-heading{display:flex;gap:10px;align-items:flex-start}.plan-section-heading>div{flex:1 1}.plan-toggle{width:27px;height:27px;margin-top:19px;border:0;border-radius:5px;background:transparent;color:#999;transform:rotate(0);transition:.16s}.plan-toggle:hover{background:#e8e8e5}.plan-section.open .plan-toggle{transform:rotate(90deg)}.plan-section-heading p{margin:0 0 5px}.plan-section h2{display:inline-block;min-width:80%;margin:0;outline:none;font-size:1.55rem}.plan-body{margin:22px 0 0 37px;padding:8px 10px;white-space:pre-wrap;outline:none;color:#474744;line-height:1.85;font-size:.96rem;min-height:44px}.plan-body:hover,.plan-cover h1:hover,.plan-section h2:hover{background:rgba(255,255,255,.65);border-radius:5px}@media(max-width:900px){.plan-page{grid-template-columns:1fr}.plan-index{display:none}.plan-document{padding:60px 40px 110px}.plan-toolbar{top:0}}@media(max-width:620px){.plan-toolbar{align-items:flex-start;padding:10px 15px}.plan-toolbar>div:first-child{display:none}.plan-toolbar-actions{width:100%;overflow-x:auto}.plan-toolbar button{white-space:nowrap}.plan-document{padding:45px 20px 90px}.plan-cover-icon{width:58px;height:58px;font-size:1.7rem}.plan-cover h1{font-size:2.45rem}.plan-body{margin-left:16px}.plan-section h2{font-size:1.3rem}}