:root{--blue:#214be4;--navy:#16294a;--ink:#23324c;--muted:#68758a;--paper:#f6f7fb;--line:#e4e8f0;--mint:#e9f5ef;--orange:#b96938;--radius:22px}*{box-sizing:border-box}body{margin:0;background:var(--paper);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:15px;line-height:1.55}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a{color:var(--blue)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #e6a840;outline-offset:3px}button:disabled{opacity:.55;cursor:not-allowed}.demo-strip{height:33px;background:#142747;color:#fff;display:flex;align-items:center;justify-content:center;gap:16px;font-size:10px;font-weight:700;letter-spacing:1px}.demo-strip span{font-size:11px;letter-spacing:.1px;font-weight:400;color:#e0e7fb}.sidebar{width:244px;position:fixed;top:33px;bottom:0;left:0;background:#fff;padding:38px 22px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:10px;color:var(--navy);text-decoration:none;font-size:36px;font-weight:750;line-height:1}.brand-symbol{background:var(--blue);color:white;display:grid;place-items:center;width:47px;height:53px;border-radius:15px;font-size:38px;font-family:serif}.brand-sub{display:block;font-size:10px;font-weight:650;letter-spacing:4.5px;margin:8px 0 0 2px}.sidebar-label{font-size:9px;letter-spacing:1.5px;color:#8a94a6;margin:42px 12px 14px}.nav-item{border:0;background:transparent;display:flex;align-items:center;gap:13px;width:100%;padding:12px 14px;margin:3px 0;border-radius:12px;color:#68758a;text-align:left;font-size:14px}.nav-item.active{background:#edf1ff;color:var(--blue);font-weight:650}.nav-item:hover{background:#f1f3f8}.nav-icon{font-size:20px;width:24px;text-align:center;line-height:1.1}.side-bottom{margin-top:auto;padding:22px 10px 0;font-size:11px;color:var(--muted)}.side-quote{font-family:Georgia,serif;font-size:21px;line-height:1.4;color:var(--navy);margin-bottom:24px}.side-bottom p{margin-top:25px}.side-settings{font-size:11px}.report-link{display:block;margin-top:13px;text-decoration:none;font-size:11px}.workspace{margin-left:244px;padding:0 44px;max-width:1700px}.topbar{height:92px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.topbar>div{display:flex;align-items:center;gap:9px}.privacy-dot{width:7px;height:7px;border-radius:50%;background:#63a28a}.avatar{background:#e8edff;color:var(--blue);border:0;width:36px;height:36px;border-radius:50%;margin-left:10px;font-weight:700}main{padding:30px 0;min-height:70vh}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,"Times New Roman",serif;font-size:39px;font-weight:400;letter-spacing:-1.1px;line-height:1.2;margin-bottom:12px}h2{font-size:20px;line-height:1.3;font-weight:650;letter-spacing:-.4px}h3{font-size:15px;line-height:1.4;margin-bottom:8px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:750;text-transform:uppercase;color:var(--blue);margin-bottom:12px}.intro{color:var(--muted);max-width:680px;margin-bottom:28px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.page-head .intro{margin:0}.hero{background:#eaf0fe;border:1px solid #e1e8fb;border-radius:26px;display:grid;grid-template-columns:1.5fr 1fr;overflow:hidden;margin-bottom:26px;min-height:270px}.hero-copy{padding:32px 34px;z-index:1}.hero h1{font-size:42px;color:var(--navy);max-width:480px}.hero p{max-width:420px;color:#5b6a83;font-size:14px;margin-bottom:22px}.hero-art{position:relative;background:linear-gradient(135deg,#eaf0fe,#d9e5fb);overflow:hidden;min-height:250px}.sun{width:105px;height:105px;border-radius:50%;background:#fbf3dc;position:absolute;top:35px;left:40%;box-shadow:0 0 0 22px #eef1f133}.hill{position:absolute;border-radius:50% 50% 0 0;transform:rotate(-15deg);width:440px;height:240px;background:#a7bbd8;bottom:-155px;left:-50px}.hill.two{background:#7292c1;left:60px;bottom:-190px;transform:rotate(17deg)}.arch{position:absolute;width:112px;height:170px;bottom:0;left:42%;border:15px solid #ffffff9c;border-bottom:0;border-radius:75px 75px 0 0}.leaf{position:absolute;background:#63867d;width:23px;height:67px;border-radius:80% 0 80% 0;bottom:25px;left:26%;transform:rotate(-35deg)}.leaf.two{left:22%;bottom:65px;transform:rotate(-60deg);background:#8fa99a}.art-caption{position:absolute;bottom:20px;right:22px;font-size:10px;color:#fff;letter-spacing:1.2px}.btn{border:0;border-radius:11px;padding:12px 19px;background:var(--blue);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:600;font-size:13px;text-decoration:none;min-height:44px}.btn:hover{filter:brightness(.96)}.btn.secondary{background:#fff;color:var(--navy);border:1px solid var(--line)}.btn.soft{background:#edf1ff;color:var(--blue)}.btn.danger{background:#fff0ed;color:#a53e33}.btn.small{padding:8px 12px;min-height:36px;font-size:12px}.plain{border:0;background:none;color:var(--blue);padding:0;text-align:left}.grid{display:grid;gap:22px}.grid.two{grid-template-columns:1.45fr 1fr}.grid.equal{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-width:0}.card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.card-title h2{margin:0;font-size:17px}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.pill{display:inline-block;font-size:10px;font-weight:650;padding:5px 10px;border-radius:20px;background:#edf1ff;color:var(--blue);white-space:nowrap}.pill.green{background:#e7f4ed;color:#3c7964}.pill.sand{background:#faf1e7;color:#916b43}.moods{display:flex;justify-content:space-between;gap:8px;margin:18px 0}.mood{flex:1;border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px 3px;color:var(--muted);font-size:10px;min-width:0}.mood span{display:block;font-size:24px;margin-bottom:5px}.mood.selected{border-color:var(--blue);background:#f0f3ff;color:var(--blue)}.task{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #eef0f5}.task:first-of-type{border-top:0}.task input{accent-color:var(--blue);width:19px;height:19px;flex:none}.task span{font-size:13px}.task small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.task.done span{text-decoration:line-through;color:var(--muted)}.track-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:15px 0}.track-row strong{font-size:33px;color:var(--navy);line-height:1.2}.week-dots{display:flex;gap:8px;justify-content:space-between;margin:22px 0 12px}.week-day{text-align:center;font-size:10px;color:var(--muted)}.week-day i{display:grid;place-items:center;border-radius:50%;width:31px;height:31px;background:#f1f3f7;margin-top:7px;font-style:normal;color:#a2adbd}.week-day i.recorded{background:#e6f2ec;color:#3c7964}.week-day i.current{outline:2px solid var(--blue);outline-offset:3px}.support-card{background:#183051;color:#fff;border:0}.support-card p{color:#c6d3e7;font-size:13px}.support-card .btn{background:#fff;color:var(--navy)}.section-space{margin-top:24px}.tile-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#edf1ff;color:var(--blue);font-size:21px;margin-bottom:17px}.resource-card{height:100%;display:flex;flex-direction:column}.resource-card p{font-size:13px;color:var(--muted)}.resource-card .plain{margin-top:auto;padding-top:10px;font-size:12px;font-weight:650}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.notice{background:#fff8ed;border:1px solid #f1e0c4;color:#775b32;border-radius:13px;padding:14px 17px;font-size:12px;margin-bottom:22px}.notice.blue{background:#edf2ff;border-color:#dfe7ff;color:#425d92}.notice.green{background:var(--mint);border-color:#d8eadd;color:#3f6d59}label.field{display:block;font-size:12px;font-weight:650;margin-bottom:17px}input[type=text],input[type=date],input[type=number],input[type=tel],textarea,select{width:100%;border:1px solid #dfe4ed;background:#fafbfe;border-radius:10px;padding:11px;color:var(--ink);margin-top:7px;min-height:44px}textarea{resize:vertical;min-height:95px}input[type=range]{width:100%;accent-color:var(--blue);margin:14px 0}.range-label{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);font-weight:400}.range-output{color:var(--blue);float:right}.entry{padding:16px 0;border-top:1px solid var(--line)}.entry h3{font-size:13px}.entry p{font-size:12px;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}.entry .meta{display:flex;gap:7px;flex-wrap:wrap;margin:7px 0}.entry .pill{font-size:9px}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-grid .day-name{text-align:center;color:var(--muted);font-size:10px;padding:7px 0}.calendar-day{border:1px solid transparent;border-radius:10px;background:#f7f8fc;padding:9px 0;position:relative;min-height:39px;font-size:12px;color:var(--ink)}.calendar-day.has-entry{background:#e8f3ee;color:#396c59}.calendar-day.today{border-color:var(--blue);font-weight:700}.calendar-day.chosen{box-shadow:inset 0 0 0 2px var(--blue)}.calendar-day.has-entry:after{content:'';position:absolute;width:3px;height:3px;border-radius:50%;background:#4b8b72;bottom:4px;left:calc(50% - 2px)}.chart{width:100%;height:125px;display:block}.chart-caption{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.timer-orb{width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,#e6eeff 48%,#f0f4ff 50%,#f0f4ff 65%,#f7f9ff 66%);display:flex;align-items:center;justify-content:center;flex-direction:column;margin:30px auto;color:var(--blue);transition:transform 4s ease-in-out}.timer-orb.expand{transform:scale(1.12)}.timer-orb strong{font-size:26px;font-weight:500}.timer-orb span{font-size:12px;margin-top:3px}.center{text-align:center}.tool-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px}.tab{border:1px solid var(--line);padding:9px 15px;background:#fff;color:var(--muted);border-radius:25px;font-size:12px}.tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.memory{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:430px;margin:20px auto}.memory-card{height:78px;border-radius:12px;border:1px solid #dce3f7;background:#eaf0ff;color:var(--blue);font-size:29px}.memory-card.matched{background:#e3f3e9;border-color:#b7d8c6}.color-palette{display:flex;justify-content:center;gap:12px;margin:14px 0}.swatch{width:30px;height:30px;border:3px solid #fff;border-radius:50%;outline:1px solid #dfe4ed}.swatch.active{outline:3px solid var(--navy)}#mandala{width:100%;max-width:380px;display:block;margin:0 auto}#mandala [data-petal]{cursor:pointer;stroke:#dae0ed;stroke-width:1.2}#mandala [data-petal]:focus{stroke:var(--blue);stroke-width:3}.steps{counter-reset:step}.step{display:flex;gap:14px;margin:20px 0}.step:before{counter-increment:step;content:counter(step);display:grid;place-items:center;flex:none;width:27px;height:27px;border-radius:50%;background:#edf1ff;color:var(--blue);font-size:12px}.step p{font-size:13px;color:var(--muted);margin:3px 0}.question{padding:18px 0;border-top:1px solid var(--line)}.question:first-of-type{border:0}.question legend{font-weight:650;font-size:14px;margin-bottom:12px}.question fieldset{border:0;padding:0;margin:0}.choice{display:flex;gap:8px;align-items:center;margin:9px 0;font-size:13px}.choice input{accent-color:var(--blue)}.orientation-progress{height:5px;background:#e9edf7;border-radius:10px;margin:14px 0 24px}.orientation-progress span{height:100%;display:block;background:var(--blue);border-radius:10px}.resource-list details{padding:17px 0;border-top:1px solid var(--line)}details summary{cursor:pointer;font-weight:600;font-size:14px}details p,details ul{font-size:13px;color:var(--muted);margin:12px 0}.meaning-box{background:#f5f1ea}.badge-stat{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px}.badge-stat strong{display:block;color:var(--navy);font-size:27px}.badge-stat span{color:var(--muted);font-size:11px}footer{text-align:center;font-size:10px;line-height:1.8;color:#8892a3;padding:12px 0 28px;border-top:1px solid var(--line)}.mobile-nav{display:none}#toast{position:fixed;bottom:25px;left:calc(50% + 100px);transform:translateX(-50%);background:#173452;color:white;border-radius:12px;padding:13px 20px;font-size:12px;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s;max-width:90vw}#toast.show{opacity:1}dialog{border:0;border-radius:23px;box-shadow:0 30px 100px #11233a33;max-width:530px;width:calc(100% - 30px);padding:30px;color:var(--ink)}dialog::backdrop{background:#14274766;backdrop-filter:blur(3px)}dialog p{font-size:14px;color:var(--muted)}.modal-close{margin-top:15px}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.source-note{font-size:11px;color:var(--muted);margin-top:16px}.empty{text-align:center;padding:30px 12px;color:var(--muted)}.quote{font-family:Georgia,serif;font-size:25px;line-height:1.5;color:var(--navy)}.exercise-step{font-size:17px;line-height:1.7;max-width:530px;margin:25px auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.progress-line{height:5px;background:#e9edf7;border-radius:5px;margin:12px 0}.progress-line span{display:block;height:100%;background:#6c9a88;border-radius:5px}.route-card{border-left:3px solid var(--blue)}.check-label{display:flex;gap:10px;align-items:flex-start;font-size:12px;margin:16px 0}.check-label input{margin-top:4px;accent-color:var(--blue)}
@media(min-width:1450px){.workspace{padding:0 65px}.hero{min-height:300px}.hero-copy{padding:40px}.hero h1{font-size:48px}.hero-art{min-height:290px}}
@media(max-width:1100px){.sidebar{width:210px;padding:30px 15px 18px}.workspace{margin-left:210px;padding:0 25px}.hero h1{font-size:35px}.hero-copy{padding:26px}.grid.three{gap:14px}.card{padding:20px}.grid.two{grid-template-columns:1.2fr 1fr}.side-quote{font-size:19px}}
@media(max-width:800px){.sidebar{display:none}.workspace{margin-left:0;padding:0 20px}.demo-strip{height:auto;min-height:38px;flex-wrap:wrap;gap:0;padding:5px 10px;font-size:9px;line-height:1.5}.demo-strip span{font-size:9px;width:100%;text-align:center}.topbar{height:65px;font-size:10px}.topbar>div{gap:5px}.avatar{width:30px;height:30px;margin-left:5px}main{padding:24px 0}h1{font-size:32px}.hero{grid-template-columns:1fr .6fr;min-height:250px;border-radius:20px}.hero-copy{padding:24px 22px}.hero h1{font-size:33px}.hero p{font-size:12px}.hero-art{min-height:245px}.sun{width:65px;height:65px;left:25%;top:35px}.arch{left:25%;width:85px;height:145px;border-width:12px}.leaf{left:4%}.leaf.two{left:0}.art-caption{font-size:8px;right:12px;bottom:14px}.grid.two,.grid.equal{grid-template-columns:1fr}.grid.three{grid-template-columns:1fr 1fr}.mobile-nav{display:flex;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;background:#fffffff5;backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:8px 4px calc(8px + env(safe-area-inset-bottom));z-index:30}.mobile-nav button{border:0;background:none;color:var(--muted);display:flex;flex-direction:column;align-items:center;font-size:9px;gap:3px;min-width:50px;min-height:43px}.mobile-nav button.active{color:var(--blue);font-weight:700}.mobile-nav .nav-icon{font-size:21px}.workspace footer{padding-bottom:110px}#toast{bottom:95px;left:50%}.page-head{align-items:flex-start}.page-head>.btn{font-size:11px;padding:10px 12px}.card-title h2{font-size:17px}.side-bottom{margin-top:0}}
@media(max-width:430px){.workspace{padding:0 15px}.hero{grid-template-columns:1fr}.hero-art{display:none}.hero h1{font-size:36px}.hero-copy{padding:28px}.grid.three{grid-template-columns:1fr}.mood{font-size:9px}.mood span{font-size:23px}.topbar>div{font-size:9px}.topbar>span{max-width:145px}.page-head{flex-direction:column;gap:13px}.card{padding:20px}.btn{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}.timer-orb.expand{transform:none}}

.sidebar{overflow-y:auto}.sidebar .brand,.sidebar nav,.sidebar-label{flex-shrink:0}
