@font-face{font-family:Manrope;src:url('/font/manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--bg:#f5f0e7;--paper:#fffcf6;--ink:#282d28;--muted:#666c62;--sage:#3f5547;--pale:#e5e9dc;--rust:#a95439;--line:#dcd8cd;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 Manrope,system-ui,sans-serif}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}a:hover{color:var(--rust)}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--rust);outline-offset:4px}.skip{position:absolute;top:-100px}.skip:focus{top:10px;z-index:100;background:white;padding:10px}.header{max-width:1440px;margin:auto;padding:26px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand{font-size:25px;letter-spacing:.18em;font-weight:750;line-height:1.2}.brand span{display:block;font-size:10px;letter-spacing:.08em;font-weight:500;margin-top:6px;color:var(--muted)}.header nav{display:flex;align-items:center;gap:28px;font-size:14px}button{border:0;background:none;color:inherit}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;border-radius:99px;padding:15px 25px;background:var(--sage);color:#fff;font-weight:650;font-size:14px;min-height:48px;border:1px solid transparent}.button:hover{background:#2d4035;color:white}.button.secondary{background:transparent;color:var(--sage);border-color:#aeb7a7}.button.secondary:hover{background:var(--pale)}.button.light{background:var(--paper);color:var(--ink)}.button.small{padding:9px 20px;min-height:42px}.link{color:var(--sage);text-decoration:underline;text-underline-offset:4px}.wrap{max-width:1280px;margin:auto;padding:60px 32px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:750;color:var(--rust);margin:0 0 16px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(38px,4.7vw,66px);line-height:1.12;font-weight:550;letter-spacing:-.04em;margin-bottom:24px}h2{font-size:clamp(28px,3vw,39px);line-height:1.2;letter-spacing:-.025em;font-weight:550}h3{font-size:20px;line-height:1.4;letter-spacing:-.02em}.lead{font-size:18px;color:var(--muted);max-width:590px}.hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:center;padding-top:50px;padding-bottom:65px}.hero-art{background:#d8c2a2;border-radius:var(--radius);overflow:hidden;box-shadow:0 20px 65px #513c2015}.hero-art img{display:block;width:100%;height:auto}.hero .actions{margin:30px 0 20px}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.meta{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--muted)}.meta span{padding:7px 12px;border:1px solid var(--line);border-radius:99px}.section{padding:60px 0;border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.section-head p{max-width:430px;color:var(--muted);margin:0 0 6px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s}.card:hover{transform:translateY(-3px)}.card img{width:100%;display:block;aspect-ratio:1672/941;object-fit:contain;background:#d8c2a2}.card-body{padding:24px;flex:1;display:flex;flex-direction:column}.card-body h3{margin:10px 0}.card-body p{font-size:14px;color:var(--muted);margin-bottom:20px}.card-body .button{margin-top:auto;align-self:start}.tag{font-size:11px;color:var(--sage);font-weight:700;letter-spacing:.06em}.tag.locked{color:var(--muted)}.offer{background:var(--sage);color:var(--paper);padding:42px;border-radius:var(--radius);margin:40px 0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}.offer p{max-width:670px;color:#e0e6db;margin-bottom:0}.offer h2{margin-bottom:12px}.offer .eyebrow{color:#ded8b8}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.step-number{font-size:13px;color:var(--rust);display:block;margin-bottom:20px}.steps p{color:var(--muted);font-size:15px}.program{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px}.program a{display:flex;gap:18px;padding:17px 0;border-bottom:1px solid var(--line);font-size:15px}.program b{color:var(--rust);font-size:12px;padding-top:3px;width:25px;flex-shrink:0}.program small{display:block;color:var(--muted);font-size:11px}.intro{max-width:760px;margin-bottom:35px}.dashboard-head{display:flex;justify-content:space-between;gap:30px;align-items:start}.dashboard-head h1{font-size:43px}.progress-line{height:5px;background:#dddccf;border-radius:9px;margin:15px 0 7px;overflow:hidden}.progress-line span{display:block;height:100%;background:var(--sage)}.caption{font-size:12px;color:var(--muted)}.toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}.filter{padding:9px 16px;border:1px solid var(--line);border-radius:99px;font-size:13px}.filter.active{background:var(--ink);color:white}.lesson-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:40px;align-items:start}.lesson-nav{position:sticky;top:25px;max-height:88vh;overflow:auto;padding-right:8px}.lesson-nav a{display:block;font-size:12px;padding:12px;border-radius:10px;line-height:1.45;margin-bottom:4px}.lesson-nav a.active{background:var(--pale);font-weight:700}.lesson-nav a.locked{color:#7d827a}.lesson-cover{border-radius:20px;overflow:hidden;background:#d8c2a2}.lesson-cover img{width:100%;height:auto;display:block}.lesson-text{max-width:720px;margin:40px auto;font-size:17px;line-height:1.9}.lesson-text h2{font-size:27px;margin-top:36px;margin-bottom:15px}.lesson-text p{margin-bottom:22px}.lesson-text ol{padding-left:25px}.lesson-text li{padding-left:7px;margin:12px 0}.lesson-text strong{font-weight:750}.lesson-top{margin-bottom:20px}.lesson-top h1{font-size:32px;margin:10px 0}.lesson-bottom{background:var(--pale);padding:26px;border-radius:16px;margin-top:35px}.lesson-bottom p{font-size:14px}.locked-panel{text-align:center;max-width:580px;margin:55px auto;background:var(--paper);padding:40px;border:1px solid var(--line);border-radius:var(--radius)}.locked-panel h1{font-size:34px}.back{display:inline-flex;font-size:13px;align-items:center;gap:8px;color:var(--muted);margin-bottom:20px}.profile{max-width:760px}.panel{background:var(--paper);padding:30px;border:1px solid var(--line);border-radius:var(--radius);margin:20px 0}.panel h2{font-size:25px}.panel label{display:flex;align-items:center;gap:12px}.panel input[type=checkbox]{width:20px;height:20px;accent-color:var(--sage)}.small-text{font-size:13px;color:var(--muted)}.auth-tabs{display:flex;gap:10px;margin:20px 0}dialog{border:1px solid var(--line);border-radius:24px;background:var(--paper);color:var(--ink);width:min(480px,calc(100% - 30px));padding:40px}dialog::backdrop{background:#1c2c2560;backdrop-filter:blur(5px)}dialog h2{font-size:29px}.close{position:absolute;right:17px;top:12px;font-size:27px;padding:3px 10px}form label{display:block;font-size:13px;margin-bottom:9px}input[type=email],input[type=text]{width:100%;border:1px solid #bebfb3;border-radius:10px;background:white;padding:13px;margin-bottom:17px;color:var(--ink)}form .button{width:100%}.error{color:#aa3424;font-size:14px;padding:10px 0}.dev-code{padding:14px;background:var(--pale);border-radius:10px;font-size:14px}.loading{text-align:center;padding:100px 20px;color:var(--muted)}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);padding:13px 23px;border-radius:14px;background:var(--ink);color:white;box-shadow:0 8px 25px #0002;z-index:50;font-size:14px;display:none}#toast.visible{display:block}#devbar{background:#e6eadf;text-align:center;padding:9px 15px;font-size:11px;border-bottom:1px solid var(--line)}#devbar button{padding:3px 10px;text-decoration:underline}footer{max-width:1280px;margin:auto;border-top:1px solid var(--line);padding:35px 32px;display:flex;gap:30px;align-items:center;font-size:12px;color:var(--muted)}footer p{margin:0;flex:1}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-weight:600}details p{padding-top:15px;color:var(--muted);max-width:750px}.workbook-nav{position:relative;background:var(--bg);padding:15px 0;z-index:1}.workbook h2{font-size:26px}.workbook{max-width:790px;margin:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:1000px){.hero{grid-template-columns:1fr;gap:30px;padding-top:25px}.hero h1{max-width:650px}.hero-art{max-width:850px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-layout{grid-template-columns:1fr}.lesson-nav{display:none}.offer{grid-template-columns:1fr}.header{padding:20px 25px}.section-head{align-items:start;flex-direction:column;gap:8px}}
@media(max-width:600px){body{font-size:15px}.header{padding:18px 18px;padding-top:max(18px,env(safe-area-inset-top))}.brand{font-size:21px}.brand span{font-size:8px}.header nav{gap:12px;font-size:12px}.header nav>a:first-child{display:none}.button.small{padding:8px 14px;font-size:12px}.wrap{padding:30px 18px}.hero{padding-bottom:35px}.hero h1{font-size:44px}.lead{font-size:16px}.cards{grid-template-columns:1fr}.card-body{padding:22px}.section{padding:37px 0}.steps,.program{grid-template-columns:1fr}.steps{gap:20px}.step-number{margin-bottom:7px}.offer{padding:26px;margin:28px 0}.dashboard-head{display:block}.dashboard-head h1{font-size:35px}.lesson-top h1{font-size:27px}.lesson-text{font-size:16px;margin-top:28px}.lesson-cover{max-width:420px;margin:auto}.lesson-bottom{padding:20px}.panel{padding:22px}dialog{padding:32px 24px}.dashboard-head>.button{margin-top:12px}footer{padding:25px 18px;gap:20px;flex-wrap:wrap}footer p{flex-basis:60%}.meta{gap:7px}.caption{font-size:11px}.locked-panel{padding:27px 20px;margin:30px auto}.locked-panel h1{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
main:focus{outline:none}
.workbook-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;padding:24px;margin:24px 0 48px;background:var(--pale);border-radius:20px;font-size:14px}.workbook-index a{padding:5px 0}.workbook h2[id]{scroll-margin-top:28px}@media(max-width:600px){.workbook-index{grid-template-columns:1fr}}

.lesson-text{overflow-wrap:anywhere}
#ownerbar{background:var(--sage);color:var(--paper);padding:12px 5%;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:13px}#ownerbar[hidden]{display:none}#ownerbar a{font-weight:750}#ownerbar a:hover{color:white;text-decoration:underline}.owner-badge{padding:10px 18px;background:var(--pale);border-radius:30px;white-space:nowrap;font-size:13px}.owner-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:45px}.owner-shortcuts .panel{margin:0}.owner-shortcuts p{font-size:14px}.owner-toolbar{display:flex;align-items:end;justify-content:space-between;gap:24px;flex-wrap:wrap}.owner-toolbar label{display:grid;gap:7px;font-size:13px;max-width:100%;flex:1}.owner-toolbar select{font:inherit;font-size:15px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px;max-width:100%;width:440px}.owner-tabs{display:flex;gap:8px;flex-wrap:wrap}.owner-note{margin:20px 0 30px}.owner-reading{margin:0 auto;background:var(--paper);border-radius:24px;padding:32px;max-width:1020px;overflow:hidden}.owner-reading img{display:block;width:100%;height:auto}.owner-reading .lesson-text{padding:24px 0}.owner-mobile{max-width:390px;padding:18px;border:1px solid var(--line);box-shadow:0 15px 60px #292d2810}.owner-mobile h1,.owner-bot h1{font-size:28px;line-height:1.25}.owner-mobile .lesson-text,.owner-bot .lesson-text{font-size:16px}.owner-mobile h2,.owner-bot h2{font-size:24px}.owner-bot{max-width:470px;background:#e5eadf;padding:18px}.owner-bot article{background:var(--paper);padding:18px;border-radius:16px}.bot-label{font-size:13px;font-weight:700;margin-bottom:14px}.owner-pager{display:flex;justify-content:space-between;gap:16px;max-width:1020px;margin:30px auto}.owner-home .dashboard-head{align-items:start}@media(max-width:700px){#ownerbar span{display:none}.owner-shortcuts{grid-template-columns:1fr}.owner-home .dashboard-head{flex-direction:column}.owner-toolbar{display:block}.owner-tabs{margin-top:20px}.owner-tabs .filter{font-size:12px;padding:10px}.owner-reading{padding:18px}.owner-pager .button{padding:12px 16px}.owner-toolbar select{width:100%}}
.access-demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.access-demo-grid .panel{margin:0;min-width:0}.sample-message{border-radius:18px;padding:24px;background:var(--pale)}.access-days{display:flex;flex-wrap:wrap;gap:8px}.access-days span{width:32px;height:32px;text-align:center;padding-top:4px;background:#eeeae2;color:var(--muted);border-radius:50%;font-size:14px}.access-days .available{background:var(--sage);color:white}.owner-access ol{padding-left:22px}.owner-access li{margin:12px 0}.owner-access .button[aria-disabled]{white-space:normal;text-align:center;cursor:default}.subtitle{font-size:22px;line-height:1.4;max-width:550px}@media(max-width:760px){.access-demo-grid{grid-template-columns:1fr}.owner-access .owner-tabs{gap:8px}}
/* Course modules and owner-managed access. */
.course-module { margin:48px 0 64px; }
.course-module > h2 { margin:0 0 12px; }
.module-description { max-width:760px; margin-bottom:28px; }
.payment-instructions { white-space:pre-wrap; overflow-wrap:anywhere; }
.owner-payments form,.access-code-form { display:grid; gap:12px; }
.owner-payments textarea,.access-code-form input { width:100%; padding:14px; border:1px solid var(--line,#b9b8ad); border-radius:8px; background:#fffefb; font:inherit; }
.owner-payments textarea { resize:vertical; }
.owner-payments label { font-weight:600; }
.owner-payments input[type="checkbox"],.profile input[type="checkbox"],#start-notifications { width:auto; }
.owner-check { display:flex; align-items:flex-start; gap:10px; margin:12px 0; }
.owner-future { margin:8px 0 16px; }
.owner-future summary { font-size:16px; }
.code-row { display:flex; gap:20px; justify-content:space-between; align-items:center; border-bottom:1px solid #c8c9bc; padding:20px 0; overflow-wrap:anywhere; }
.code-row p { margin:6px 0 0; font-size:14px; }
.issued-code { margin-top:24px; border:1px solid #617767; background:#edf1e8; padding:20px; border-radius:12px; }
.issued-code textarea { font:16px monospace; word-break:break-all; }
.form-status { color:#354f3b; overflow-wrap:anywhere; }
@media(max-width:680px){.code-row{align-items:flex-start;flex-direction:column}.owner-payments .panel{min-width:0}.owner-payments h1{overflow-wrap:anywhere}}

.revoke-dialog {max-width:560px;width:calc(100% - 32px);padding:28px;border:1px solid #b8c0af;border-radius:16px;background:#f8f5ed;color:#28352b}
.revoke-dialog::backdrop {background:#18201aaa}
/* Original KRITIK symbol palette: sage #93AF9A and terracotta #C68444. */
.course-symbol{width:25px;height:25px;display:inline-block;vertical-align:middle;flex:0 0 auto;margin-right:10px}
.course-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0 32px;max-width:760px}
.course-controls a,.course-controls button{display:flex;align-items:center;justify-content:center;min-height:54px;padding:12px 14px;background:#edf1e9;border:1px solid #93AF9A66;border-radius:12px;color:#26332f;text-align:center;font-size:15px;line-height:1.35;cursor:pointer}
.course-controls a:hover,.course-controls button:hover{background:#e3ebdf;border-color:#93AF9A}
.reminder-form{display:grid;gap:12px}.reminder-form select,.reminder-form input[type=time]{width:100%;max-width:100%;font:inherit;padding:12px;border-radius:10px;border:1px solid #93AF9A;background:#fffdf9;color:#26332f}
.bot-menu-preview{max-width:470px;background:#e1e7dc;padding:20px;border-radius:24px;margin:32px auto}.bot-menu-preview .sample-message{background:#fffdf9}.bot-menu-preview .course-controls{margin-bottom:0}.symbol-gallery{display:flex;gap:20px;flex-wrap:wrap}.symbol-gallery .course-symbol{width:40px;height:40px;margin:0}
@media(max-width:480px){.course-controls a,.course-controls button{font-size:13px;padding:10px 8px}.course-symbol{width:23px;height:23px;margin-right:7px}.bot-menu-preview{padding:14px}.reminder-form{min-width:0}}
/* Parent project identity, shared by the course and owner views. */
.volny-brand{display:flex;align-items:center;gap:12px;letter-spacing:0;font-size:18px;line-height:1.2;flex-shrink:0}
.volny-brand img{display:block;width:48px;height:48px;object-fit:contain;border-radius:50%;flex:0 0 auto}
.volny-brand .brand-copy{display:grid;gap:5px;font-size:inherit;letter-spacing:0;line-height:1.2}
.volny-brand strong{font-weight:650}.volny-brand small{font-size:11px;font-weight:450;letter-spacing:.02em;color:var(--muted)}
@media(max-width:600px){.volny-brand{gap:8px;font-size:14px}.volny-brand img{width:38px;height:38px}.volny-brand .brand-copy{font-size:14px}.volny-brand small{font-size:9px}.header{gap:10px}.header nav{gap:8px}.header nav a#cabinet{display:none}}
