/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.table{display:table}.table-row{display:table-row}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\[a\:m\]{a:m}.\[a\:nt\]{a:nt}.\[a\:sk\]{a:sk}.\[a\:t\]{a:t}.\[ba\:θ\]{ba:θ}.\[bi\:\,bi\]{bi:,bi}.\[bi\:f\]{bi:f}.\[bi\:m\]{bi:m}.\[bi\:st\]{bi:st}.\[bi\:t\]{bi:t}.\[bi\:tʃ\]{bi:tʃ}.\[bra\:ntʃ\]{bra:ntʃ}.\[bri\:f\]{bri:f}.\[bri\:ð\]{bri:ð}.\[bu\:t\]{bu:t}.\[da\:k\]{da:k}.\[da\:ns\]{da:ns}.\[di\:d\]{di:d}.\[di\:l\]{di:l}.\[di\:p\]{di:p}.\[dra\:ft\]{dra:ft}.\[dri\:m\]{dri:m}.\[fa\:m\]{fa:m}.\[fa\:st\]{fa:st}.\[fi\:d\]{fi:d}.\[fi\:l\]{fi:l}.\[fi\:ld\]{fi:ld}.\[fri\:z\]{fri:z}.\[fru\:t\]{fru:t}.\[fu\:d\]{fu:d}.\[fu\:l\]{fu:l}.\[ga\:d\]{ga:d}.\[gla\:ns\]{gla:ns}.\[gla\:s\]{gla:s}.\[gra\:nt\]{gra:nt}.\[gra\:s\]{gra:s}.\[gra\:sp\]{gra:sp}.\[gri\:k\]{gri:k}.\[gri\:n\]{gri:n}.\[gri\:t\]{gri:t}.\[gru\:p\]{gru:p}.\[gu\:s\]{gu:s}.\[ha\:d\]{ha:d}.\[ha\:f\]{ha:f}.\[ha\:m\]{ha:m}.\[ha\:t\]{ha:t}.\[hi\:\,hi\]{hi:,hi}.\[hi\:l\]{hi:l}.\[hi\:t\]{hi:t}.\[hju\:dʒ\]{hju:dʒ}.\[hu\:m\]{hu:m}.\[hu\:z\]{hu:z}.\[hwi\:l\]{hwi:l}.\[hwi\:t\]{hwi:t}.\[i\:st\]{i:st}.\[i\:t\]{i:t}.\[i\:tʃ\]{i:tʃ}.\[i\:v\]{i:v}.\[i\:z\]{i:z}.\[ja\:d\]{ja:d}.\[ji\:ld\]{ji:ld}.\[ju\:θ\]{ju:θ}.\[ka\:d\]{ka:d}.\[ka\:m\]{ka:m}.\[ka\:st\]{ka:st}.\[ka\:t\]{ka:t}.\[ki\:n\]{ki:n}.\[ki\:p\]{ki:p}.\[kju\:b\]{kju:b}.\[kla\:k\]{kla:k}.\[kla\:s\]{kla:s}.\[kli\:n\]{kli:n}.\[kri\:m\]{kri:m}.\[kru\:d\]{kru:d}.\[ku\:l\]{ku:l}.\[kwi\:n\]{kwi:n}.\[la\:dʒ\]{la:dʒ}.\[la\:f\]{la:f}.\[la\:st\]{la:st}.\[li\:d\]{li:d}.\[li\:f\]{li:f}.\[li\:g\]{li:g}.\[li\:n\]{li:n}.\[li\:p\]{li:p}.\[li\:st\]{li:st}.\[li\:v\]{li:v}.\[lu\:s\]{lu:s}.\[lu\:z\]{lu:z}.\[ma\:k\]{ma:k}.\[ma\:sk\,mæsk\]{ma:sk,mæsk}.\[ma\:tʃ\]{ma:tʃ}.\[mi\:\,mi\]{mi:,mi}.\[mi\:l\]{mi:l}.\[mi\:n\]{mi:n}.\[mi\:nz\]{mi:nz}.\[mi\:t\]{mi:t}.\[mu\:d\]{mu:d}.\[mu\:n\]{mu:n}.\[mu\:v\]{mu:v}.\[pa\:k\]{pa:k}.\[pa\:m\]{pa:m}.\[pa\:s\]{pa:s}.\[pa\:st\]{pa:st}.\[pa\:t\]{pa:t}.\[pa\:θ\]{pa:θ}.\[pi\:s\]{pi:s}.\[pla\:nt\]{pla:nt}.\[pli\:z\]{pli:z}.\[pru\:f\]{pru:f}.\[pru\:v\]{pru:v}.\[pu\:l\]{pu:l}.\[ri\:d\]{ri:d}.\[ri\:tʃ\]{ri:tʃ}.\[ru\:f\]{ru:f}.\[ru\:l\]{ru:l}.\[ru\:m\,rum\]{ru:m,rum}.\[ru\:t\]{ru:t}.\[si\:d\]{si:d}.\[si\:k\]{si:k}.\[si\:m\]{si:m}.\[si\:n\]{si:n}.\[si\:s\]{si:s}.\[si\:t\]{si:t}.\[si\:z\]{si:z}.\[sju\:t\]{sju:t}.\[skri\:m\]{skri:m}.\[skri\:n\]{skri:n}.\[sku\:l\]{sku:l}.\[sli\:p\]{sli:p}.\[sli\:v\]{sli:v}.\[sma\:t\]{sma:t}.\[smu\:ð\]{smu:ð}.\[spi\:d\]{spi:d}.\[spi\:k\]{spi:k}.\[spi\:tʃ\]{spi:tʃ}.\[spu\:n\]{spu:n}.\[sta\:f\]{sta:f}.\[sta\:t\]{sta:t}.\[sta\:v\]{sta:v}.\[sti\:l\]{sti:l}.\[sti\:m\]{sti:m}.\[sti\:p\]{sti:p}.\[stri\:m\]{stri:m}.\[stri\:t\]{stri:t}.\[su\:n\]{su:n}.\[su\:p\]{su:p}.\[swi\:p\]{swi:p}.\[swi\:t\]{swi:t}.\[ta\:sk\]{ta:sk}.\[ti\:m\]{ti:m}.\[ti\:tʃ\]{ti:tʃ}.\[tri\:t\]{tri:t}.\[tru\:p\]{tru:p}.\[tru\:θ\]{tru:θ}.\[tu\:\,tu\,tə\]{tu:,tu,tə}.\[tu\:l\]{tu:l}.\[tu\:θ\]{tu:θ}.\[wi\:\,wi\]{wi:,wi}.\[wi\:k\]{wi:k}.\[wi\:p\]{wi:p}.\[wu\:nd\]{wu:nd}}:root{--brand:#780080;--brand-deep:#59005f;--brand-soft:#f5e9f6;--brand-pale:#fbf7fc;--orange:#ec6408;--ink:#24152a;--muted:#77687b;--paper:#fff;--canvas:#f1eaf3;--line:#eadfeb;--accent:#780080}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);background:#f4eff5;margin:0}body{font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}button,input,select{font:inherit}button{-webkit-tap-highlight-color:transparent}.landing-page{min-height:100dvh;color:var(--ink);background:linear-gradient(#fcf9fc 0%,#f4edf6 100%)}.landing-nav{justify-content:space-between;align-items:center;width:min(980px,100% - 48px);height:82px;margin:0 auto;display:flex}.landing-nav>span:last-child{color:#6f7c91;font-size:12px}.landing-brand{align-items:center;gap:10px;min-width:0;display:flex}.zhibo-logo{object-fit:cover;border-radius:12px;width:42px;height:42px;display:block;box-shadow:0 8px 20px #7800802e}.landing-brand strong{letter-spacing:.08em;white-space:nowrap;font-size:14px}.landing-hero{background:linear-gradient(135deg,#fff 0% 72%,#f8eff9 100%);border:1px solid #eaddeb;border-radius:32px;align-items:center;width:min(980px,100% - 48px);min-height:560px;margin:18px auto 30px;padding:58px 66px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 70px #5c0f6317}.landing-hero:before{content:"";border:48px solid #7800800b;border-radius:50%;width:330px;height:330px;position:absolute;top:-135px;right:-115px}.landing-hero:after{content:"";background:var(--orange);opacity:.8;border-radius:7px;width:54px;height:7px;position:absolute;bottom:62px;right:68px;transform:rotate(-28deg)}.hero-layout{z-index:1;grid-template-columns:minmax(0,1.08fr) minmax(310px,.92fr);align-items:center;gap:54px;width:100%;display:grid;position:relative}.hero-copy{min-width:0}.hero-eyebrow{color:var(--brand);letter-spacing:.14em;margin:0 0 20px;font-size:11px;font-weight:700}.hero-copy h1,.activation-intro h1{letter-spacing:-.045em;margin:0;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif;font-size:clamp(42px,5.3vw,66px);font-weight:800;line-height:1.15}.hero-description{color:#6e6270;max-width:470px;margin:24px 0 30px;font-size:15px;line-height:1.8}.hero-routes{background:#fffc;border:1px solid #eaddeb;border-radius:23px;gap:10px;padding:25px;display:grid;box-shadow:0 16px 42px #5c0f6312}.route-heading{flex-direction:column;gap:6px;padding:1px 2px 9px;display:flex}.route-heading span,.route-card span{color:var(--brand);font-size:10px;font-weight:700}.route-heading strong{color:#2f2132;font-size:18px;line-height:1.4}.route-card{background:#fff;border:1px solid #eaddeb;border-radius:15px;flex-direction:column;gap:6px;padding:15px 16px;display:flex}.route-card strong{color:#3a2d3d;font-size:13px;font-weight:700;line-height:1.5}.route-card small{color:#8a7d8c;font-size:10px;line-height:1.5}.hero-routes>p{color:#968a98;margin:4px 2px 0;font-size:9px}.primary-entry{color:#fff;cursor:pointer;background:linear-gradient(135deg,#890392,#65006d);border:0;border-radius:16px;justify-content:center;align-items:center;width:min(100%,280px);height:58px;padding:0 24px;display:flex;box-shadow:0 14px 32px #7800803d}.primary-entry:disabled{opacity:.68;cursor:wait}.primary-entry span{font-size:15px;font-weight:700}.hero-note{color:#8a7d8c;align-items:center;gap:7px;margin:17px 0 0;font-size:10px;display:flex}.hero-note i{background:var(--orange);border-radius:50%;width:6px;height:6px}.landing-footer{color:#858b95;justify-content:space-between;width:min(980px,100% - 48px);margin:0 auto;padding:22px 0 42px;font-size:10px;display:flex}.landing-footer p{margin:0}.activation-page{min-height:100dvh;color:var(--ink);background:linear-gradient(#fcf9fc,#f4edf6)}.activation-nav{border-bottom:1px solid #eadfeb;justify-content:space-between;align-items:center;width:min(1100px,100% - 48px);height:72px;margin:0 auto;display:flex}.activation-nav button{color:#4e5968;cursor:pointer;background:0 0;border:0;padding:0;font-size:11px}.activation-nav span{letter-spacing:.08em;font-size:13px;font-weight:700}.activation-shell{align-items:center;width:min(520px,100% - 48px);min-height:calc(100dvh - 72px);margin:0 auto;padding:52px 0 72px;display:grid}.activation-form{background:#fff;border:1px solid #eadfeb;border-radius:26px;padding:36px 38px 30px;box-shadow:0 22px 60px #59005f1c}.form-logo{width:48px;height:48px;box-shadow:none;border-radius:14px;margin-bottom:18px}.activation-form-title{border-bottom:1px solid #e9edf3;margin-bottom:28px;padding-bottom:22px}.activation-form-title .hero-eyebrow{margin-bottom:10px}.activation-form-title h1{margin:0;font-size:29px}.activation-form-title>p:last-child{color:#858d99;margin:8px 0 0;font-size:11px}.activation-form label{margin-bottom:18px;display:block}.activation-form label>span{color:#4c5666;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.activation-form label small{color:#96938d;font-size:9px;font-weight:400}.activation-form input,.activation-form select{color:#1d2940;background:#f7f9fc;border:1px solid #dbe3f0;border-radius:13px;outline:0;width:100%;height:48px;padding:0 14px;font-size:13px}.activation-form input:focus,.activation-form select:focus{border-color:#334e79;box-shadow:0 0 0 2px #334e7914}.form-error{color:#9d3d2d;background:#f7e9e4;margin:-4px 0 14px;padding:10px 12px;font-size:11px;line-height:1.5}.activation-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#890392,#65006d);border:0;border-radius:14px;width:100%;height:52px;font-size:13px;font-weight:700;box-shadow:0 10px 24px #78008033}.activation-submit:disabled{opacity:.6;cursor:wait}.privacy-note{color:#99958d;text-align:center;margin:13px 0 0;font-size:9px;line-height:1.5}.phone-status{border-radius:12px;margin:-2px 0 18px;padding:12px 13px;font-size:11px;line-height:1.6}.phone-status.checking{color:#315b99;background:#eef4fd}.phone-status.active{color:#187342;background:#eaf8f0}.phone-status.inactive{color:#345b8e;background:#eef5ff}.activation-code-field{animation:.25s ease-out both reveal-field}.activation-code-field>span{justify-content:space-between;align-items:center;display:flex!important}.activation-code-field>span b{font-size:11px}.activation-code-field>span button{color:#2864c7;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;font-weight:700;text-decoration:underline}@keyframes reveal-field{0%{opacity:0;transform:translateY(-7px)}}.qr-backdrop{z-index:30;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#111b2c94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.qr-dialog{text-align:center;background:#fff;border-radius:28px;width:min(92vw,390px);padding:33px 34px 28px;animation:.22s ease-out both dialog-in;position:relative;box-shadow:0 30px 90px #0a142547}.dialog-handle{display:none}.qr-close{color:#7f8793;cursor:pointer;background:0 0;border:0;padding:5px;font-size:10px;position:absolute;top:18px;right:20px}.qr-dialog .hero-eyebrow{margin-bottom:11px}.qr-dialog h2{margin:0;font-size:22px}.qr-dialog>p:not(.hero-eyebrow){color:#747c87;margin:12px 0 19px;font-size:11px;line-height:1.65}.qr-dialog img{aspect-ratio:1;border:1px solid #edf0f4;border-radius:16px;width:min(100%,270px);margin:0 auto;display:block}.qr-dialog small{color:#8a919a;margin-top:13px;font-size:10px;display:block}@keyframes dialog-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}.student-app{background:#faf7fa;width:min(100%,760px);min-height:100dvh;margin:0 auto;padding-bottom:54px;box-shadow:0 0 50px #530c5a14}.home-header{color:var(--ink);background:linear-gradient(145deg,#fff 0%,#f7edf8 100%);border-bottom:1px solid #eadfeb;padding:20px 20px 22px}.brand-line{justify-content:space-between;align-items:baseline;display:flex}.brand-line button{color:var(--brand-deep);letter-spacing:.04em;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:14px;font-weight:700}.brand-line span{color:#7c7c7a;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;overflow:hidden}.library-title-row{justify-content:space-between;align-items:flex-end;height:100px;display:flex;overflow:hidden}.library-title-row>span{min-width:0}.library-title-row>.zhibo-logo{border-radius:18px;width:66px;height:66px;margin-bottom:13px;box-shadow:0 10px 24px #78008029}.library-eyebrow{color:var(--brand);letter-spacing:.16em;margin:22px 0 7px;font-size:9px;font-weight:700}.home-header h1{letter-spacing:-.04em;margin:0 0 20px;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif;font-size:31px;font-weight:800;line-height:1.2}.search-field{color:#7c6c80;background:#fff;border:1px solid #eadfeb;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;height:46px;padding:0 13px;display:grid;box-shadow:0 7px 20px #5c0f630f}.search-field>span{font-size:11px;font-weight:700}.search-field input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:14px}.search-field input::placeholder{color:#a1aaa4}.search-field button{color:#65766d;cursor:pointer;background:0 0;border:0;padding:5px;font-size:11px}.filter-area{border-bottom:1px solid var(--line);background:#fff;padding:15px 0 5px}.filter-caption{color:#7b857e;margin:0 16px -5px;font-size:11px;font-weight:700}.level-tabs{background:#f1eaf2;border-radius:12px;grid-template-columns:repeat(4,1fr);gap:3px;margin:0;padding:3px;display:grid}.level-tabs button{color:#6b746e;cursor:pointer;background:0 0;border:0;border-radius:5px;height:34px;font-size:12px}.level-tabs button.active{color:#fff;background:var(--brand);font-weight:700;box-shadow:0 5px 13px #78008033}.subject-tabs{scrollbar-width:none;gap:7px;padding:13px 16px 10px;display:flex;overflow-x:auto}.subject-tabs::-webkit-scrollbar{display:none}.subject-tabs button{color:#65758c;cursor:pointer;background:#fff;border:1px solid #dbe7f5;border-radius:16px;flex:none;height:32px;padding:0 13px;font-size:11px}.subject-tabs button.active{color:var(--brand-deep);background:var(--brand-soft);border-color:#c895cc;font-weight:700}.range-filter{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:2px 16px 9px;display:grid}.range-filter>span{color:#7b857e;white-space:nowrap;font-size:10px}.continue-section,.book-section-list{padding:18px 16px 0}.section-label{color:#7a827d;margin:0 0 9px;font-size:11px;font-weight:700}.continue-book{width:100%;color:inherit;text-align:left;cursor:pointer;background:linear-gradient(135deg,#fff,#f5e9f6);border:1px solid #eadfeb;border-radius:16px;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;display:grid;box-shadow:0 8px 24px #5c0f630f}.continue-mark{color:#fff;background:linear-gradient(145deg,#92059b,#710078);border-radius:13px;place-items:center;width:50px;height:58px;font-family:Arial,PingFang SC,sans-serif;font-size:13px;font-weight:700;display:grid;box-shadow:0 7px 16px #78008033}.continue-book>span:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}.continue-book small{color:#67756d;font-size:10px}.continue-book strong{text-overflow:ellipsis;white-space:nowrap;font-family:Songti SC,serif;font-size:16px;overflow:hidden}.continue-book em{color:#758078;font-size:10px;font-style:normal}.continue-book b{color:var(--brand);font-size:11px}.book-section-list{padding-top:22px}.list-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding-bottom:10px;display:flex}.list-heading h2{letter-spacing:0;margin:0;font-size:18px}.list-heading span{color:#879089;font-size:11px}.category-group{padding-top:19px}.category-heading{justify-content:space-between;align-items:center;padding:0 3px 8px;display:flex}.category-heading strong{color:#34445e;font-size:13px}.category-heading span{color:#909791;font-size:10px}.book-list{background:#fff;border:1px solid #e0eaf6;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #19488a0d}.student-book{width:100%;min-height:92px;color:inherit;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #e8eef6;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 13px;display:grid}.student-book:last-child{border-bottom:0}.student-book:active,.continue-book:active{transform:scale(.99)}.subject-cover{color:#fff;background:linear-gradient(145deg,#92059b,#710078);border-radius:12px;flex-direction:column;justify-content:space-between;align-items:flex-start;width:48px;height:64px;padding:9px 7px 7px;display:flex;box-shadow:0 7px 15px #7800802e}.subject-cover i{font-family:Songti SC,serif;font-size:12px;font-style:normal;font-weight:700;line-height:1.3}.subject-cover small{color:#ffffffbf;font-size:8px}.student-book:nth-child(4n+2) .subject-cover{background:linear-gradient(145deg,#9a319f,#731079)}.student-book:nth-child(4n+3) .subject-cover{background:linear-gradient(145deg,#b04a91,#7c2264)}.student-book:nth-child(4n+4) .subject-cover{background:linear-gradient(145deg,#8a518f,#66336b)}.student-book-copy{flex-direction:column;gap:6px;min-width:0;display:flex}.student-book-copy strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-family:Songti SC,serif;font-size:15px;line-height:1.45;display:-webkit-box;overflow:hidden}.student-book-copy small{color:#7d857f;font-size:10px}.student-book-copy em{color:var(--brand);font-size:10px;font-style:normal}.open-label{color:var(--brand);font-size:10px;font-weight:700}.library-loading{gap:12px;padding:20px 0;display:grid}.library-loading span{background:#ecefe9;border-radius:5px;height:72px;animation:1.1s ease-in-out infinite alternate loading-pulse}.library-empty{color:#7a827d;text-align:center;padding:58px 20px}.library-empty strong{color:#3e4942;font-size:14px}.library-empty p{margin:8px 0 0;font-size:11px}.reader{background:var(--canvas);grid-template-rows:auto 3px minmax(0,1fr) auto;height:100dvh;min-height:520px;transition:background .25s,color .25s;display:grid;overflow:hidden}.reader.dark{--paper:#251b28;--canvas:#171119;--ink:#f7f0f7;--muted:#b3a2b5;--line:#49384c;--accent:#d993df}.reader-header{grid-template-columns:64px minmax(0,1fr) 64px;align-items:center;gap:10px;width:min(100%,820px);margin:0 auto;padding:12px 16px 10px;display:grid}.text-control,.reader-footer button{color:#4f6789;cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:700}.dark .text-control,.dark .reader-footer button{color:#bac8c0}.text-control:first-child{text-align:left}.text-control:last-child{text-align:right}.text-control:active,.reader-footer button:active{transform:scale(.97)}.reader-heading{justify-content:center;align-items:baseline;gap:8px;min-width:0;display:flex}.reader-heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.reader-heading span{color:var(--muted);flex:none;font-size:9px}.reader-progress{background:linear-gradient(to right,var(--accent) var(--reading-progress),#ccd9ea var(--reading-progress));width:min(100%,820px);margin:0 auto}.dark .reader-progress{background:linear-gradient(to right,var(--accent) var(--reading-progress),#343a36 var(--reading-progress))}.reader-body{width:min(100%,820px);min-height:0;margin:0 auto;padding:9px 10px 6px}.ebook-viewport,.original-page,.reader-state{background:var(--paper);border:1px solid #38639e1f;border-radius:16px;width:100%;height:100%;overflow:hidden;box-shadow:0 14px 40px #193e741c}.ebook-viewport{padding:clamp(24px,4vh,42px) clamp(22px,5vw,58px) clamp(22px,4vh,40px)}.ebook-flow{column-fill:auto;width:100%;height:100%;color:var(--ink);will-change:transform;column-gap:clamp(48px,9vw,78px);font-family:Songti SC,STSong,Noto Serif CJK SC,serif;transition:transform .3s cubic-bezier(.22,1,.36,1)}.book-section,.book-point,.book-subheading,.book-term,.book-note,.book-table-row{break-inside:avoid}.book-section{color:var(--accent);letter-spacing:0;margin:0 0 18px;font-size:24px;font-weight:700;line-height:1.35}.book-point{color:var(--accent);margin:17px 0 11px;font-size:21px;font-weight:700;line-height:1.45}.book-subheading{margin:14px 0 8px;font-size:18px;font-weight:700;line-height:1.55}.book-paragraph,.book-item{letter-spacing:.01em;text-align:justify;text-justify:inter-ideograph;orphans:2;widows:2;margin:0 0 11px;font-size:17px;line-height:1.72}.book-item{text-indent:-1.65em;padding-left:1.65em}.book-term{border-bottom:1px solid var(--line);grid-template-columns:30px minmax(90px,.75fr) minmax(0,1fr);align-items:baseline;gap:8px;margin:0;padding:8px 2px;font-family:Arial,PingFang SC,sans-serif;line-height:1.45;display:grid}.book-term>span{color:var(--muted);text-align:right;font-size:12px}.book-term>strong{overflow-wrap:anywhere;font-size:16px;font-weight:700}.book-term>em{color:var(--ink);font-size:15px;font-style:normal}.book-term.no-label{grid-template-columns:minmax(120px,.8fr) minmax(0,1fr)}.book-term.no-label>span{display:none}.book-note{border-left:3px solid var(--accent);color:var(--accent);margin:12px 0 14px;padding-left:11px;font-size:16px;font-weight:700;line-height:1.65}.book-table-row{border-bottom:1px solid var(--line);margin:0;padding:7px 2px;font-family:Arial,PingFang SC,sans-serif;font-size:15px;line-height:1.55}.mode-knowledge .ebook-flow{font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}.mode-knowledge .book-item{margin-bottom:9px;font-size:16px;line-height:1.62}.mode-knowledge .book-paragraph{font-size:16px;line-height:1.66}.mode-vocabulary .ebook-flow{font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}.mode-vocabulary .book-paragraph{font-size:15px;line-height:1.55}.mode-vocabulary .book-term{padding-top:7px;padding-bottom:7px}.mode-essay .book-paragraph{text-indent:2em}.mode-formula .ebook-flow{font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}.original-page{isolation:isolate;background:#dce8f6;position:relative}.original-page img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:none;display:block}.original-page .fitted-image{object-fit:contain;width:100%;min-width:0;height:100%;min-height:0;position:absolute;inset:0}.original-page .segmented-image{transform-origin:0 0;will-change:transform;width:100%;height:auto;transition:transform .28s cubic-bezier(.22,1,.36,1)}.segment-badge{z-index:1;color:#f5f7f4;pointer-events:none;background:#232d27b8;border-radius:12px;padding:5px 8px;font-size:10px;font-weight:700;position:absolute;bottom:10px;right:10px}.reader-state{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.reader-state strong{color:var(--ink);font-size:15px}.reader-state p{margin:0;font-size:11px}.loading-state{justify-content:flex-start;align-items:stretch;gap:18px;padding:48px}.loading-state span{background:#e5e5de;border-radius:3px;height:16px;animation:1.2s ease-in-out infinite alternate loading-pulse}.loading-state span:first-child{width:48%;height:27px}.loading-state span:nth-child(3){width:86%}.loading-state span:nth-child(4){width:65%}@keyframes loading-pulse{to{opacity:.42}}.reader-footer{width:min(100%,820px);color:var(--muted);justify-content:center;align-items:center;gap:20px;margin:0 auto;padding:8px 16px 12px;display:flex;position:relative}.reader-footer button:disabled{opacity:.3;cursor:default}.reader-footer>span{text-align:center;min-width:82px;font:13px/1 Georgia,serif}.reader-footer>span strong{color:var(--ink);font-size:18px;font-weight:500}.reader-footer>span i{color:#a3a79f;padding:0 7px;font-style:normal}.reader-footer>span small{margin-top:4px;font:9px/1 Arial,PingFang SC,sans-serif;display:block}.reader-footer .theme-control{position:absolute;right:16px}.reader-warning-backdrop{z-index:40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1e122094;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.reader-warning-dialog{color:#302133;text-align:center;background:#fff;border:1px solid #eadfeb;border-radius:24px;width:min(92vw,390px);padding:30px 28px 25px;animation:.22s ease-out both dialog-in;box-shadow:0 28px 80px #280d2b40}.warning-mark{color:#fff;background:var(--brand);border-radius:14px;place-items:center;width:42px;height:42px;margin:0 auto 17px;font-size:22px;font-weight:800;display:grid}.reader-warning-dialog h2{margin:0;font-size:21px}.reader-warning-dialog p{color:#746777;text-align:left;margin:14px 0 11px;font-size:13px;line-height:1.75}.reader-warning-dialog>strong{color:#6c2870;background:var(--brand-soft);text-align:left;border-radius:12px;padding:11px 12px;font-size:11px;line-height:1.65;display:block}.warning-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:22px;display:grid}.warning-actions button{color:#665768;cursor:pointer;background:#fff;border:1px solid #decfe0;border-radius:13px;height:46px;font-size:12px;font-weight:700}.warning-actions button.confirm{border-color:var(--brand);color:#fff;background:var(--brand)}@media (width<=760px){.landing-nav{width:calc(100% - 32px);height:66px}.landing-brand strong{letter-spacing:.04em;font-size:12px}.landing-nav>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:48%;font-size:9px;overflow:hidden}.landing-hero{border-radius:27px;width:calc(100% - 24px);min-height:0;margin-top:6px;padding:42px 22px 34px}.landing-hero:before{top:-145px;right:-150px}.landing-hero:after{width:42px;height:6px;bottom:34px;right:28px}.hero-layout{grid-template-columns:1fr;gap:25px}.hero-copy h1{max-width:340px;font-size:clamp(37px,10.5vw,47px);line-height:1.18}.hero-description{max-width:335px;margin:22px 0 23px;font-size:14px;line-height:1.75}.hero-routes{border-radius:18px;gap:8px;padding:18px}.route-heading{padding-bottom:7px}.route-heading strong{font-size:16px}.route-card{border-radius:13px;gap:5px;padding:12px 13px}.route-card strong{font-size:11px}.primary-entry{border-radius:15px;width:100%;height:58px;box-shadow:0 12px 26px #78008038}.hero-note{justify-content:center;margin-top:15px}.landing-footer{width:calc(100% - 32px);padding-bottom:28px}.activation-nav{width:calc(100% - 32px);height:64px}.activation-shell{width:calc(100% - 24px);min-height:calc(100dvh - 64px);padding:26px 0 42px}.activation-form{border-radius:22px;margin:0;padding:28px 20px 24px;box-shadow:0 18px 50px #2239601a}.qr-backdrop{align-items:end;padding:0}.qr-dialog{width:100%;max-width:none;padding:40px 26px calc(28px + env(safe-area-inset-bottom));border-radius:30px 30px 0 0;animation-name:sheet-in}.dialog-handle{background:#dbe3f1;border-radius:3px;width:48px;height:5px;display:block;position:absolute;top:12px;left:50%;transform:translate(-50%)}.qr-dialog img{width:min(100%,250px)}@keyframes sheet-in{0%{opacity:0;transform:translateY(28px)}}.student-app{width:100%;box-shadow:none}.library-title-row{height:96px}.library-title-row>.zhibo-logo{width:62px;height:62px}.reader-header{padding-left:12px;padding-right:12px}.reader-warning-backdrop{align-items:end;padding:0}.reader-warning-dialog{width:100%;max-width:none;padding:32px 22px calc(24px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;animation-name:sheet-in}.reader-heading span{display:none}.reader-body{padding:6px 6px 4px}.ebook-viewport{border-radius:14px;padding:21px 19px 19px}.ebook-flow{column-gap:38px}.book-section{margin-bottom:14px;font-size:23px}.book-point{margin:14px 0 9px;font-size:20px}.book-subheading{margin:11px 0 6px;font-size:17px}.book-paragraph,.book-item{margin-bottom:9px;font-size:17px;line-height:1.68}.book-term{grid-template-columns:27px minmax(82px,.72fr) minmax(0,1fr);gap:7px;padding:7px 0}.book-term>strong{font-size:15px}.book-term>em{font-size:14px}.book-note{margin:10px 0 12px;padding-left:9px;font-size:15px}.book-table-row{padding:6px 1px;font-size:14px;line-height:1.46}.reader-footer{gap:14px;padding:7px 10px 9px}.reader-footer .theme-control{right:10px}}@media (width<=390px){.home-header h1{font-size:29px}.ebook-viewport{padding:18px 16px 17px}.ebook-flow{column-gap:32px}.book-paragraph,.book-item{font-size:16.5px;line-height:1.65}.reader-footer{justify-content:flex-start;padding-left:24px}}@media (prefers-reduced-motion:reduce){.ebook-flow,.original-page .segmented-image{transition:none}.library-loading span,.loading-state span{animation:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
