.title-screen{--title-ink: #40526f;--title-accent: #a66179;position:relative;isolation:isolate;min-height:100svh;overflow:hidden;padding:clamp(64px,8vh,96px) 7vw 100px;color:var(--title-ink);background:linear-gradient(90deg,#fffdf740,transparent 48%),url(/preview-assets/menu_landscape.webp) center / cover no-repeat #f9f7f5}.title-screen:after{content:"";position:absolute;z-index:-1;top:18px;right:18px;bottom:18px;left:18px;border:1px solid #8198b52f;pointer-events:none}.title-account,.title-brand,.title-menu,.title-footer{-webkit-user-select:none;user-select:none}.title-account{position:absolute;inset:32px 40px auto auto;display:flex;gap:18px;align-items:center;max-width:calc(100% - 80px);font-size:12px;letter-spacing:1px;padding:8px 14px;border:1px solid #c6d2e5;background:#fffdf7e6;border-radius:4px}.title-account>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.title-account>span:last-child{white-space:nowrap}.title-brand{width:fit-content;text-align:center}.title-kicker{font-size:11px;letter-spacing:6px;margin:10px 0 0}.title-brand h1{position:relative;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(52px,5.7vw,88px);font-weight:400;line-height:1.4;letter-spacing:-4px;color:#364967;text-shadow:2px 3px 0 #fffefb,3px 4px 0 #bbcbe64d}.title-brand h1>span{color:var(--title-accent)}.title-brand h1>.title-flower{display:inline-block;position:absolute;top:-6px;right:-24px;font-size:27px;transform:rotate(12deg)}.title-subtitle{font-family:STKaiti,KaiTi,"Noto Serif SC",serif;letter-spacing:5px;font-size:16px;margin:0}.title-brand-rule{display:flex;align-items:center;gap:12px;color:var(--title-accent);font-size:12px;margin:18px 30px 0}.title-brand-rule:before,.title-brand-rule:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,#c6a5bb)}.title-brand-rule:after{transform:rotate(180deg)}.title-menu{display:flex;flex-direction:column;align-items:stretch;gap:8px;width:min(330px,100%);margin-top:clamp(28px,5vh,58px)}.title-menu>button,.title-menu>a{position:relative;display:flex;justify-content:flex-start;gap:22px;min-height:72px;padding:8px 20px;border:0;border-radius:0;text-align:left;color:var(--title-ink);background:transparent;font:600 27px/1.25 STKaiti,KaiTi,"Noto Serif SC",Songti SC,serif;letter-spacing:3px;transition:background .18s,color .18s,transform .18s}.title-menu>button:before,.title-menu>a:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:2px;background:var(--title-accent);opacity:0}.title-menu>button:hover,.title-menu>a:hover,.title-menu>button:focus-visible,.title-menu>a:focus-visible{background:linear-gradient(90deg,#bacce847,transparent);color:#854860;transform:translate(6px)}.title-menu>button:hover:before,.title-menu>a:hover:before,.title-menu>button:focus-visible:before,.title-menu>a:focus-visible:before{opacity:1}.title-menu small{display:block;margin-top:7px;font:500 9px/1.2 Georgia,serif;letter-spacing:4px;color:#657594}.title-icon{width:26px;flex-shrink:0;text-align:center;color:var(--title-accent);font-size:26px}.title-footer{position:absolute;inset:auto 40px 32px;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:2px;color:#566781}.title-dialog{width:min(1000px,calc(100% - 40px));max-height:calc(100svh - 48px);padding:32px;border:1px solid #bdc9dd;border-radius:4px;color:#354965;background:#fcfbff;box-shadow:0 24px 100px #3549652e}.title-dialog::backdrop{background:#35496555;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.title-close{display:flex;margin-left:auto;font-size:13px}.title-help{max-width:600px;margin:24px auto}.title-help ol{padding-left:24px}.title-help li{padding:8px 0 8px 8px}.title-help li p{margin:6px 0;color:#65748b}.title-screen .badge,.title-screen .count{background:#e9edf6;color:#4d6081}.title-screen :focus-visible{outline-color:var(--title-accent)}.title-dialog button:not(.secondary):not(.text-button){background:#405775;border-color:#405775}.title-dialog button:not(.secondary):not(.text-button):hover{background:#526d92}.title-dialog .secondary,.title-dialog input{color:#40526f;border-color:#bdc9dd}.title-dialog .secondary:hover{background:#e9edf6}.title-dialog .eyebrow,.title-dialog .muted{color:#65748b}.title-dialog .course-cover{background:#e3eaf5}.title-dialog .course-cover strong{color:#667e9d}.title-dialog .course-cover:after{border-color:#bdc9dd}.title-footer>span{background:#fffdf7d9;padding:3px 8px}@media(max-width:760px){.title-screen{padding:92px 8vw 85px;background:linear-gradient(180deg,#fffdf71a,#fbfaffed 310px,#fbfaff 460px),url(/preview-assets/menu_landscape.webp) 65% top / auto 440px no-repeat #fbfaff}.title-brand h1{font-size:clamp(44px,10vw,65px)}.title-brand{padding:12px;background:#fffdf7d9;border-radius:4px}.title-account{inset:30px 30px auto;justify-content:flex-end;gap:12px;max-width:none}.title-footer{inset-inline:30px;font-size:9px;letter-spacing:1px}.title-footer>span:last-child{display:none}.title-menu{margin-top:28px}.title-dialog{padding:20px}}@media(prefers-reduced-motion:reduce){.title-menu>button,.title-menu>a{transition:none}}@media(max-height:740px)and (min-width:761px){.title-screen{padding-top:50px;padding-bottom:65px}.title-brand h1{font-size:56px}.title-brand-rule{margin-top:10px}.title-menu{margin-top:18px;gap:2px}.title-menu>button,.title-menu>a{min-height:57px;font-size:24px}.title-menu small{margin-top:4px}.title-footer{bottom:25px}}.title-dialog .template-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.template-create-form>label:first-child,.template-create-form .template-choice,.template-create-form .template-summary{grid-column:1 / -1}.template-create-form .template-choice{display:flex;align-items:center;gap:10px}.template-choice input[type=checkbox]{width:auto;margin:0;accent-color:var(--title-accent)}@media(max-width:560px){.title-dialog .template-create-form{grid-template-columns:1fr}}.player{background:#25334c;color:#fffdf9}.player>header{padding:10px 20px;min-height:48px;background:#fffdf9;color:#40526f;border-bottom:1px solid #c6d2e2}.player-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.player .player-toolbar{background:#edf1f7;color:#40526f;padding:8px 20px;border-bottom:1px solid #c6d2e2}.player button,.player .button{background:#40526f;border-color:#40526f;color:#fffdf9}.player button:hover,.player .button:hover{background:#526887}.player :focus-visible{outline-color:#a66179}.player .badge{background:#edf1f7;color:#40526f}.player-landscape-tip{display:none}@media(max-width:760px)and (orientation:portrait){.player-landscape-tip{display:block;margin:0;padding:6px 12px;color:#40526f;background:#edf1f7;font-size:12px}}.player-tools{position:relative}.player-tools summary{cursor:pointer;padding:8px}.player-options{position:absolute;top:calc(100% + 8px);right:0;z-index:2;width:min(300px,calc(100vw - 32px));padding:16px;background:#fffdf9;border:1px solid #c6d2e2;border-radius:10px;box-shadow:0 8px 30px #25334c26}.player-options p{margin:0 0 12px}.player-options button{display:block;width:100%;margin-top:8px}.player-message{background:#364967;color:#fffdf9}.player iframe:fullscreen{background:#25334c}@media(max-width:480px){.player>header,.player-toolbar{padding-inline:12px}.player>header{flex-wrap:nowrap;gap:10px}.player-toolbar .actions{gap:6px}.player>header .badge{display:none}}.container.auth-layout{display:grid;place-items:center;min-height:100svh;padding:32px 0}.auth-layout>.panel{width:min(520px,100%);min-width:0;margin:0;text-align:center;overflow-wrap:anywhere}.auth-layout h1{font-size:clamp(28px,4vw,34px)}.auth-layout .create-form{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:24px}.auth-layout .create-form>p{margin:0}.auth-layout .create-form label{margin:0;text-align:left}.auth-layout .create-form button{width:100%;justify-self:center}.auth-layout .actions{justify-content:center}.auth-layout [aria-label=人机验证]{display:flex;justify-content:center}.auth-layout .notice{text-align:left}.auth-layout .notice>div{min-width:0}:root{--ink: #40526f;--ink-hover: #526887;--muted: #65748b;--canvas: #f9f7f5;--surface: #fffdf9;--wash: #edf1f7;--line: #c6d2e2;--accent: #a66179;font-family:Segoe UI,Microsoft YaHei,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizeLegibility;line-height:1.6;font-weight:400}*{box-sizing:border-box}body{margin:0}button,.button,h1,h2,h3,h4,h5,h6,.eyebrow,.site-header,nav,footer,.skip-link{-webkit-user-select:none;user-select:none}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,.button{border:1px solid var(--ink);background:var(--ink);color:#fff;padding:11px 20px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600}button:hover,.button:hover{background:var(--ink-hover)}button:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.secondary:hover{background:var(--wash)}.text-button{color:var(--muted);background:transparent;border:0;padding:4px}.text-button:hover{background:var(--wash)}.site-header{min-height:96px;padding:20px max(5vw,calc((100vw - 1160px)/2));display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:var(--surface)}.brand{display:flex;gap:10px;align-items:center;font-size:23px;letter-spacing:-.5px;font-weight:700}.brand-mark{background:var(--ink);color:var(--surface);border-radius:10px;padding:3px 8px;font-family:Georgia,serif;font-size:30px}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:2px;color:var(--muted)}nav{display:flex;align-items:center;gap:24px;font-size:14px}nav a{padding:7px 0;border-bottom:2px solid var(--accent)}.container{width:min(1160px,90%);margin:0 auto;min-height:calc(100vh - 205px);padding:40px 0 70px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:370px;gap:30px;align-items:center;padding:20px 30px 45px 5px}.eyebrow{font-size:11px;letter-spacing:2.4px;color:var(--muted);font-weight:600;margin:0 0 12px}h1{font-size:clamp(30px,4vw,48px);line-height:1.35;font-weight:600;letter-spacing:-1px;margin:0 0 18px;overflow-wrap:anywhere}h2{font-size:22px;margin:0 0 14px;font-weight:600}h3{font-size:18px;font-weight:600;overflow-wrap:anywhere}.lead{font-size:15px;color:var(--muted);line-height:1.9;margin-bottom:24px}.hero-art{position:relative;height:300px;border-radius:50%;background:radial-gradient(ellipse,#dce7cc 0%,#eef2e5 45%,transparent 70%)}.paper{position:absolute;width:235px;height:280px;left:calc(50% - 117px);top:5px;border-radius:4px;box-shadow:0 10px 30px #304a3f12}.paper-back{transform:rotate(12deg) translate(20px);background:#c9d8bf;border:1px solid #b2c5a8}.paper-front{padding:28px;transform:rotate(-8deg);background:#fffef5;border:1px solid #e3e6d7;display:flex;flex-direction:column;justify-content:space-between}.paper-front>span{font-family:Georgia,serif;font-size:25px}.paper-front strong{font-size:21px;font-weight:500}.paper-front small{font-size:7px;letter-spacing:1px}.paper-lines{height:35px;width:85%;background:repeating-linear-gradient(transparent 0 10px,#d7ddce 10px,#d7ddce 11px)}.art-star{position:absolute;left:75%;top:10px;color:#bfa264;font-size:60px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:30px 0 20px}.section-heading h2{margin:0}.section-heading .eyebrow{margin-bottom:5px}.count{font-size:13px;background:var(--wash);padding:3px 9px;border-radius:15px;margin-left:6px;vertical-align:middle}.muted{color:var(--muted);font-size:14px}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.course-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);transition:transform .2s,box-shadow .2s}.course-card:hover{transform:translateY(-3px);box-shadow:0 8px 22px #304a3f12}.course-cover{height:170px;padding:20px;background:var(--wash);position:relative;overflow:hidden}.course-cover>span:first-child{font-size:10px;letter-spacing:2px}.course-cover strong{font-family:Georgia,Microsoft YaHei,serif;position:absolute;right:35px;bottom:15px;font-size:62px;color:var(--ink);font-weight:400;transform:rotate(-8deg)}.course-cover:after{content:"";position:absolute;border:1px solid var(--line);width:200px;height:200px;border-radius:50%;left:-100px;top:50px}.cover-arrow{position:absolute;bottom:20px;left:22px;font-size:25px}.course-info{padding:22px}.course-info h3{margin:12px 0}.course-info p{margin:0;color:var(--muted);font-size:12px}.badge{font-size:11px;background:var(--wash);color:var(--ink);padding:4px 9px;border-radius:5px;white-space:nowrap}.panel{background:var(--surface);border:1px solid var(--line);padding:28px;border-radius:12px;margin-bottom:25px}.panel .section-heading{margin-top:0}.create-form{display:grid;grid-template-columns:1.5fr 1fr 1.5fr;gap:20px}.create-form button{justify-self:start;grid-column:1 / -1}label{display:grid;gap:8px;font-size:14px;margin-bottom:16px}input,select,textarea{min-width:0;width:100%;border-radius:6px;border:1px solid var(--line);padding:10px 12px;background:var(--surface);color:var(--ink)}.notice{margin:16px 0;border-radius:8px;padding:14px 18px;display:flex;gap:15px;align-items:center;justify-content:space-between}.error{color:#8b354f;background:#fff0f4;border:1px solid #e9bccb}.notice small{display:block;margin-top:5px;overflow-wrap:anywhere}.empty{padding:60px 20px;text-align:center;border:1px dashed var(--line);border-radius:12px}.loading{color:var(--muted);padding:25px 0}footer{width:min(1160px,90%);margin:auto;padding:24px 0;border-top:1px solid var(--line);color:var(--muted);font-size:12px;display:flex;justify-content:space-between}.back-link{display:inline-block;font-size:13px;color:var(--muted);margin-bottom:30px}.page-heading{margin-bottom:30px}.page-heading h1{font-size:34px}.workspace-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:28px;align-items:start}.upload-area{padding:24px;border:1px dashed var(--line);background:var(--wash);border-radius:8px}.upload-area small{color:var(--muted)}.upload-area input{background:transparent;border:0;padding:10px 0 0}.file-list{list-style:none;padding:0}.file-list li{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;overflow-wrap:anywhere}.file-list small{display:block;color:var(--muted)}.persona-card{text-align:center}.avatar{border-radius:50%;background:var(--wash);color:var(--accent);margin:30px auto 20px;width:90px;height:90px;display:grid;place-items:center;font-size:40px}hr{border:0;border-top:1px solid var(--line);margin:25px 0}.persona-card small{color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.progress-box{margin:20px 0;font-size:14px}.progress-box>div{display:flex;justify-content:space-between;gap:10px}.progress-box progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:9px;border:0;border-radius:999px;overflow:hidden;background:var(--wash);cursor:default}.progress-box progress::-webkit-progress-bar{background:var(--wash)}.progress-box progress::-webkit-progress-value{background:var(--accent)}.progress-box progress::-moz-progress-bar{background:var(--accent)}.player{display:flex;flex-direction:column;height:100dvh;background:#18291f;color:#f1f4ed}.player>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 22px;font-size:13px}.player iframe{flex:1;width:100%;border:0;min-height:0}.player-empty{margin:auto;text-align:center;padding:25px}.player-empty h1{font-size:30px}.engine-host{display:flex;flex:1;min-height:0;flex-direction:column}.player-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 20px;background:#213529;font-size:12px}.player-toolbar .actions{margin:0;gap:8px}.player-toolbar button,.player-toolbar .button,.player>header button{font-size:12px;padding:6px 10px}.player-message{margin:0;padding:8px 20px;background:#283d30;font-size:13px}.player iframe:fullscreen{height:100dvh;background:#18291f}.skip-link{position:absolute;left:20px;top:-60px;background:#fff;padding:10px;z-index:2}.skip-link:focus{top:10px}@media(max-width:760px){.hero{grid-template-columns:1fr;padding:10px 0 30px}.hero-art{display:none}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.create-form{grid-template-columns:1fr;gap:0}.workspace-grid{grid-template-columns:1fr}.section-heading>.muted{display:none}nav{gap:12px}.panel{padding:20px}.page-heading h1{font-size:28px}}@media(max-width:480px){.course-grid{grid-template-columns:1fr}.site-header{padding:16px 5%;flex-wrap:wrap;gap:12px}.site-header nav{width:100%;gap:12px;flex-wrap:wrap;justify-content:space-between}.brand{font-size:20px}footer span{max-width:160px;text-align:right}.player>header{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){.course-card{transition:none}}textarea{resize:vertical;min-height:100px}.file-list li>div{min-width:0}.file-list li>button{flex-shrink:0;align-self:center}.notice pre{white-space:pre-wrap;overflow-wrap:anywhere}dialog{width:min(560px,calc(100vw - 32px));padding:28px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:12px}dialog::backdrop{background:#36496766}.workflow-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:28px}.workflow-nav a{border:1px solid var(--line);border-radius:10px;padding:14px 18px;background:var(--surface)}.workflow-nav a:hover{background:var(--wash)}.workflow-nav span{color:var(--accent);margin-right:10px;font-family:Georgia,serif}#course-materials,#course-persona,#course-generation{scroll-margin-top:24px}.workspace-grid>*,.workspace-aside{min-width:0}.workspace-aside .create-form{grid-template-columns:1fr}.workspace-aside .actions{margin-top:0}@media(max-width:760px){.workspace-aside{grid-row:1}.workflow-nav{grid-template-columns:1fr;gap:8px}.workflow-nav a{padding:10px 14px}}
