html[data-platform-theme]{background:var(--p-bg);min-height:100%;color:var(--p-text)}html[data-platform-theme] :is(body,#root,.platform-app,.r2-product-shell,.r2-content-shell){background:var(--p-bg);color:var(--p-text)}html[data-platform-theme] :is(body,#root){min-height:100dvh}html[data-platform-theme] body,html[data-platform-theme] .account-page{background:var(--p-bg);color:var(--p-text)}html[data-platform-theme] .account-page .account-card{color:var(--p-text)}html[data-platform-theme] .account-page.r2-auth{background:var(--p-panel)}html[data-platform-theme] .r2-auth .account-card{justify-self:center;max-width:640px}html[data-platform-theme] .r2-auth .account-card label{color:var(--p-text);margin:0;font-size:14px}html[data-platform-theme] .account-page .account-card :is(input,textarea,select){background:var(--p-raised);color:var(--p-text);border-color:var(--p-muted);accent-color:var(--p-accent);caret-color:var(--p-accent)}html[data-platform-theme] :is(.account-page,.ops-console) :is(input,textarea)::placeholder{color:var(--p-muted);opacity:1}html[data-platform-theme] .account-page .account-card :-webkit-any(input,textarea):-webkit-autofill{-webkit-text-fill-color:var(--p-text);box-shadow:0 0 0 1000px var(--p-raised) inset;caret-color:var(--p-text)}html[data-platform-theme] .account-page .account-card :is(input,textarea):autofill{-webkit-text-fill-color:var(--p-text);box-shadow:0 0 0 1000px var(--p-raised) inset;caret-color:var(--p-text)}html[data-platform-theme] .r2-auth .account-card :is(input,button){min-height:44px}html[data-platform-theme] .r2-auth .account-card .r2-forgot-password{color:var(--p-accent);margin:-8px 0 0 auto}html[data-platform-theme] .r2-auth .account-card .account-switch{color:var(--p-accent)}html[data-platform-theme] .account-page .account-card button:not(.primary):not(:disabled):hover{background:var(--p-raised);color:var(--p-text)}html[data-platform-theme] .account-page .account-card button.primary:hover:not(:disabled){background:color-mix(in srgb,var(--p-accent) 90%,var(--p-text));color:var(--p-on)}html[data-platform-theme] :is(.account-page,.ops-console) :is(input,textarea,select,button,a,summary):focus-visible{outline:2px solid var(--p-focus);outline-offset:3px}html[data-platform-theme] .account-page .account-message{background:var(--p-raised);color:var(--p-text);border:1px solid var(--p-line);border-left:3px solid var(--p-accent)}html[data-platform-theme] .r2-auth-art{background-image:linear-gradient(#10261926 20%,#102619cc 65%,#102619fa 100%),url(/assets/mori-tea-9JIcw6Dz.png)}html[data-platform-theme] .r2-auth-art :is(p,small){color:#edf3e8}html[data-platform-theme] .r2-auth-art h1{color:#fff}html[data-platform-theme] .course-product-page .account-card{background:0 0}html[data-platform-theme] .course-product-page :is(.course-grid article,.course-lessons article){background:var(--p-panel);color:var(--p-text);border-color:var(--p-line)}html[data-platform-theme] .r2-account-management :is(.wallet-summary,.payment-qr,.roster-preview>div,.space-grid button.current){background:var(--p-raised);color:var(--p-text);border-color:var(--p-line)}html[data-platform-theme] .r2-account-management :is(dt,dd){color:var(--p-muted)}html[data-platform-theme] .r2-account-management :is(.account-columns section,.member-list>div,.payment-orders article,.institution-admin,.account-notifications article){border-color:var(--p-line)}html[data-platform-theme] .r2-account-management .roster-preview>div.invalid{color:var(--p-error);border-color:var(--p-error)}html[data-platform-theme] .ops-console{--ops-ink:var(--p-text);--ops-muted:var(--p-muted);--ops-line:var(--p-line);--ops-violet:var(--p-accent)}html[data-platform-theme] .ops-console :is(.ops-hero-badge,.ops-users-card,.ops-modal,.ops-empty,.ops-metrics article,.ops-incident){background:var(--p-panel);color:var(--p-text);border-color:var(--p-line)}html[data-platform-theme] .ops-console :is(.ops-tabs,.ops-user-table th,.ops-maintenance){background:var(--p-raised);color:var(--p-text);border-color:var(--p-line)}html[data-platform-theme] .ops-console :is(p,small,.ops-metrics span,.ops-modal label){color:var(--p-muted)}html[data-platform-theme] .ops-console :is(input,textarea,select){background:var(--p-raised);color:var(--p-text);border-color:var(--p-muted)}html[data-platform-theme] .ops-console button{background:var(--p-raised);color:var(--p-text);border-color:var(--p-line)}html[data-platform-theme] .ops-console :is(button.primary,.ops-tabs button[aria-current=true],.ops-filters button.current){background:var(--p-accent);color:var(--p-on);border-color:var(--p-accent)}html[data-platform-theme] .ops-console :is(.ops-hero-badge span,.ops-tabs b){background:var(--p-raised);color:var(--p-accent)}html[data-platform-theme] .ops-console :is(th,td){border-color:var(--p-line)}html[data-platform-theme] .ops-console a{color:var(--p-accent)}html[data-platform-theme] .ops-console .ops-modal-backdrop{z-index:200;background:#0009}html[data-platform-theme] .ops-console .ops-modal{max-height:calc(100dvh - 40px);overflow:auto}html[data-platform-theme] .ops-console .ops-metrics article.accent{border-color:var(--p-accent)}html[data-platform-theme] .ops-console .ops-metrics article.accent strong{color:var(--p-accent)}@media (width<=640px){html[data-platform-theme] .r2-auth .account-card{padding:32px 24px}}html[data-platform-theme] .product-page :is(p,dt,dd){color:var(--p-muted)}html[data-platform-theme] .product-page :is(input,textarea,select){background:var(--p-raised);color:var(--p-text);border:1px solid var(--p-muted);border-radius:8px;padding:10px 12px}html[data-platform-theme] .product-page>button{background:var(--p-raised);color:var(--p-text);border-color:var(--p-line)}html[data-platform-theme] .product-page>a:not(.primary-link){color:var(--p-accent)}html[data-platform-theme] .ops-console .ops-primary{background:var(--p-accent);color:var(--p-on);border-color:var(--p-accent)}html[data-platform-theme] .ops-console .ops-summary>div{background:var(--p-panel);border-color:var(--p-line)}html[data-platform-theme] .ops-console .ops-summary strong{color:var(--p-accent)}html[data-platform-theme] .ops-console :is(.ops-incident-heading span,.ops-incident-heading b,.ops-incident summary,.ops-actions label){color:var(--p-muted)}html[data-platform-theme] .ops-console .ops-incident pre{background:var(--p-raised);color:var(--p-text)}html[data-platform-theme] .ops-console .severity-warning{border-left-color:var(--p-warning)}html[data-platform-theme] .ops-console .severity-critical{border-left-color:var(--p-error)}html[data-platform-theme] .ops-console .ops-toast{background:var(--p-raised);color:var(--p-text);border:1px solid var(--p-line)}html[data-platform-theme] :is(.rv-page,.rv-room){--bg:var(--p-bg);--panel:var(--p-panel);--raised:var(--p-raised);--text:var(--p-text);--muted:var(--p-muted);--line:var(--p-line);--accent:var(--p-accent);--on-accent:var(--p-on)}html[data-platform-theme] :is(.rv-page,.rv-room) .rv-badge.good{color:var(--p-good);background:var(--p-raised);border-color:var(--p-good)}html[data-platform-theme] :is(.rv-page,.rv-room) .rv-badge.warn{color:var(--p-warning);background:var(--p-raised);border-color:var(--p-warning)}html[data-platform-theme] :is(.rv-page,.rv-room) .rv-note strong{color:var(--p-warning)}html[data-platform-theme] .r2-teaching-page a{color:var(--p-accent)}html[data-platform-theme] .rv-page .rv-page-head{border:0;align-items:flex-start;height:auto;min-height:0}.mishu-startup{background:var(--p-bg,var(--boot-bg,#141513));min-height:100dvh;color:var(--p-text,var(--boot-text,#f1f1e9));flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;display:flex}.mishu-startup strong{font-size:22px}.mishu-startup p{color:var(--p-muted,var(--boot-text,#b0b2a6));font-size:14px}.mishu-startup button,.mishu-navigation-error button{border:1px solid var(--p-line,#373932);background:var(--p-raised,var(--boot-bg,#272823));min-height:44px;color:var(--p-text,var(--boot-text,#f1f1e9));font:inherit;cursor:pointer;border-radius:8px;padding:8px 16px}.mishu-navigation-progress{z-index:10000;background:var(--p-accent,#d6ec94);pointer-events:none;height:3px;position:fixed;inset:0 0 auto}.mishu-navigation-error{z-index:10000;border:1px solid var(--p-line,#373932);background:var(--p-panel,#1d1e1b);width:max-content;max-width:calc(100vw - 32px);color:var(--p-text,var(--boot-text,#f1f1e9));border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;font-size:14px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0003}:root{--studio-ease:cubic-bezier(.2,.7,.2,1);--studio-fast:.16s;--studio-enter:.24s;--studio-font:Inter,"PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif}html{font-family:var(--studio-font)}.platform-app,.d1-app{font-family:var(--studio-font);-webkit-font-smoothing:antialiased}.platform-app .platform-header,.d1-app .platform-header{background:var(--p-panel);border-bottom:1px solid var(--p-line);flex:none;gap:28px;height:68px;min-height:68px;padding:0 28px}.platform-header .platform-logo{color:var(--p-accent);flex:none;align-items:center;gap:11px;text-decoration:none;display:flex}.platform-header .platform-logo .mishu-brand-mark{width:37px;height:37px;transition:transform var(--studio-enter) var(--studio-ease);flex:none}.platform-header .platform-logo:hover .mishu-brand-mark{transform:rotate(-5deg)}.platform-header .platform-logo .mishu-wordmark{width:auto;min-width:0;height:auto;color:var(--p-text);background:0 0;border-radius:0;gap:3px;line-height:1;display:grid}.platform-header .mishu-wordmark strong{letter-spacing:.13em;white-space:nowrap;font-family:PingFang SC,Noto Sans SC,sans-serif;font-size:19px;font-weight:650}.platform-header .mishu-wordmark small{letter-spacing:.2em;color:var(--p-muted);padding:0;font-size:8px;font-weight:550;line-height:1.3;display:block!important}.platform-app .platform-tabs,.d1-app .platform-tabs{flex:1;gap:4px;min-width:0}.platform-header .platform-tabs a{height:68px;color:var(--p-muted);transition:color var(--studio-fast);align-items:center;padding:0 12px;font-size:13px;font-weight:500;display:flex;position:relative}.platform-header .platform-tabs a:hover,.platform-header .platform-tabs a[aria-current=page]{color:var(--p-text)}.platform-header .platform-tabs a[aria-current=page]:after{content:"";background:var(--p-accent);border-radius:2px;height:2px;position:absolute;bottom:0;left:12px;right:12px}.platform-header .platform-actions{gap:10px}.platform-header .icon-button,.platform-header .user-button{border-radius:12px;min-height:44px}.platform-header .user-avatar{background:color-mix(in srgb,var(--p-accent) 18%,var(--p-panel));color:var(--p-accent);border:1px solid color-mix(in srgb,var(--p-accent) 35%,var(--p-line));font-size:14px}.platform-header .user-button>span:not(.user-avatar){text-overflow:ellipsis;max-width:130px;font-size:13px;overflow:hidden}.platform-app .platform-menu,.d1-app .platform-menu{border:1px solid var(--p-line);border-radius:var(--p-radius);background:var(--p-panel);box-shadow:var(--p-shadow);animation:studio-reveal var(--studio-enter) var(--studio-ease);padding:8px}.platform-menu a,.platform-menu button{border-radius:9px;min-height:44px}.platform-menu a:hover,.platform-menu button:hover{background:var(--p-raised)}.platform-app .r2-sidebar{background:var(--p-panel);border-color:var(--p-line);box-sizing:border-box;flex:0 0 224px;width:224px;padding:20px 12px}.platform-app .r2-sidebar nav a{min-height:44px;color:var(--p-muted);transition:background var(--studio-fast),color var(--studio-fast);border:1px solid #0000;border-radius:11px;margin-bottom:5px;padding:10px 13px;font-size:13px}.platform-app .r2-sidebar nav a:hover{background:var(--p-raised);color:var(--p-text)}.platform-app .r2-sidebar nav a[aria-current=page]{background:color-mix(in srgb,var(--p-accent) 9%,var(--p-panel));border-color:color-mix(in srgb,var(--p-accent) 20%,var(--p-line));color:var(--p-accent)}.platform-app .r2-space{background:var(--p-raised);border-color:var(--p-line);border-radius:12px;padding:13px}.platform-app .r2-quota{background:linear-gradient(125deg,var(--p-raised),var(--p-panel));border-color:var(--p-line);border-radius:12px}.platform-app .r2-breadcrumb{border-color:var(--p-line);height:64px;min-height:64px;font-size:12px}.platform-app .product-page{box-sizing:border-box;width:100%;max-width:1600px;margin-inline:auto;padding:30px 40px 64px}.platform-app .page-intro h1{letter-spacing:-.035em;font-size:clamp(26px,2.4vw,36px);font-weight:600}.platform-app :is(.project-card-v14,.library-project,.data-card,.settings-card,.help-grid article,.wallet-cards article){border-radius:var(--p-radius);border-color:var(--p-line);box-shadow:0 1px 0 color-mix(in srgb,var(--p-text) 3%,transparent)}.platform-app .home-hero{background:radial-gradient(ellipse at 88% 0,color-mix(in srgb,var(--p-accent) 14%,transparent),transparent 65%),var(--p-panel);border-color:var(--p-line);border-radius:calc(var(--p-radius) + 5px)}.platform-app .home-hero h1{font-family:var(--studio-font);letter-spacing:-.045em;font-weight:600}.platform-app .theme-preview{background-size:auto;position:relative;overflow:hidden}.platform-app .theme-preview:after{content:"";border:1px solid #fff5;border-radius:9px;position:absolute;inset:18px 20%;transform:rotate(-8deg);box-shadow:8px 8px #ffffff14}.platform-app .theme-preview.obsidian{background:radial-gradient(at 100% 0,#d2ebb13b,#0000 70%),#141715}.platform-app .theme-preview.porcelain{background:linear-gradient(135deg,#f5f3ee,#c8d9c6)}.platform-app .theme-preview.aurora{background:radial-gradient(at 10% 0,#c8bcff66,#0000 70%),linear-gradient(120deg,#121524,#293454)}:where(.platform-app,.d1-app) :is(button,a,summary,input,textarea,select){-webkit-tap-highlight-color:transparent}:where(.platform-app,.d1-app) :is(button,a,summary):focus-visible{outline:2px solid var(--p-focus);outline-offset:3px}:where(.platform-app,.d1-app) :is(button,summary){cursor:pointer}:where(.platform-app,.d1-app) button:disabled{cursor:not-allowed}:where(.platform-app,.d1-app) :is(button,a,summary){transition:background-color var(--studio-fast) var(--studio-ease),border-color var(--studio-fast) var(--studio-ease),color var(--studio-fast) var(--studio-ease),box-shadow var(--studio-fast) var(--studio-ease)}:where(.platform-app,.d1-app) button:not(:disabled):active{filter:brightness(.95)}@keyframes studio-reveal{0%{opacity:0;translate:0 5px}to{opacity:1;translate:0}}@media (width>=1100px){.platform-app[data-theme=aurora] .r2-content-shell{background:radial-gradient(ellipse at 100% 0,color-mix(in srgb,var(--p-secondary) 5%,transparent),transparent 45%),var(--p-bg)}}@media (width<=1100px){.platform-app .platform-header,.d1-app .platform-header{gap:16px;padding:0 18px}.platform-header .platform-tabs a{padding-inline:9px;font-size:12px}.platform-header .user-button>span:not(.user-avatar){display:none}}@media (width<=720px){.platform-app .platform-header,.d1-app .platform-header{grid-template-rows:56px 48px;grid-template-columns:1fr auto;gap:0;height:104px;min-height:104px;padding:0 16px;display:grid}.platform-header .platform-logo{grid-area:1/1}.platform-header .platform-actions{grid-area:1/2}.platform-header .platform-tabs{grid-area:2/1/auto/-1;height:48px;display:flex;overflow-x:auto}.platform-header .platform-tabs a{height:48px;padding:0 12px}.platform-header .platform-logo .mishu-brand-mark{width:32px;height:32px}.platform-header .mishu-wordmark strong{font-size:17px}.platform-app .product-page{padding:24px 18px 48px}.platform-app .r2-sidebar{display:none}.platform-app .platform-menu,.d1-app .platform-menu{max-width:calc(100vw - 24px);position:fixed;top:56px;right:12px}.platform-header .mishu-wordmark small{font-size:7px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.platform-header .platform-logo:hover .mishu-brand-mark{transform:none}}
