:root{--ivory: #f6f0e4;--ink: #18202b;--cobalt: #1747a6;--red: #a33b35;--rule: #c9c0b2;--success: #2e6847;color:var(--ink);background:var(--ivory);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--ivory)}button,select,input{font:inherit}button,select{min-height:44px}button{cursor:pointer}.page-shell{width:min(1240px,calc(100% - 48px));margin:0 auto;padding:28px 0 72px}.site-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ink);padding-bottom:17px}.wordmark{color:var(--ink);font-weight:800;font-size:1.15rem;letter-spacing:-.04em;text-decoration:none}.wordmark span{color:var(--cobalt)}.locale-switch{display:flex;gap:3px}.locale-switch button{border:0;background:transparent;color:var(--ink);padding:8px 12px;min-width:56px}.locale-switch button.is-active,.locale-switch button:hover{color:var(--cobalt);text-decoration:underline;text-underline-offset:4px}.layout{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:clamp(48px,9vw,150px);padding-top:clamp(54px,9vw,120px)}.intro{padding-top:8px;max-width:330px}.kicker,.step-mark{color:var(--cobalt);font-size:.76rem;font-weight:750;letter-spacing:.04em;margin:0 0 18px}h1,h2{font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(3rem,6vw,5.7rem);line-height:.98;margin:0 0 28px}h2{font-size:clamp(1.65rem,3vw,2.4rem);line-height:1.05;margin:0}.hero-body{font-size:1.05rem;max-width:28ch;margin:0 0 28px}.privacy{border-top:1px solid var(--rule);padding-top:13px;color:#4f5660;font-size:.9rem;max-width:31ch}.workbench{min-width:0;border-top:3px solid var(--cobalt);padding-top:18px}.section-heading{display:flex;align-items:baseline;gap:18px;margin-bottom:30px}.section-heading .step-mark,.preview-head .step-mark{margin:0}.selectors{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;margin-bottom:27px}label{display:grid;gap:7px;color:#3e4854;font-size:.88rem;font-weight:700}select{width:100%;border:1px solid var(--rule);border-radius:0;background:#fbf8f1;color:var(--ink);padding:9px 12px}.upload-frame{background-color:#fbf8f18c;background-image:linear-gradient(rgba(23,71,166,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(23,71,166,.08) 1px,transparent 1px);background-size:28px 28px;padding:18px}.upload-zone{min-height:230px;border:2px dashed var(--cobalt);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:28px;text-align:center;background:#f6f0e4eb;transition:background-color .18s ease,border-color .18s ease}.upload-zone:hover,.upload-zone.is-dragging{background:#e9eef9;border-color:var(--ink)}.upload-mark{border:1px solid var(--cobalt);color:var(--cobalt);font-size:.76rem;font-weight:800;padding:4px 7px;letter-spacing:.08em}.upload-zone strong{font-family:Georgia,Times New Roman,serif;font-size:1.3rem;font-weight:400}.upload-zone span{color:#4f5660;font-size:.88rem}input[type=file]{width:min(100%,220px);min-height:44px;padding:9px 0;color:var(--ink)}.status{color:var(--success);font-size:.9rem;margin:14px 0 0}.error{border-left:4px solid var(--red);color:#772c28;background:#f7e5de;padding:13px 15px;margin-top:18px}.preview{border-top:1px solid var(--ink);margin-top:40px;padding-top:22px}.preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.preview-head h2{margin-bottom:8px}.count{color:#4f5660;margin:0;font-size:.92rem}.download{border:1px solid var(--cobalt);background:var(--cobalt);color:#fff;padding:10px 16px;font-weight:750;min-height:48px}.download:hover{background:var(--ink);border-color:var(--ink)}.course-list{list-style:none;padding:0;margin:22px 0;border-top:1px solid var(--rule)}.course-list li{min-width:0;display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--rule)}.course-list li div{min-width:0;display:grid;gap:2px;overflow-wrap:anywhere}.course-list li span,.course-list time{color:#4f5660;font-size:.88rem}.course-list time{min-width:0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.reset{border:0;background:transparent;color:var(--cobalt);padding:8px 0;min-height:44px;text-decoration:underline;text-underline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}:focus-visible{outline:3px solid var(--red);outline-offset:3px}@media(max-width:760px){.page-shell{width:min(100% - 32px,560px);padding-top:18px}.layout{grid-template-columns:1fr;gap:44px;padding-top:52px}.intro{max-width:100%}h1{max-width:9ch}.selectors{grid-template-columns:1fr}.preview-head{align-items:stretch;flex-direction:column}.download{width:100%}.course-list li{align-items:flex-start;flex-direction:column;gap:6px}.course-list time{white-space:normal}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
