
:root{--paper:#f6f3ec;--ink:#292d29;--muted:#75796e;--green:#274d40;--line:#e3e3d8;--yellow:#f3eab3;--mint:#dfe9d8;--peach:#f2d8c7;--lavender:#e6def0;--sans:'Segoe UI',Arial,sans-serif;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.55}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}button{border:0;background:none}button,a{touch-action:manipulation}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #82946b;outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}h1{font-family:var(--serif);font-size:44px;line-height:1.15;letter-spacing:-1.6px}h2{font-family:var(--serif);font-size:29px;line-height:1.2}h3{font-size:19px;line-height:1.35}img{max-width:100%}.button{display:inline-flex;gap:24px;align-items:center;justify-content:center;padding:13px 20px;border-radius:6px;font-size:13px;font-weight:600;transition:background .15s,transform .15s}.button:hover{transform:translateY(-1px)}.primary{background:var(--green);color:#fff}.primary:hover{background:#193b30}.subtle{border:1px solid #d9ddd0;background:transparent}.danger-text{color:#8a3e2e}.eyebrow,.note-label,.tiny-label{font-size:10px;letter-spacing:1.8px;font-weight:650}.eyebrow{color:#727e65;display:flex;align-items:center;gap:14px;margin-bottom:17px}.eyebrow-line{width:30px;height:1px;background:#acb5a1}.quiet{font-size:12px;color:var(--muted)}.yellow{background:var(--yellow)}.mint{background:var(--mint)}.peach{background:var(--peach)}.lavender{background:var(--lavender)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;font-size:11px;line-height:1.25;letter-spacing:.25px}.brand strong{font-weight:650}.brand-mark{background:var(--green);color:#f4ebbd;width:39px;height:42px;display:grid;place-items:center;font:bold italic 38px/1 var(--serif);border-radius:11px 11px 11px 2px;padding-bottom:6px}.icon-button{font-size:22px;width:34px;height:34px;color:var(--muted);border-radius:5px}.icon-button:hover{background:#e9eadd}.boot{min-height:90vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:var(--muted)}#blazor-error-ui{display:none;position:fixed;bottom:0;width:100%;padding:15px;background:#ffe8d4;z-index:100}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.welcome{max-width:1440px;margin:auto;padding:32px 7% 0;min-height:100vh;background-image:radial-gradient(#d5d2c4 .65px,transparent .65px);background-size:20px 20px}.welcome-nav{display:flex;align-items:center;justify-content:space-between}.edition{font-size:9px;letter-spacing:2px;color:var(--muted)}.welcome-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;min-height:calc(100vh - 200px);padding:50px 0}.welcome h1{font-size:76px;letter-spacing:-3px}.welcome h1 em{font-weight:400;color:#738963}.welcome-lead{max-width:430px;font-size:16px;line-height:1.85;color:#6d7165;margin:27px 0}.welcome .button{padding:17px 26px}.welcome .quiet{margin-top:18px;font-size:10px}.welcome-art{position:relative;height:500px}.art-label{font-size:9px;letter-spacing:2px;position:absolute;top:0;left:20px;color:#6b755d;transform:rotate(-3deg)}.sample-note{position:absolute;padding:28px;box-shadow:2px 10px 15px #615c4b16;border-radius:2px}.sample-note:before,.tape{content:'';position:absolute;top:-9px;left:40%;width:60px;height:22px;background:#f3eadd99;transform:rotate(-8deg)}.sample-note.yellow{width:280px;height:270px;top:50px;left:15px;transform:rotate(-6deg);z-index:2}.sample-note.yellow h2{margin-top:22px}.sample-note.yellow p{max-width:180px;margin-top:12px;font-size:15px}.sample-note.yellow img{position:absolute;bottom:0;right:8px;width:80px}.sample-note.mint{width:220px;height:220px;top:190px;right:0;transform:rotate(7deg);z-index:3}.sample-note.mint h3{font:28px var(--serif);margin-top:20px}.sketch-heart{position:absolute;right:22px;bottom:5px;font:70px var(--serif);color:#61745a;transform:rotate(-12deg)}.sample-note.peach{bottom:0;left:25px;transform:rotate(-2deg);width:215px;height:180px;z-index:4}.sample-note.peach p{margin-top:15px;font-size:17px}.hand-arrow{position:absolute;bottom:10px;right:22px;font:60px var(--serif)}.art-caption{position:absolute;right:-5px;bottom:13px;font:italic 20px var(--serif);color:#7b816c;transform:rotate(-8deg)}.welcome-footer{border-top:1px solid #deded2;display:flex;justify-content:space-between;align-items:center;padding:25px 0;gap:25px}.welcome-footer span{font-size:8px;letter-spacing:1.5px;color:var(--muted)}.welcome-footer p{font:italic 15px var(--serif);color:#777d6b}.topbar{height:84px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 32px;gap:40px;background:#faf9f4;position:sticky;top:0;z-index:10}.topbar .brand{min-width:192px}.plan-selector{display:flex;align-items:center;gap:8px}.plan-selector select{max-width:280px;border:0;background:transparent;font-weight:550;padding:8px;font-size:12px}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:27px}.save-status{font-size:10px;color:#7a8370}.save-status:before{content:'●';font-size:7px;margin-right:8px;color:#899b6e}.avatar{width:34px;height:34px;border-radius:50%;background:#e5e9db;font-size:10px;font-weight:700}.workspace-layout{display:grid;grid-template-columns:244px minmax(0,1fr)}.sidebar{border-right:1px solid var(--line);padding:35px 22px;min-height:calc(100vh - 84px);background:#f8f7f0;display:flex;flex-direction:column}.nav-heading{font-size:9px;letter-spacing:2px;color:#949b89;margin:0 13px 15px}.stage-link{width:100%;display:flex;align-items:center;gap:13px;text-align:left;padding:12px 13px;border-radius:6px;margin:2px 0;color:#757c6c;font-size:12px;white-space:nowrap}.stage-number{font-size:10px;font-variant-numeric:tabular-nums;color:#9ca38f}.stage-arrow{margin-left:auto;opacity:0}.stage-link.active{background:#e4e9d9;color:#284b38;font-weight:650}.stage-link.active .stage-number{color:#56774b}.stage-link.active .stage-arrow{opacity:1}.stage-link:hover{background:#ecefe4}.nav-progress{margin:28px 13px;color:#8b927f;font-size:9px}.nav-progress progress{width:100%;height:4px;display:block;margin-top:10px;accent-color:#899a6e}.overview-link{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 13px;display:flex;gap:11px;align-items:center;width:100%;font-size:12px}.overview-link span{margin-right:auto}.sidebar-footer{margin:48px 13px 5px;color:#8c957e;display:flex;align-items:center;gap:14px}.sidebar-footer p{font:italic 15px/1.6 var(--serif)}.little-spark{font-size:38px;font-weight:200}.workspace-main{padding:25px 42px 28px;max-width:1500px;width:100%;margin:auto;min-height:calc(100vh - 84px);background-image:radial-gradient(#d4d4c7 .65px,transparent .65px);background-size:22px 22px}.breadcrumbs{display:flex;align-items:center;gap:12px;font-size:10px;color:#8e9582;margin-bottom:35px}.breadcrumbs button{font-size:9px;color:#8e9582;padding:2px}.breadcrumbs button:first-of-type{margin-left:auto}.chapter-heading{display:flex;align-items:center;justify-content:space-between;gap:35px}.chapter-intro{margin-top:17px;font-size:13px;max-width:540px;line-height:1.85;color:#7d8374}.chapter-doodle{display:grid;place-items:center;width:92px;height:92px;flex-shrink:0;border-radius:50% 44% 48% 40%;font:64px var(--serif);color:#657454;transform:rotate(-10deg);margin-right:12px}.board-toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:25px 0 17px;margin-bottom:32px;gap:20px}.view-switch{display:flex;gap:3px;border:1px solid #dfe2d5;border-radius:7px;padding:3px;background:#f3f3eb}.view-switch button{padding:7px 13px;border-radius:4px;font-size:10px;color:#8a927e}.view-switch .selected{background:#fffefa;color:#3c5d42;box-shadow:0 1px 4px #1b221318}.board-toolbar>span{font-size:10px;color:#999d90}.toolbar-dot{margin:0 10px}.note-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 20px;align-items:stretch}.note-card,.prompt-card,.add-note-card{position:relative;min-height:215px;text-align:left;border-radius:2px;padding:26px 22px;transition:transform .15s,box-shadow .15s}.note-card{box-shadow:1px 4px 6px #605e4210;transform:rotate(-.8deg);display:flex;flex-direction:column}.note-card:nth-child(2n){transform:rotate(.7deg)}.note-card:hover{transform:translateY(-4px) rotate(0);box-shadow:1px 7px 12px #605e4220}.note-card .note-label{font-size:10px;letter-spacing:.3px;color:#76795f;padding-right:7px}.note-card p{font:21px/1.45 var(--serif);white-space:pre-wrap;overflow-wrap:anywhere;margin:18px 0 24px}.note-edit{font-size:9px;color:#777c64;margin-top:auto;align-self:flex-end}.card-image{width:100%;max-height:160px;object-fit:cover;border:7px solid #fffdf5;margin-top:15px;box-shadow:0 1px 3px #0001}.prompt-card{border:1px dashed #d5d9c6;background:#f7f7ed80}.prompt-card:hover{background:#f0f0df;border-color:#aab698}.prompt-plus{display:grid;place-items:center;font-size:18px;color:#a0ab8e;width:25px;height:25px;margin-bottom:12px;border:1px solid #d9dec9;border-radius:50%}.prompt-card h3{font:19px var(--serif);max-width:230px}.prompt-card p{font-size:11px;line-height:1.8;color:#949a88;margin:12px 0 25px}.prompt-cta{font-size:9px;color:#849174}.add-note-card{min-height:75px;grid-column:1 / -1;display:flex;align-items:center;justify-content:center;gap:10px;color:#909981;font-size:11px;border:1px dashed #d8ddca;padding:18px}.add-note-card span{font-size:20px}.coach{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);margin-top:32px;padding:24px 6px;color:#7d876d}.coach-star{font-size:40px;font-weight:200;color:#a5ae91}.coach strong{font:italic 18px var(--serif);color:#667457}.coach p{font-size:10px;margin-top:6px}.coach-hand{font:43px var(--serif);margin-left:auto;margin-right:12px;color:#9ca789}.chapter-footer{display:flex;gap:12px;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px}.chapter-footer .button{font-size:10px;padding:11px 14px}.guided-prompt{padding:30px;background:#fffdf4;border:1px solid #e0e4d5;border-radius:7px;margin-bottom:30px;max-width:700px}.guided-prompt p{margin:15px 0;color:#7a8470}.guided-prompt .eyebrow{margin-top:0}.guided-prompt .button{margin:10px 0 20px}.guided-navigation{display:flex;justify-content:space-between;font-size:11px;padding-top:20px;border-top:1px solid var(--line)}.empty-plan{max-width:650px;margin:80px auto}.empty-plan>p:not(.eyebrow){margin:25px 0;font-size:16px;color:var(--muted)}.modal-backdrop{position:fixed;inset:0;z-index:30;background:#283b3280;display:flex;align-items:center;justify-content:center;padding:25px;backdrop-filter:blur(5px)}.modal{width:min(590px,100%);background:#fcfaf3;padding:30px 34px;border-radius:10px;box-shadow:0 20px 80px #1b302840;max-height:calc(100dvh - 50px);overflow:auto}.modal header{display:flex;align-items:center;justify-content:space-between}.modal header .eyebrow{margin:0}.modal h2{margin:15px 0}.editor-hint{font-size:13px;color:#7e8674;line-height:1.8;margin-bottom:25px}.modal label{display:block;font-size:11px;font-weight:600;margin-bottom:7px}.modal textarea,.modal input[type=text],.modal input:not([type]){width:100%;border:1px solid #d7deca;border-radius:5px;background:#fffef8;padding:13px;resize:vertical;font-size:15px;line-height:1.6}.modal textarea{margin-bottom:20px}.tiny-label{font-size:9px;color:#91997f;margin-bottom:10px}.example-chips{display:flex;flex-wrap:wrap;gap:7px}.example-chips button{border:1px solid #dfe2d3;border-radius:30px;font-size:11px;padding:6px 12px;color:#6b795f;background:#f1f2e8}.example-chips span{margin-left:7px;color:#a0ac8c}.editor-tools{display:flex;align-items:center;justify-content:space-between;margin:24px 0;gap:20px}.color-picker{border:0;display:flex;gap:10px;margin:0;padding:0}.color-picker legend{font-size:10px;color:#899279;margin-bottom:9px}.color-dot{width:25px;height:25px;border:2px solid #fcfaf3;border-radius:50%;outline:1px solid #e2e3d8}.color-dot.selected{outline:2px solid #5c7757}.image-upload{position:relative;cursor:pointer;padding:9px 13px;border:1px solid #d5dcc9;border-radius:5px;overflow:hidden;margin:14px 0 0!important;color:#6c795e}.image-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.image-preview{display:flex;align-items:center;gap:20px;font-size:12px}.image-preview img{max-height:130px;max-width:180px;object-fit:contain}.modal-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #e1e3d7;padding-top:22px;margin-top:22px}.modal-actions .danger-text{margin-right:auto}.error-toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:50;background:#fff8ec;border:1px solid #dfb99e;box-shadow:0 5px 30px #37281830;padding:16px 22px;border-radius:7px;display:flex;align-items:center;gap:18px;max-width:800px;width:calc(100% - 40px);font-size:12px;color:#704c38}.error-toast button{white-space:nowrap;text-decoration:underline}.error{color:#9b4937;font-size:12px}.overview .section-heading{display:flex;align-items:flex-start;gap:25px;justify-content:space-between;padding:25px 0 35px}.overview h1{max-width:570px;font-size:38px}.overview .section-heading p:last-child{color:#869077;margin-top:15px}.overview .section-heading .button{flex-shrink:0;font-size:11px}.overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.overview-stage{padding:23px;background:#fffdf480;border:1px solid #e3e5d8;border-radius:7px}.overview-title{display:flex;align-items:center;gap:14px;width:100%;text-align:left;margin-bottom:22px}.overview-title h2{font-size:22px}.overview-title>span:last-child{margin-left:auto;color:#95a182}.stage-symbol{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;font-size:20px;color:#7d8b69}.overview-note{padding:16px;margin-top:13px;font-size:12px}.overview-note strong{font-size:10px;color:#788063;font-weight:500}.overview-note p{margin-top:8px;white-space:pre-wrap;overflow-wrap:anywhere}.overview-note img{max-height:180px;margin-top:12px;object-fit:contain}.budget-summary{background:#e8ecdf;border-radius:8px;padding:24px;margin-top:25px}.budget-summary dl{display:flex;gap:40px;flex-wrap:wrap;margin:20px 0}.budget-summary dt{font-size:11px;color:#747f66}.budget-summary dd{margin:6px 0 0;font:25px var(--serif)}.budget-summary>p:not(.quiet){margin-top:12px;font-size:12px;max-width:650px}.name-dialog h2{margin-bottom:25px}.name-dialog input{width:100%}
@media(min-width:1600px){.workspace-main{padding-left:60px;padding-right:60px}.note-card,.prompt-card{min-height:250px}.chapter-heading h1{font-size:51px}}
@media(max-width:1100px){.workspace-layout{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding:30px 12px}.topbar{padding:0 22px;gap:20px}.topbar .brand{min-width:160px}.workspace-main{padding:24px}.note-board{grid-template-columns:repeat(2,minmax(0,1fr))}.board-toolbar>span{display:none}.chapter-doodle{width:70px;height:70px;font-size:48px}h1{font-size:37px}.chapter-footer{flex-wrap:wrap}.chapter-footer .button:last-child{margin-left:auto}.welcome h1{font-size:60px}.welcome-grid{gap:20px}.welcome-art{transform:scale(.85);transform-origin:center}.welcome{padding:25px 4% 0}.overview .section-heading{display:block}.overview .section-heading .button{margin-top:20px}}
@media(max-width:760px){.welcome-grid{grid-template-columns:minmax(0,1fr);padding:55px 0;gap:40px}.welcome-grid>section{min-width:0;max-width:500px;width:100%;margin:auto}.welcome-art{width:430px;max-width:100%;margin:auto;height:470px}.welcome-footer span{display:none}.welcome-footer{justify-content:center}.welcome h1{font-size:62px}.edition{font-size:7px}.workspace-layout{display:block}.sidebar{min-height:0;border-right:0;border-bottom:1px solid var(--line);padding:12px 16px;position:sticky;top:70px;z-index:9}.stage-nav{display:flex;overflow:auto;gap:6px;align-items:center;scrollbar-width:thin}.stage-link{width:auto;flex-shrink:0;padding:8px 10px;font-size:10px;gap:6px}.stage-arrow,.nav-heading,.nav-progress,.sidebar-footer{display:none}.overview-link{width:auto;flex-shrink:0;white-space:nowrap;border:0;font-size:10px;padding:8px}.overview-link span{display:none}.topbar{height:70px;padding:0 16px;gap:12px}.topbar .brand{min-width:0}.topbar .brand>span:last-child{display:none}.plan-selector select{max-width:190px;font-size:11px;padding:4px}.save-status{display:none}.topbar-right{gap:0}.workspace-main{padding:20px 18px}.breadcrumbs{margin-bottom:25px;gap:8px;font-size:9px}.breadcrumbs button{font-size:8px}.chapter-heading{gap:12px}.chapter-heading h1{font-size:34px}.chapter-intro{font-size:12px}.chapter-doodle{width:48px;height:48px;font-size:35px;margin:0}.eyebrow{font-size:8px;letter-spacing:1.5px}.note-board{gap:18px 12px}.note-card,.prompt-card{padding:22px 16px;min-height:205px}.prompt-card h3{font-size:18px}.prompt-card p{font-size:10px}.note-card p{font-size:20px}.coach{gap:12px}.coach p{font-size:10px}.coach strong{font-size:16px}.coach-hand{display:none}.chapter-footer .button{font-size:9px;padding:10px}.modal{padding:23px}.overview-grid{grid-template-columns:1fr}.error-toast{flex-wrap:wrap}.welcome-lead{font-size:14px}.budget-summary{padding:20px}.budget-summary dl{gap:20px}.editor-tools{flex-wrap:wrap}.modal-actions .button{padding:10px 12px;font-size:11px}}
@media(max-width:390px){.note-board{grid-template-columns:1fr}.welcome h1{font-size:51px}.welcome-art{transform:scale(.75);margin-top:-50px;margin-bottom:-65px;transform-origin:center}.chapter-doodle{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{@page{size:A4;margin:14mm}body{background:white}.topbar,.sidebar,.no-print,.error-toast,.modal-backdrop{display:none!important}.workspace-layout{display:block}.workspace-main{padding:0;background:none;max-width:none}.overview .section-heading{padding-top:0}.overview h1{font-size:28px}.overview-grid{display:block}.overview-stage{break-inside:avoid;margin-bottom:20px;padding:15px;border:1px solid #ddd}.overview-note{-webkit-print-color-adjust:exact;print-color-adjust:exact}.overview-title>span:last-child{display:none}.overview-note img{max-height:120px}.overview-title h2{font-size:21px}}
