@font-face{font-family:Nunito;src:url(/fonts/nunito-600.otf)format("opentype");font-weight:600;font-display:swap;size-adjust:96%}@font-face{font-family:Nunito;src:url(/fonts/nunito-700.otf)format("opentype");font-weight:700 900;font-display:swap;size-adjust:96%}@font-face{font-family:Terminal;src:url(/fonts/vt323.ttf)format("truetype");font-weight:400;font-display:swap}:root{--canvas:#f4f4f4;--sunken:#ececec;--sidebar:#efefef;--surface:#fff;--ink:#111;--ink-2:#4a4a4a;--ink-3:#6b6b6b;--line:#0000001f;--card-line:#e0e0e0;--blue:#004bef;--blue-deep:#1d4ed8;--blue-soft:#e4ecff;--red:#e92733;--green:#17733a;--green-soft:#e3f3e8;--sun:#e08a00;--purple:#5b4fd6;--paper-yellow:#fff5b1;--display:ui-rounded, "SF Pro Rounded", "SF Rounded", Nunito, "Helvetica Neue", Arial, sans-serif;--body:-apple-system, BlinkMacSystemFont, system-ui, "SF Pro Text", "Helvetica Neue", Arial, sans-serif;--pixel:Terminal, "Courier New", monospace;--radius:8px;--radius-card:10px;--radius-window:12px;--shadow-card:0 1px 2px #0000000d;--shadow-window:0 24px 60px #0000001a, 0 2px 6px #0000000f;--ease:cubic-bezier(.55, -.05, .25, 1);--paper:radial-gradient(#0000000e .8px, transparent .9px);--design-w:940px;--design-h:540px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{color:var(--ink);background:var(--canvas);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}main{overflow-x:clip}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-family:var(--display);letter-spacing:-.02em;font-weight:700;line-height:1.12}h2{letter-spacing:-.03em;font-size:46px}h3{font-size:26px}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button,summary,select,input[type=button],input[type=submit],input[type=reset],input[type=checkbox],input[type=radio]{cursor:pointer}button{background:0 0;border:0;padding:0}img{max-width:100%;height:auto;display:block}svg{flex-shrink:0;width:20px;height:20px}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--blue);outline-offset:4px}::selection{color:#0b2d80;background:#cfdcff}[hidden]{display:none!important}.icon-defs{width:0;height:0;position:absolute;overflow:hidden}.wrap{width:calc(100% - 96px);max-width:1200px;margin-inline:auto}.section-space{padding-block:88px}.eyebrow{font-family:var(--display);letter-spacing:.12em;color:var(--ink-3);font-size:11px;font-weight:700}.pixel{font-family:var(--pixel)}.logo{border-radius:21%;box-shadow:0 0 0 1px #00000012}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--blue);color:#fff;border-radius:999px;padding:10px 20px;position:fixed;top:10px;left:10px;transform:translateY(-200%)}.skip-link:focus{transform:none}.online-dot{background:#34c759;border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 3px #34c7592e}.tone-sun{color:var(--sun)}.tone-purple{color:var(--purple)}.tone-red{color:#d6363f}.tone-green{color:#2e7d46}.tone-doc{color:var(--blue-deep)}.tone-redfile{color:var(--red)}.button{min-height:44px;font-family:var(--display);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 22px;font-size:15px;font-weight:700;line-height:1.2;transition:transform .2s,box-shadow .2s,filter .2s;display:inline-flex}.button-primary{color:#fff;background:linear-gradient(#2b6bff, var(--blue));box-shadow:inset 0 1px #ffffff4d,0 1px 2px #00000024,0 8px 18px #004bef38}.button-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.button-primary:active{filter:brightness(.97);transform:translateY(1px)}.button-quiet{color:var(--ink);background:var(--surface);border:1px solid var(--card-line);box-shadow:var(--shadow-card)}.button-quiet:hover{border-color:#c4c4c4;transform:translateY(-1px)}.button.small{min-height:34px;padding:0 16px;font-size:13px}.button-icon{font-size:18px;line-height:1}.quiet-button{border-radius:var(--radius);background:var(--surface);border:1px solid var(--card-line);min-height:32px;box-shadow:var(--shadow-card);color:var(--ink-2);justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.quiet-button:hover{color:var(--ink);border-color:#c4c4c4}.site-header{z-index:40;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);height:58px;color:var(--ink-2);background:#f4f4f4db;align-items:center;gap:34px;padding:0 28px;font-size:14px;display:flex;position:sticky;top:0}.wordmark{flex-shrink:0;align-items:center;line-height:1;display:flex}.wordmark img{width:60px;height:auto}.desktop-nav{align-items:center;gap:26px;font-weight:500;display:flex}.desktop-nav a:hover{color:var(--ink)}.menu-right{align-items:center;gap:22px;margin-left:auto;display:flex}.menu-message{color:var(--ink-3);align-items:center;gap:8px;font-size:12px;display:flex}.menu-download{background:var(--ink);color:#fff;min-height:34px;font-family:var(--display);border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:700;transition:transform .2s;display:inline-flex}.menu-download:hover{transform:translateY(-1px)}.menu-toggle{width:36px;height:36px;padding:8px;display:none}.menu-toggle span{background:var(--ink);border-radius:2px;height:2px;margin:5px 0;display:block}.mobile-menu{border:1px solid var(--card-line);border-radius:var(--radius-window);min-width:210px;box-shadow:var(--shadow-window);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;padding:6px;position:absolute;top:56px;right:16px}.mobile-menu a{border-radius:var(--radius);color:var(--ink);padding:11px 14px;font-size:14px;font-weight:500;display:block}.mobile-menu a:hover{background:var(--sunken)}.window-scaler{width:100%;height:calc(var(--design-h) * var(--fit,1));position:relative}.window-scaler .fit{width:var(--design-w);margin-left:calc(var(--design-w) / -2);transform:scale(var(--fit,1));transform-origin:top;position:absolute;top:0;left:50%}.window{width:var(--design-w);height:var(--design-h);background:var(--surface);border:1px solid var(--card-line);border-radius:var(--radius-window);box-shadow:var(--shadow-window);text-align:left;flex-direction:column;font-size:15px;line-height:1.45;display:flex;overflow:hidden}.chrome-bar{border-bottom:1px solid var(--line);height:40px;color:var(--ink-2);background:#f3f3f3;flex-shrink:0;align-items:center;gap:12px;padding:0 14px;font-size:12px;font-weight:500;display:flex;position:relative}.traffic-lights{flex-shrink:0;align-items:center;gap:7px;display:flex}.traffic-lights i{background:#ff5f57;border-radius:50%;width:12px;height:12px;display:block;box-shadow:inset 0 0 0 .5px #00000024}.traffic-lights i:nth-child(2){background:#febc2e}.traffic-lights i:nth-child(3){background:#28c840}.window-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;margin-left:4px;overflow:hidden}.bar-divider{color:#b0b0b0;margin-inline:6px}.preview-tag{white-space:nowrap;font-family:var(--display);letter-spacing:.1em;border:1px solid var(--card-line);background:var(--surface);color:var(--ink-3);border-radius:6px;margin-left:auto;padding:3px 7px;font-size:9px;font-weight:700}.window-body{flex:1;min-height:0;display:flex}.app-sidebar{background:var(--sidebar);border-right:1px solid var(--line);width:200px;color:var(--ink);flex-direction:column;flex-shrink:0;min-width:0;padding:14px 12px 16px;font-size:13px;display:flex}.sidebar-top{justify-content:space-between;align-items:center;padding:0 4px 0 6px;display:flex}.sidebar-wordmark{align-items:center;display:flex}.sidebar-wordmark img{width:47px;height:auto}.sidebar-toggle{width:18px;height:18px;color:var(--ink-3)}.sidebar-pill{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--green);align-items:center;gap:5px;margin:6px 6px 12px;font-size:9px;font-weight:700;display:flex}.sidebar-pill svg{width:13px;height:13px}.sidebar-search{background:var(--surface);border:1px solid var(--card-line);min-height:34px;color:var(--ink-3);border-radius:9px;align-items:center;gap:8px;margin-bottom:12px;padding:0 10px;font-size:13px;display:flex}.sidebar-search svg{width:15px;height:15px}.sidebar-search kbd{font:600 11px var(--body);color:#8a8a8a;margin-left:auto}.sidebar-nav{margin:0;padding:0;list-style:none}.sidebar-nav li{border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;margin-bottom:2px;padding:7px 10px;font-size:14px;font-weight:500;display:flex}.sidebar-nav.quiet li{color:var(--ink-2);padding-block:6px;font-size:13px}.sidebar-nav li svg{width:18px;height:18px}.sidebar-nav.quiet li svg{width:16px;height:16px;color:var(--ink-3)}.sidebar-nav li.is-selected,.story-window[data-screen="1"] li[data-nav=classes],.story-window[data-screen="2"] li[data-nav=assignments],.story-window[data-screen="3"] li[data-nav=assignments],.story-window[data-screen="4"] li[data-nav=assignments],.story-window[data-screen="5"] li[data-nav=assignments],.story-window[data-screen="6"] li[data-nav=assignments],.story-window[data-screen="7"] li[data-nav=study]{background:#00000014;border-color:#00000024;font-weight:700}.sidebar-divider{background:var(--line);height:1px;margin:10px 6px 12px;display:block}.sidebar-bottom{color:var(--ink-3);align-items:center;gap:7px;margin-top:auto;padding:20px 6px 0;font-size:16px;line-height:1.2;display:flex}.sidebar-bottom svg{width:15px;height:15px;color:var(--sun)}.app-main{flex-direction:column;flex:1;min-width:0;padding:24px 28px 22px;display:flex}.app-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.app-head h3{margin-top:6px;font-size:26px}.app-sub{color:var(--ink-2);margin-top:4px;font-size:14px}.app-note{color:var(--ink-3);align-items:center;gap:8px;margin-top:auto;padding-top:14px;font-size:12.5px;line-height:1.5;display:flex}.mini-eyebrow{font-family:var(--display);letter-spacing:.1em;color:var(--ink-3);font-size:10px;font-weight:700}.sun-doodle{width:40px;height:40px;color:var(--sun);transform:rotate(10deg)}.status-pill{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;background:var(--sunken);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-size:10px;font-weight:700;display:inline-flex}.status-pill.green{background:var(--green-soft);color:var(--green)}.status-pill.amber{color:#8f5a03;background:#fff1d6;margin-left:auto}.class-sticker{font-family:var(--display);white-space:nowrap;border:1px solid;border-radius:7px;padding:2px 8px;font-size:11px;font-weight:700;line-height:1.4;display:inline-block;transform:rotate(-1deg)}.class-sticker.sage{background:var(--green-soft);color:#1f6b3a;border-color:#bfe3cb}.class-sticker.coral{color:#a33a2e;background:#fde6e3;border-color:#f3c4bd}.class-sticker.blue{background:var(--blue-soft);color:var(--blue-deep);border-color:#c3d3ff}.task-list{gap:8px;margin-top:18px;display:grid}.demo-task{cursor:pointer;background:var(--surface);border:1px solid var(--card-line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);align-items:center;gap:12px;padding:11px 14px;transition:border-color .2s;display:flex;position:relative}.demo-task:hover{border-color:#c4c4c4}.demo-task input{opacity:0;width:20px;height:20px;margin:0;position:absolute;left:14px}.custom-checkbox{background:var(--surface);border:1.5px solid #9a9a9a;border-radius:6px;flex-shrink:0;place-items:center;width:20px;height:20px;transition:background .15s,border-color .15s;display:grid}.custom-checkbox svg{opacity:0;color:#fff;width:14px;height:14px}.demo-task input:checked+.custom-checkbox{background:var(--blue);border-color:var(--blue)}.demo-task input:checked+.custom-checkbox svg{opacity:1}.demo-task input:focus-visible+.custom-checkbox{outline:3px solid var(--blue);outline-offset:3px}.demo-task input:checked~.task-label b{color:var(--ink-3);text-decoration:line-through}.task-label{min-width:0}.task-label b{font-size:14px;font-weight:600;display:block}.task-label small{color:var(--ink-3);align-items:center;gap:8px;margin-top:4px;font-size:12px;display:flex}.task-duration{color:var(--ink-3);background:var(--sunken);white-space:nowrap;border-radius:6px;margin-left:auto;padding:3px 8px;font-size:11px;font-weight:600}.progress-row{color:var(--ink-3);justify-content:space-between;align-items:center;gap:15px;margin-top:16px;font-size:13px;display:flex}.app-rail{border-left:1px solid var(--line);background:#fafafa;flex-direction:column;flex-shrink:0;width:240px;min-width:0;padding:22px 16px;display:flex}.filed-list{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.filed-list li{background:var(--surface);border:1px solid var(--card-line);border-radius:8px;align-items:center;gap:10px;min-width:0;padding:6px 8px;display:flex}.filed-list .ill{width:22px;height:26px}.filed-list .glyph{width:20px;height:20px;color:var(--blue-deep);margin-inline:1px}.filed-list span{min-width:0}.filed-list b{white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.filed-list small{color:var(--ink-3);font-size:10.5px;display:block}.rail-note{color:var(--ink-3);margin-top:14px;font-size:12px;line-height:1.5}.hero{background-color:var(--canvas);background-image:var(--paper);border-bottom:1px solid var(--line);background-size:22px 22px;padding:44px 0 40px;position:relative;overflow:hidden}.hero-copy{text-align:center;z-index:3;width:680px;max-width:calc(100% - 40px);margin:0 auto;position:relative}.hero-copy .eyebrow{justify-content:center;align-items:center;gap:9px;margin-bottom:18px;display:flex}.hero-copy h1{letter-spacing:-.035em;font-size:74px;line-height:1.02}.hero-copy h1>span{color:var(--blue)}.hero-description{color:var(--ink-2);margin-top:20px;font-size:17px;line-height:1.6}.hero-actions{justify-content:center;align-items:center;gap:12px;margin-top:26px;display:flex}.hero-footnote{color:var(--ink-3);margin-top:14px;font-size:12px}.sticky-note{background:linear-gradient(#fff9b7, var(--paper-yellow));z-index:2;border:1px solid #e8dc8c;width:172px;position:absolute;top:36px;left:max(2.5%,16px);transform:rotate(-3deg);box-shadow:0 8px 14px #463c001f}.sticky-bar{color:#857c3e;background:#f3e79c;border-bottom:1px solid #ddd07a;height:22px;padding:0 9px;font-size:9px;line-height:22px;display:block}.sticky-note p{color:#6f6737;padding:14px 16px 16px;font-size:13px;line-height:1.45}.sticky-note em{color:#4f4820;font-style:normal;font-weight:700}.sticky-face{color:#a89f56;font-size:20px;position:absolute;bottom:6px;right:10px;transform:rotate(10deg)}.hero-stage{width:calc(100% - 32px);max-width:1200px;margin:22px auto 0;padding:14px 0 26px;position:relative}.gather-items{pointer-events:none;z-index:4;position:absolute;inset:0}.gather-item{--d:0s;transform:translate(calc(var(--sx) - 50%), calc(var(--sy) - 50%)) rotate(var(--sr));transition:transform .95s var(--ease), opacity .4s ease;transition-delay:var(--d);will-change:transform;position:absolute;top:0;left:0}.gather-item:first-child{--i:0}.gather-item:nth-child(2){--i:1}.gather-item:nth-child(3){--i:2}.gather-item:nth-child(4){--i:3}.gather-item:nth-child(5){--i:4}.gather-item:nth-child(6){--i:5}.gather-item:nth-child(7){--i:6}[data-state=scattered] .gather-item{animation:3.6s ease-in-out infinite alternate float;animation-delay:calc(var(--i) * -.9s)}@keyframes float{0%{translate:0 -5px}to{translate:0 6px}}[data-state=gathering] .gather-item,[data-state=opening] .gather-item,[data-state=open] .gather-item{--d:calc(var(--i) * 70ms);transform:translate(calc(var(--cx) - 50%), calc(var(--cy) - 50%)) rotate(0deg) scale(.08);opacity:0}[data-state=open] .gather-items{visibility:hidden}.no-transition .gather-item,.no-transition .gather-target,.no-transition .hero-window,.no-transition .reveal{transition:none!important;animation:none!important}.file-tile{text-align:center;min-width:116px;color:var(--ink);flex-direction:column;align-items:center;gap:2px;padding:8px;display:flex}.file-tile .ill{filter:drop-shadow(0 6px 10px #0000001f);width:84px;height:84px;margin-bottom:4px}.file-tile>span{white-space:nowrap;border-radius:6px;padding:2px 6px;font-size:12px;font-weight:600;line-height:1.3}.link-chip{background:var(--surface);border:1px solid var(--card-line);color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;padding:10px 14px 10px 12px;display:flex;box-shadow:0 6px 14px #00000014}.link-chip svg{width:22px;height:22px;color:var(--blue-deep)}.link-chip b{font-size:12px;font-weight:600;display:block}.link-chip small{color:var(--ink-3);font-size:10px;display:block}.date-tile{background:var(--surface);border:1px solid var(--card-line);width:88px;color:var(--ink);border-radius:12px;flex-direction:column;align-items:center;display:flex;overflow:hidden;box-shadow:0 8px 16px #0000001a}.date-tile>span{color:#fff;width:100%;font-family:var(--display);letter-spacing:.1em;text-align:center;background:#e5383f;padding:5px 0 4px;font-size:9px;font-weight:700}.date-tile>b{font-family:var(--display);letter-spacing:-.03em;margin-top:6px;font-size:40px;line-height:1}.date-tile>small{font-family:var(--display);letter-spacing:.1em;color:var(--ink-3);margin:3px 0 8px;font-size:8px;font-weight:700}.gather-target{left:var(--cx,50%);top:var(--cy,50%);z-index:5;width:132px;height:132px;transition:transform .55s cubic-bezier(.5,0,.75,0),opacity .35s .15s;position:absolute;transform:translate(-50%,-50%)}.gather-target img{border-radius:21%;width:132px;height:132px;position:relative;box-shadow:0 0 0 1px #0000000f,0 2px 4px #00000014,0 18px 40px #00000024}.gather-target.is-popping img{animation:.55s cubic-bezier(.2,1.6,.4,1) pop}.gather-ring{border:2px solid var(--blue);opacity:0;border-radius:28%;position:absolute;inset:-12px}.gather-target.is-popping .gather-ring{animation:.75s ease-out ring}.gather-target.is-popping .gather-ring.second{animation-delay:.18s}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes ring{0%{opacity:.7;transform:scale(.85)}to{opacity:0;transform:scale(1.35)}}[data-state=opening] .gather-target,[data-state=open] .gather-target{opacity:0;pointer-events:none;transform:translate(-50%,-50%)scale(2.6)}.hero-window{--open:1;--wo:1;transform:scale(var(--open));transform-origin:50%;opacity:var(--wo);transition:transform .8s cubic-bezier(.2,.9,.3,1.05),opacity .45s}[data-state=scattered] .hero-window,[data-state=gathering] .hero-window{--open:.28;--wo:0;pointer-events:none}.hero-window .reveal{opacity:0;transition:opacity .45s,translate .45s;transition-delay:calc(var(--n,0) * 70ms + .4s);translate:0 10px}[data-state=open] .hero-window .reveal{opacity:1;translate:0}.task-list .reveal:first-child{--n:0}.task-list .reveal:nth-child(2){--n:1}.task-list .reveal:nth-child(3){--n:2}.filed-list .reveal:first-child{--n:3}.filed-list .reveal:nth-child(2){--n:4}.filed-list .reveal:nth-child(3){--n:5}.filed-list .reveal:nth-child(4){--n:6}.filed-list .reveal:nth-child(5){--n:7}.filed-list .reveal:nth-child(6){--n:8}.filed-list .reveal:nth-child(7){--n:9}.hero-caption{z-index:3;justify-content:center;align-items:center;gap:18px;margin-top:6px;display:flex;position:relative}.hero-caption>span{font-family:var(--display);font-size:15px;font-weight:700}.hero-caption small{font-family:var(--body);color:var(--ink-3);font-size:12.5px;font-weight:400;display:block}.gather-play{border:1px solid var(--card-line);background:var(--surface);min-height:32px;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:0 12px 0 9px;font-size:12px;font-weight:600;display:inline-flex}.gather-play svg{width:15px;height:15px}.gather-play:hover{color:var(--ink);border-color:#c4c4c4}.section-heading{text-align:center;margin-bottom:40px}.section-heading h2{margin-top:14px;font-size:50px}.section-heading h2>span{color:var(--blue)}.section-heading>p:last-child{color:var(--ink-2);margin-top:14px;font-size:16px}.story{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:56px;display:grid}.steps{margin:0;padding:2vh 0 16vh;list-style:none}.step{align-items:center;min-height:30vh;display:flex}.step-detail{display:none}.step button{text-align:left;border-left:2px solid var(--line);width:100%;color:inherit;opacity:.5;padding:18px 0 18px 22px;transition:opacity .3s,border-color .3s;display:block}.step button:hover,.step.is-active button{opacity:1}.step.is-active button{border-color:var(--blue)}.step-number{font-family:var(--display);letter-spacing:.12em;color:var(--ink-3);font-size:11px;font-weight:700;display:block}.step.is-active .step-number{color:var(--blue)}.step h3{margin:6px 0 8px;font-size:24px}.step p{color:var(--ink-2);max-width:320px;font-size:15px;line-height:1.6}.story-visual{padding-top:8px;position:sticky;top:84px}.story-dots{justify-content:center;gap:6px;margin-top:14px;display:flex}.story-dots i{background:#cfcfcf;border-radius:50%;width:6px;height:6px;transition:background .3s,width .3s}.story-dots i.is-active{background:var(--blue);border-radius:3px;width:18px}.screens{flex:1;min-width:0;position:relative}.screen{opacity:0;pointer-events:none;flex-direction:column;transition:opacity .35s;display:flex;position:absolute;inset:0}.screen.is-active{opacity:1;pointer-events:auto}.screen .reveal{opacity:0}.screen.is-active .reveal{animation:.5s both rise;animation-delay:calc(var(--n,0) * .11s + .2s)}.class-list .reveal:first-child,.diff .reveal:first-of-type{--n:0}.class-list .reveal:nth-child(2),.diff .reveal:nth-of-type(2){--n:1}.class-list .reveal:nth-child(3),.diff .reveal:nth-of-type(3){--n:2}.diff .reveal:nth-of-type(4){--n:3}@keyframes rise{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0}}.class-list{gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.class-list li{border:1px solid var(--card-line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:12px;align-items:center;gap:14px;padding:12px 14px;display:flex}.class-list b{font-size:14px;display:block}.class-list small{color:var(--ink-3);font-size:12px}.tick{background:var(--green-soft);width:24px;height:24px;color:var(--green);border-radius:50%;flex-shrink:0;place-items:center;margin-left:auto;display:grid}.tick svg{width:14px;height:14px}.desk-head{align-items:center;gap:12px;min-width:0;padding:18px 22px 14px;display:flex}.desk-head b{font-family:var(--display);white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:700;overflow:hidden}.desk-head .due{color:var(--ink-2);white-space:nowrap;align-items:center;gap:6px;margin-left:auto;font-size:12.5px;display:flex}.desk-head .due svg{color:#d6363f;width:15px;height:15px}.desk-grid{flex:1;grid-template-columns:196px minmax(0,1fr) 236px;gap:14px;min-height:0;padding:0 22px 22px;display:grid}.desk-grid.chat-forward{grid-template-columns:minmax(0,1fr) 330px}.desk-sources{min-width:0}.desk-sources .mini-eyebrow{margin:4px 0 8px 10px}.source-file{border-radius:var(--radius-card);border:1.5px solid #0000;align-items:center;gap:10px;min-width:0;margin-bottom:4px;padding:8px 10px;display:flex}.source-file>svg{width:18px;height:18px}.source-file div{min-width:0}.source-file b{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;display:block;overflow:hidden}.source-file small{color:var(--ink-3);font-size:11px;display:block}.active-file{background:var(--surface);border-color:var(--ink)}.desk-paper{border:1px solid var(--card-line);background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);color:var(--ink-2);min-width:0;padding:20px 22px;position:relative;overflow:hidden}.desk-paper.dim{color:var(--ink-3)}.paper-label{font-family:var(--display);letter-spacing:.1em;color:var(--ink-3);justify-content:space-between;gap:5px;font-size:9px;font-weight:700;display:flex}.desk-paper h4{letter-spacing:-.01em;color:var(--ink);margin:18px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:26px;font-weight:400;line-height:1.2}.desk-paper.dim h4{color:var(--ink-2)}.desk-paper>p:not(.paper-label){max-width:300px;font:13px/1.65 Georgia,serif}.desk-paper ol{margin:12px 0;padding-left:18px;font:13px/1.65 Georgia,serif}.desk-paper li{padding:2px 0}.paper-highlight{-webkit-box-decoration-break:clone;box-decoration-break:clone;color:var(--ink);background:#fff0a8;border-radius:3px;padding:2px 4px;font:12px/1.6 Georgia,serif}.desk-chat{border:1px solid var(--card-line);background:#f7f7f7;border-radius:12px;flex-direction:column;gap:10px;min-width:0;min-height:0;padding:12px;display:flex}.chat-empty{text-align:center;margin:auto 0;padding:10px 6px}.chat-empty img{margin:0 auto 10px}.chat-empty b{font-size:14px;display:block}.chat-empty small{color:var(--ink-3);margin-top:4px;font-size:12px;line-height:1.5;display:block}.chat-composer{border:1px solid var(--card-line);background:var(--surface);color:var(--ink-3);border-radius:10px;justify-content:space-between;align-items:center;margin-top:auto;padding:8px 12px;font-size:13px;display:flex}.chat-composer kbd{font:600 11px var(--body);color:#8a8a8a;border:1px solid var(--card-line);border-radius:5px;padding:0 5px}.bubble{font-size:13px;line-height:1.5}.bubble.you{background:var(--ink);color:#fff;border-radius:14px 14px 4px;align-self:flex-end;max-width:85%;padding:8px 12px}.bubble.duely{background:var(--surface);border:1px solid var(--card-line);border-radius:14px 14px 14px 4px;align-items:flex-start;gap:8px;min-width:0;padding:10px 12px;display:flex}.bubble.duely img{flex-shrink:0;margin-top:2px}.bubble.duely>div{min-width:0}.typed{min-height:3.2em}.typed:after{content:"▍";color:var(--blue);animation:1s steps(2,end) infinite blink}.is-done .typed:after{content:none}@keyframes blink{to{opacity:0}}.sources{opacity:0;flex-direction:column;gap:6px;margin-top:8px;transition:opacity .4s;display:flex}.is-done .sources{opacity:1}.source-chip{color:var(--ink-2);background:var(--blue-soft);border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:6px 8px;font-size:11.5px;font-weight:600;display:flex}.source-chip svg{width:14px;height:14px}.source-chip q{width:100%;color:var(--ink-3);quotes:none;font-style:italic;font-weight:400;display:block}.mode-screen{flex-direction:column;flex:1;padding:6px 22px 22px;display:flex}.mode-screen h3{margin-top:6px;font-size:26px}.mode-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.mode-card{text-align:left;border:1.5px solid var(--card-line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:12px;flex-direction:column;gap:8px;padding:14px;transition:border-color .2s,background .2s;display:flex}.mode-card:hover{border-color:#c4c4c4}.mode-card[aria-checked=true]{border-color:var(--ink);background:#f7f7f7}.mode-icon{background:var(--blue-soft);width:28px;height:28px;color:var(--blue-deep);border-radius:8px;place-items:center;display:grid}.mode-icon svg{width:16px;height:16px}.mode-card b{font-size:15px}.mode-card small{color:var(--ink-2);font-size:12.5px;line-height:1.5}.review-screen,.submit-screen{flex:1;justify-content:center;align-items:center;padding:0 22px 22px;display:flex}.review-card{background:var(--surface);border:1px solid var(--card-line);width:560px;max-width:100%;box-shadow:var(--shadow-window);border-radius:14px;padding:18px 20px}.review-head{align-items:center;gap:10px;display:flex}.review-head b{font-size:14px;display:block}.review-head small{color:var(--ink-3);font-size:12px}.diff{border:1px solid var(--card-line);border-radius:10px;margin:14px 0;font:13px/1.6 Georgia,serif;overflow:hidden}.line{border-bottom:1px solid #eee;padding:7px 12px}.line:last-child{border-bottom:0}.line.add{color:#14532d;background:#e8f7ee}.line.add:before{content:"+";color:var(--green);margin-right:8px;font-weight:700}.review-actions{flex-wrap:wrap;gap:8px;display:flex}.review-card .app-note,.submit-sheet .app-note{margin-top:12px;padding-top:0}.submit-sheet{width:520px;max-width:100%;position:relative}.sheet-preview,.sheet-receipt{background:var(--surface);border:1px solid var(--card-line);box-shadow:var(--shadow-window);border-radius:14px;padding:20px 22px;transition:opacity .4s,transform .4s}.sheet-preview h3,.sheet-receipt h3{margin-top:6px;font-size:24px}.sheet-receipt{text-align:center;opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;transform:scale(.96)}.sheet-receipt p{color:var(--ink-2);margin-top:6px;font-size:13px}.sheet-receipt .app-note{justify-content:center}[data-phase=receipt] .sheet-receipt{opacity:1;transform:none}[data-phase=receipt] .sheet-preview{opacity:0;pointer-events:none}.receipt-check{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:52px;height:52px;margin-bottom:12px;display:grid}.receipt-check svg{width:26px;height:26px}.file-card{border:1px solid var(--card-line);border-radius:12px;align-items:center;gap:12px;margin:14px 0 10px;padding:10px 12px;display:flex}.file-card .ill{width:36px;height:44px}.file-card b{font-size:14px;display:block}.file-card small{color:var(--ink-3);font-size:12px}.dest{color:var(--ink-2);align-items:center;gap:8px;margin-bottom:14px;font-size:13px;font-weight:600;display:flex}.dest svg{width:17px;height:17px;color:var(--blue-deep)}.dest i{color:var(--ink-3);margin:0 5px;font-style:normal}.study-screen{flex-direction:row}.study-rooms{border-right:1px solid var(--line);background:#fafafa;flex-shrink:0;width:220px;padding:22px 18px}.study-rooms .mini-eyebrow{justify-content:space-between;margin-bottom:12px;display:flex}.study-room{border:2px solid var(--ink);background:#f7f7f7;border-radius:12px;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;display:flex}.study-room b{font-size:15px;font-weight:700}.study-room small{color:var(--ink-3);align-items:center;gap:5px;font-size:12px;display:flex}.study-room small svg{width:13px;height:13px}.study-main{flex-direction:column;flex:1;min-width:0;padding:22px 30px 20px;display:flex}.study-main h3{margin-top:4px;font-size:30px}.study-main #card-count{margin-top:16px}.flashcard{background:var(--surface);border:1px solid var(--card-line);text-align:center;border-radius:14px;flex-direction:column;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:150px;margin:8px 0 12px;padding:16px 24px;transition:background .25s,border-color .25s,transform .2s;display:flex;box-shadow:0 1px 2px #0000000d,0 12px 28px #00000014}.flashcard:hover{transform:translateY(-2px)}.flashcard-label{font-family:var(--display);letter-spacing:.12em;color:var(--ink-3);font-size:9px;font-weight:700}.flashcard #card-text{font-family:var(--display);letter-spacing:-.02em;font-size:22px;font-weight:700;line-height:1.2}.flashcard-hint{color:var(--ink-3);font-size:12px}.flashcard.is-flipped{background:var(--green-soft);border-color:#bfe3cb}.flashcard.is-flipped #card-text{color:#1f6b3a;font-size:17px;font-weight:600}.card-controls{color:var(--ink-3);justify-content:space-between;align-items:center;font-size:12px;display:flex}.card-controls .quiet-button{width:36px;padding:0;font-size:16px}.trust{border-block:1px solid var(--line);background-color:var(--sunken);background-image:var(--paper);background-size:22px 22px}.trust-grid{grid-template-columns:1.05fr 1fr;align-items:center;gap:72px;display:grid}.trust-copy h2{margin:14px 0 16px}.trust-copy h2>span{color:var(--blue)}.trust-copy>p{color:var(--ink-2);max-width:460px;font-size:16px;line-height:1.7}.promises{gap:18px;margin:28px 0 0;padding:0;list-style:none;display:grid}.promises li{align-items:flex-start;gap:14px;display:flex}.promise-icon{background:var(--surface);border:1px solid var(--card-line);width:40px;height:40px;color:var(--blue-deep);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.promises b{font-size:16px;font-weight:700;display:block}.promises span{color:var(--ink-2);margin-top:2px;font-size:14px;line-height:1.6;display:block}.approval-window{background:var(--surface);border:1px solid var(--card-line);box-shadow:var(--shadow-window);border-radius:14px;overflow:hidden;transform:rotate(1deg)}.approval-body{padding:20px 22px 18px}.scope-list{gap:6px;margin:12px 0 18px;padding:0;list-style:none;display:grid}.scope-list li{border:1px solid var(--card-line);border-radius:10px;align-items:center;gap:10px;padding:9px 10px;font-size:13px;display:flex}.scope-list svg{width:18px;height:18px;color:var(--ink-2)}.scope-list span{font-weight:600}.scope-list small{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;margin-left:auto;font-size:10px;font-weight:700}.scope-list li.off{opacity:.55}.scope-list li.off small{color:#a33a2e}.approval-row{background:var(--canvas);border:1px solid var(--card-line);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.approval-row b{font-size:14px;display:block}.approval-row small{color:var(--ink-3);font-size:12px}.approval-body .app-note{margin-top:14px;padding-top:0}.trust-face{text-align:right;color:var(--ink-3);margin-top:14px;font-size:18px;display:block}.faq-section{grid-template-columns:1fr 1.45fr;align-items:start;gap:72px;display:grid}.faq-section h2{margin:14px 0 16px;font-size:40px}.faq-section>div:first-child>p:last-child{color:var(--ink-2);font-size:15px}.faq-list{border:1px solid var(--card-line);border-radius:var(--radius-window);box-shadow:var(--shadow-window);background:var(--surface);overflow:hidden}.faq-bar{border-bottom:1px solid var(--line);height:40px;color:var(--ink-2);background:#f3f3f3;align-items:center;gap:12px;padding:0 14px;font-size:12px;font-weight:600;display:flex}.faq-bar>span:last-child{align-items:center;gap:6px;display:flex}.faq-bar svg{width:15px;height:15px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:last-child{border-bottom:0}.faq-list summary{justify-content:space-between;align-items:center;gap:20px;padding:17px 20px;font-size:15px;font-weight:600;line-height:1.4;list-style:none;display:flex}.faq-list summary:hover{background:#fafafa}.faq-list summary>span{color:var(--ink-3);font-size:20px;line-height:1;transition:transform .2s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{color:var(--ink-2);padding:0 20px 20px;font-size:14px;line-height:1.7}.faq-list a{text-underline-offset:3px;color:var(--blue-deep);text-decoration:underline}summary::-webkit-details-marker{display:none}.early-access{padding:16px 30px 80px;position:relative}.access-window{border:1px solid var(--card-line);width:720px;max-width:100%;box-shadow:var(--shadow-window);background:var(--surface);border-radius:14px;margin:auto;overflow:hidden}.access-content{text-align:center;background-image:var(--paper);background-size:18px 18px;padding:34px 30px 36px}.access-content>img{width:88px;height:88px;margin:0 auto 16px}.access-content h2{margin-top:12px;font-size:40px}.access-content>p:not(.eyebrow):not(.email-note){color:var(--ink-2);margin:14px 0 22px;font-size:15px;line-height:1.65}.access-small{color:var(--ink-3);margin-top:14px;font-size:12px;display:block}.access-content .email-note{color:var(--ink-3);margin-top:14px;font-size:12px;line-height:1.7}.email-note a{color:var(--blue-deep);text-underline-offset:3px;text-decoration:underline}.access-face{color:var(--ink-3);text-align:center;margin-top:28px;font-size:18px;display:block}.site-footer{border-top:1px solid var(--line);color:var(--ink-3);align-items:center;gap:18px;padding:26px 0 36px;font-size:13px;display:flex}.site-footer .wordmark{font-size:19px}.site-footer .wordmark img{width:53px;height:auto}.site-footer nav{gap:20px;margin-left:auto;font-weight:500;display:flex}.site-footer a:hover{color:var(--ink)}.copyright{margin-left:10px;font-size:12px}.legal-page{background:var(--canvas)}.legal-header,.legal-footer{border-bottom:1px solid var(--line);width:calc(100% - 60px);max-width:1060px;color:var(--ink-2);justify-content:space-between;align-items:center;gap:20px;margin:auto;padding:22px 0;font-size:14px;display:flex}.legal-header .wordmark{font-size:24px}.legal-header .wordmark img{width:65px;height:auto}.legal-content{border:1px solid var(--card-line);width:calc(100% - 40px);max-width:820px;box-shadow:var(--shadow-window);background:var(--surface);border-radius:14px;margin:48px auto 80px;padding:52px 56px}.legal-content h1{margin:12px 0 18px;font-size:42px}.legal-content h2{margin:34px 0 12px;font-size:25px}.legal-content h3{margin:24px 0 10px;font-size:20px}.legal-content p,.legal-content li{color:var(--ink-2);font-size:15px;line-height:1.75}.legal-content p+p{margin-top:12px}.legal-content li{padding:3px 0}.legal-content a{color:var(--blue-deep);text-underline-offset:3px;text-decoration:underline}.legal-content ul{padding-left:20px}.legal-content .legal-meta{color:var(--ink-3);font-size:12px}.legal-footer{border-bottom:0;border-top:1px solid var(--line);font-size:13px}.legal-footer nav{gap:20px;display:flex}.not-found{text-align:center;background-image:var(--paper);background-size:22px 22px;place-items:center;min-height:100svh;padding:30px;display:grid}.not-found .logo{width:72px;height:72px;margin:0 auto 22px}.not-found .handwritten{font:22px var(--pixel);color:var(--ink-3)}.not-found .eyebrow{margin-top:18px}.not-found h1{margin:16px 0 28px;font-size:54px}@media (width<=1190px){.hero-copy h1{font-size:66px}.story{grid-template-columns:270px minmax(0,1fr);gap:40px}.step h3{font-size:22px}.trust-grid,.faq-section{gap:48px}.faq-section h2{font-size:36px}}@media (width<=960px){.desktop-nav{display:none}.menu-toggle{display:block}.site-header{gap:18px;padding-inline:20px}.menu-right{gap:16px}.sticky-note{display:none}.hero{padding-top:40px}.hero-copy{width:560px}.hero-copy h1{font-size:58px}.hero-description{max-width:420px;margin:18px auto 0;font-size:15px}.hero-description br{display:none}.file-tile .ill{width:62px;height:62px}.file-tile>span{font-size:11px}.wrap{width:calc(100% - 56px)}.section-space{padding-block:72px}.section-heading h2{font-size:42px}.story{grid-template-columns:1fr;gap:0}.story-visual{order:-1;padding:0 0 8px;position:static}.steps{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;margin:8px -2px 0;padding:6px 2px 8px;display:flex;overflow-x:auto}.steps::-webkit-scrollbar{display:none}.step{flex:none;min-height:0;display:block}.step button{border:1px solid var(--card-line);border-left:1px solid var(--card-line);background:var(--surface);opacity:1;white-space:nowrap;border-radius:999px;align-items:center;gap:8px;width:auto;padding:8px 14px 8px 10px;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.step.is-active button{background:var(--ink);border-color:var(--ink);color:#fff}.step-number{background:var(--sunken);width:22px;height:22px;color:var(--ink-2);letter-spacing:0;border-radius:50%;place-items:center;font-size:10px;display:inline-grid}.step.is-active .step-number{color:#fff;background:#ffffff2e}.step h3{letter-spacing:-.01em;margin:0;font-size:14px;display:inline}.step p{display:none}.step-detail{color:var(--ink-2);text-align:center;max-width:520px;min-height:3.2em;margin:10px auto 0;font-size:15px;line-height:1.6;display:block}.trust-grid{grid-template-columns:1fr;gap:40px}.approval-window{max-width:520px;margin:0 auto}.trust-face{max-width:520px;margin-inline:auto}.faq-section{gap:34px}.faq-section h2{font-size:32px}.site-footer{flex-wrap:wrap;gap:14px}.copyright{width:100%;margin:0 0 0 35px}.legal-content{padding:40px}}@media (width<=700px){:root{--design-w:640px}html{scroll-padding-top:70px}.site-header{gap:12px;height:54px;padding-inline:14px}.site-header .wordmark{font-size:20px}.site-header .wordmark img{width:55px;height:auto}.menu-message{display:none}.menu-download{min-height:32px;padding:0 12px;font-size:12px}.menu-right{gap:0}.menu-toggle{width:34px;height:34px;margin-right:-4px;padding:7px}.mobile-menu{top:52px;right:10px}.hero{padding:30px 0 32px}.hero-copy{width:calc(100% - 36px);max-width:440px}.hero-copy .eyebrow{letter-spacing:.1em;margin-bottom:14px;font-size:9px}.hero-copy h1{letter-spacing:-.03em;font-size:clamp(42px,11vw,56px);line-height:1.05}.hero-description{max-width:320px;margin-top:14px;font-size:14px}.hero-actions{gap:8px;margin-top:20px}.hero-actions .button{gap:7px;min-height:40px;padding:0 15px;font-size:13px}.button-icon{font-size:15px}.hero-footnote{margin-top:12px;font-size:11px}.hero-stage{width:calc(100% - 20px);margin-top:22px;padding:22px 0 24px}.gather-item:nth-child(4),.gather-item:nth-child(5),.gather-item:nth-child(7){display:none}.file-tile{min-width:84px;padding:6px}.file-tile .ill{width:50px;height:50px}.file-tile>span{font-size:10px}.link-chip{padding:8px 12px 8px 10px}.link-chip b{font-size:11px}.gather-target,.gather-target img{width:96px;height:96px}.app-sidebar,.app-rail{display:none}.hero-caption{text-align:center;flex-direction:column;gap:10px}.hero-caption>span{font-size:14px}.section-space{padding-block:60px}.section-heading{margin-bottom:24px}.section-heading h2{margin-top:12px;font-size:36px}.section-heading>p:last-child{max-width:320px;margin:12px auto 0;font-size:14px}.wrap{width:calc(100% - 32px)}.step-detail{font-size:14px}.desk-grid{grid-template-columns:minmax(0,1fr) 220px;padding:0 16px 16px}.desk-sources{display:none}.desk-grid.chat-forward{grid-template-columns:minmax(0,1fr)}.desk-grid.chat-forward .desk-paper{display:none}.desk-head{padding:14px 16px 10px}.desk-head .due{display:none}.mode-screen{padding:4px 16px 16px}.mode-cards{gap:8px}.mode-card{padding:12px}.mode-card small{font-size:12px}.study-rooms{display:none}.trust-copy h2{font-size:36px}.trust-copy>p,.promises b{font-size:15px}.promises span{font-size:13.5px}.approval-body{padding:16px}.scope-list li{padding:8px;font-size:12px}.approval-row{flex-wrap:wrap}.faq-section{grid-template-columns:1fr;gap:24px}.faq-section h2{margin:12px 0 10px;font-size:34px}.faq-list summary{padding:15px 16px;font-size:14px}.faq-list details>p{padding:0 16px 16px;font-size:13px}.early-access{padding:0 16px 48px}.access-content{padding:28px 18px 30px}.access-content>img{width:72px;height:72px}.access-content h2{font-size:30px;line-height:1.12}.access-content>p:not(.eyebrow):not(.email-note){max-width:300px;margin:14px auto 20px;font-size:14px}.access-face{margin-top:22px;font-size:16px}.site-footer{gap:12px;padding:22px 0 28px}.site-footer nav{gap:22px;width:100%;margin-left:0;padding-top:4px}.copyright{width:auto;margin:0}.legal-header,.legal-footer{width:calc(100% - 32px);padding-block:18px;font-size:13px}.legal-header .wordmark{font-size:21px}.legal-header .wordmark img{width:58px;height:auto}.legal-content{width:calc(100% - 24px);margin:24px auto 48px;padding:28px 22px}.legal-content h1{font-size:34px}.legal-content h2{font-size:22px}.legal-content p,.legal-content li{font-size:14px}.legal-footer{flex-wrap:wrap}.not-found h1{font-size:40px}}@media (width<=380px){.hero-copy h1{font-size:40px}.hero-description{max-width:280px;font-size:13px}.hero-actions .button{padding:0 12px;font-size:12px}.section-heading h2,.trust-copy h2,.faq-section h2{font-size:30px}.access-content h2{font-size:27px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.screen .reveal,.hero-window .reveal{opacity:1;translate:none}.button:hover,.flashcard:hover{transform:none}}
