:root{--ink:#202535;--muted:#777e90;--blue:#087aff;--border:rgba(255,255,255,.84);--panel:rgba(255,255,255,.63);--line:rgba(74,87,125,.09);--bg:#f0f2f8;--green:#208a6b;--shadow:0 10px 35px rgba(42,56,93,.035),inset 0 1px 0 rgba(255,255,255,.95);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;font-size:14px;line-height:1.6}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-decoration:none}button{border:0}button,a,input,select{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--blue)}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1.3px;line-height:1.4;font-weight:650}h2{font-size:17px;font-weight:650;letter-spacing:-.4px}small{font-size:12px}.ambient{position:fixed;pointer-events:none;z-index:-1;filter:blur(80px);border-radius:50%;opacity:.65}.ambient-a{background:#dae3fc;width:650px;height:650px;right:-200px;top:-280px}.ambient-b{background:#f9e3d8;width:600px;height:650px;left:-200px;bottom:-430px}.glass{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);backdrop-filter:blur(32px) saturate(145%);-webkit-backdrop-filter:blur(32px) saturate(145%)}.sidebar{position:fixed;left:16px;top:16px;bottom:16px;width:224px;z-index:20;border-radius:25px;padding:28px 17px 14px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 9px;font-size:21px;font-weight:650;letter-spacing:-.5px}.brandmark{position:relative;display:grid;place-items:center;background:linear-gradient(140deg,#8bc8ff,#0077f5 75%);color:#fff;font-size:26px;letter-spacing:-2px;border-radius:16px;width:47px;height:47px;box-shadow:inset 0 1px 2px #fff9,0 5px 12px #2382e62b}.brandmark span{position:absolute;border:1px solid #fff6;inset:3px;border-radius:13px}.brand-sub{display:block;letter-spacing:.6px;font-weight:400;font-size:12px;color:var(--muted);margin-top:1px}.space-label{font-size:11px;letter-spacing:1.5px;color:#a0a5b3;margin:38px 13px 16px}.space-label span{float:right;font-size:12px;letter-spacing:0}nav{display:flex;flex-direction:column;gap:7px}nav a{display:flex;align-items:center;gap:13px;padding:12px 15px;border-radius:13px;color:#73798c;font-size:13px;transition:background .2s,color .2s}nav a.active{background:linear-gradient(100deg,#ffffffee,#f5f8ffaa);box-shadow:0 3px 12px #32456d08,inset 0 1px 1px #fff;color:var(--blue);font-weight:600}nav a:hover{background:#ffffff66}nav a .nav-dot{margin-left:auto;width:5px;height:5px;border-radius:50%;background:var(--blue)}svg.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sidebar-bottom{margin-top:auto}.support-card{position:relative;border-radius:18px;padding:54px 16px 15px;background:linear-gradient(145deg,#f0f2ff9e,#ffffff7f);border:1px solid #fff9;margin:30px 3px 20px;overflow:hidden}.support-card strong{font-size:12px}.support-card p{font-size:12px;color:var(--muted);margin-top:7px;line-height:1.8}.small-orb{position:absolute;right:19px;top:11px;width:44px;height:44px;background:radial-gradient(circle at 25% 20%,#fffb,#b9d2fc88 40%,#8496f699 70%,#e7b4eeaa);border:1px solid #fff9;border-radius:50%;box-shadow:inset 4px 3px 10px #fff9,0 8px 17px #818add30}.text-button{padding:0;background:transparent;color:var(--blue);font-size:12px}.support-card .text-button{margin-top:16px;width:100%;text-align:left;font-size:12px}.text-button span{float:right}.profile{background:transparent;display:flex;align-items:center;gap:10px;width:100%;border-top:1px solid var(--line);padding:17px 6px 0;text-align:left}.avatar{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:linear-gradient(140deg,#e4e7f8,#ced8f1);border:2px solid #fffb;color:#636f96;font-size:12px;font-weight:600}.profile strong{display:block;font-size:12px;font-weight:600}.profile small{display:block;font-size:11px;color:var(--muted)}.profile>span:last-child{margin-left:auto;color:#969bad}.main-shell{margin-left:240px;padding:0 34px 0 35px;max-width:1800px}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between}.breadcrumb{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--muted)}.breadcrumb i{font-style:normal;color:#bec3d0}.breadcrumb strong{font-weight:500;color:#555d71}.top-actions{display:flex;align-items:center;gap:13px}.preview-badge{font-size:11px;letter-spacing:1px;padding:4px 10px;border-radius:20px;border:1px solid #fff;background:#ffffff70;color:#7c83a0}.icon-button{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:50%;background:transparent;color:#7e8598}.icon-button:hover{background:#fff8}.avatar-small{width:30px;height:30px;font-size:12px}.notice-button{position:relative}.notice-button:after{content:'';position:absolute;right:7px;top:5px;background:#eb9884;border:2px solid var(--bg);width:4px;height:4px;border-radius:50%}.page-title{display:flex;align-items:center;justify-content:space-between;margin:9px 0 24px}.page-title p{font-size:12px;color:var(--muted);margin-top:6px}.date-label{font-size:12px;display:flex;align-items:center;gap:8px;color:#858ba0}.date-label .icon{width:14px}.hero{position:relative;min-height:252px;border-radius:25px;padding:35px 34px;background:linear-gradient(105deg,rgba(255,255,255,.72),rgba(224,233,255,.64) 65%,rgba(219,225,248,.76));overflow:hidden}.hero-copy{position:relative;z-index:2;max-width:60%}.eyebrow{font-size:10px;letter-spacing:2.4px;color:#8a92b2;font-weight:600}.hero h2{font-size:29px;letter-spacing:-1.4px;line-height:1.48;margin-top:14px;font-weight:600}.hero h2 em{font-style:normal;color:#3983e9}.hero p{font-size:12px;color:#8a91a6;margin-top:10px}.primary{background:linear-gradient(#3395ff,#067aff);color:white;border:1px solid #2d8fff;box-shadow:inset 0 1px 0 #ffffff4d,0 4px 8px #087aff18;border-radius:11px;padding:11px 18px;font-size:12px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:16px}.primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.hero .primary{margin-top:23px}.secondary{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:9px 13px;display:inline-flex;align-items:center;gap:8px;font-size:12px}.hero-art{position:absolute;width:365px;height:290px;right:22px;top:-12px;perspective:700px;transform:rotate(-7deg);pointer-events:none}.orb{border-radius:50%;border:1.3px solid #fff9;background:radial-gradient(circle at 28% 19%,#fff7 0,#ebf3ff66 22%,#bfd9f36b 45%,#88aff53b 62%,#99a7dc6b 78%,#e5cded91 95%);box-shadow:inset 13px 14px 25px #fff8,inset -8px -11px 25px #6488c655,0 21px 36px #6e94bd22;backdrop-filter:blur(4px)}.hero-art .orb-one{position:absolute;width:200px;height:200px;right:75px;top:35px}.hero-art .orb-two{position:absolute;width:84px;height:84px;right:12px;bottom:33px;z-index:3;background:radial-gradient(circle at 25% 20%,#fff9,#e8cff178 50%,#a5b3ec99 90%)}.glass-ring{position:absolute;right:43px;top:36px;width:265px;height:210px;border:24px solid #ffffff37;border-top-color:#fff8;border-left-color:#e9efff9c;border-radius:50%;transform:rotateX(58deg) rotateZ(-30deg);box-shadow:inset 2px 2px 5px #fff9,2px 7px 12px #8da5cf2b;z-index:2}.art-spark{position:absolute;color:#fff;font-size:21px;top:59px;right:27px}.art-caption{position:absolute;bottom:21px;left:30px;font-size:10px;letter-spacing:3px;color:#8596b1}.section-title{display:flex;justify-content:space-between;align-items:center;margin:28px 0 14px}.section-title h2{font-size:14px}.section-title>span{color:var(--muted);font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat{border-radius:18px;padding:19px 20px;position:relative;min-height:122px}.stat-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#7e8599}.stat-top>.icon{width:16px;color:#a6b4cf}.stat-number{font-size:27px;letter-spacing:-1.1px;font-weight:600;line-height:1.25;margin-top:13px;font-variant-numeric:tabular-nums}.stat-number .currency{font-size:16px;letter-spacing:0;margin-right:3px}.stat-foot{font-size:11px;color:#949bad;margin-top:8px}.stat-foot .positive{color:var(--green)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(230px,1fr);gap:17px;margin-top:19px}.panel{border-radius:20px;padding:22px}.panel-heading{display:flex;align-items:center;justify-content:space-between}.panel-heading h2{font-size:14px}.panel-heading p{color:var(--muted);font-size:11px;margin-top:4px}.segmented{display:flex;border-radius:8px;background:#dce2f54d;padding:3px;gap:3px}.segmented button{font-size:10px;color:#8d94a8;border-radius:6px;background:transparent;padding:4px 10px}.segmented button.active{background:#fff;box-shadow:0 2px 4px #60709112;color:#68728b}.chart{position:relative;height:147px;margin-top:17px;display:flex;gap:13px;padding-left:27px}.y-axis{position:absolute;left:0;top:0;bottom:20px;display:flex;flex-direction:column;justify-content:space-between;font-size:10px;color:#a9aec0}.chart-grid{position:absolute;inset:2px 0 20px 28px;display:flex;flex-direction:column;justify-content:space-between}.chart-grid i{border-top:1px dashed #b1bad330;width:100%}.chart-column{position:relative;flex:1;display:flex;align-items:center;flex-direction:column;justify-content:flex-end;z-index:1;min-width:0}.chart-bar{width:55%;max-width:29px;background:linear-gradient(#cbdcfb9c,#dce8ff99);border-radius:5px 5px 2px 2px;position:relative;min-height:3px}.chart-column:last-child .chart-bar{background:linear-gradient(#62a5ff,#1c80f2);box-shadow:0 3px 7px #137ef02b}.chart-column span{font-size:10px;color:#969eb4;margin-top:7px}.chart-tooltip{display:none;position:absolute;bottom:calc(100% + 5px);left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);white-space:nowrap;font-size:11px;border-radius:5px;padding:3px 6px}.chart-column:hover .chart-tooltip{display:block}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:21px}.quick{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:11px;border-radius:13px;background:#ffffff52;border:1px solid #fff7;font-size:11px;color:#737e95}.quick .icon{padding:8px;box-sizing:content-box;background:#ebf1ff80;border-radius:11px;color:#78a2e5;width:19px}.quick:hover{background:#fff9}.table-panel{margin-top:19px;border-radius:20px;overflow:hidden}.table-panel .panel-heading{padding:21px 23px 14px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{font-size:11px;font-weight:400;color:#8f97aa;background:#e8eef73b;padding:11px 20px}td{font-size:12px;padding:14px 20px;border-top:1px solid var(--line);color:#727c93}td.course-cell{color:var(--ink);font-weight:500}.course-icon{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:9px;border-radius:9px;background:#ecf2ff;color:#729bdd;font-size:12px}.pill{font-size:11px;display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:20px;background:#dff1e766;color:#438c6b}.pill:before{content:'';width:4px;height:4px;border-radius:50%;background:currentColor}.pill.blue{background:#e6efff;color:#6295d7}.pill.orange{background:#fff0dc;color:#bb934e}.pill.gray{background:#e6e9f0;color:#8a94a7}.table-link{color:#91a1bb;background:transparent;font-size:12px}.table-link:hover{color:var(--blue)}.table-footer{border-top:1px solid var(--line);padding:12px 21px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#929bad}.pagination{display:flex;gap:5px;align-items:center}.pagination button{font-size:12px;min-width:25px;height:25px;border:1px solid var(--border);background:var(--panel);border-radius:7px}.pagination button:disabled{opacity:.4;cursor:default}.notice-strip{display:flex;align-items:center;gap:13px;padding:15px 21px;border-radius:15px;margin:17px 0;background:#ffffff55;border:1px solid #fff9;font-size:12px;color:#8d95aa}.notice-strip .icon{width:16px;color:#84a2cd}.notice-strip strong{color:#65748e;font-weight:500}.notice-strip a{margin-left:auto;white-space:nowrap;color:#8ca4ca}footer{display:flex;gap:7px;padding:23px 0 26px;font-size:10px;color:#a1a8bb}.footer-right{margin-left:auto}dialog{border:1px solid var(--border);border-radius:22px;padding:24px;background:var(--bg);color:var(--ink);max-width:560px;width:calc(100% - 32px);box-shadow:0 35px 100px #17284633}dialog::backdrop{background:#29334540;backdrop-filter:blur(7px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-top strong{font-size:18px}.dialog-top .icon-button{font-size:25px}#dialog-body p{color:var(--muted);line-height:1.9;font-size:12px;white-space:pre-line}#toast{position:fixed;z-index:50;bottom:30px;left:50%;transform:translateX(-50%) translateY(30px);background:#263551e8;color:white;border:1px solid #ffffff50;backdrop-filter:blur(16px);padding:12px 22px;border-radius:13px;opacity:0;pointer-events:none;transition:.2s;max-width:85vw;text-align:center;font-size:12px}#toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.search{flex:1;display:flex;gap:9px;align-items:center;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:10px 14px;min-width:180px}.search .icon{width:16px;color:#9ba7bb}.search input{background:transparent;border:0;outline:none;color:var(--ink);width:100%;font-size:12px}.search input::placeholder{color:#a1a9bc}select{background:var(--panel);color:var(--ink);border:1px solid var(--border);border-radius:11px;padding:10px 13px;font-size:12px}.filters{display:flex;gap:9px;margin-bottom:22px;flex-wrap:wrap}.filter{border:1px solid transparent;background:transparent;color:var(--muted);font-size:12px;padding:7px 15px;border-radius:20px}.filter.active{background:#ffffffad;border-color:white;color:var(--blue);box-shadow:0 3px 9px #49568a09}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.course-card{border-radius:20px;overflow:hidden}.course-art{height:140px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#c7d9f366,#edf2fd);position:relative;overflow:hidden}.course-art b{font-weight:600;color:#7696bd;font-size:32px;letter-spacing:-2px;z-index:1;transform:rotate(-7deg);text-shadow:0 1px 2px white}.course-art:after{content:'';position:absolute;width:110px;height:110px;border-radius:30px;border:1px solid #fff8;background:linear-gradient(125deg,#ffffff73,#b2c9ef33);box-shadow:inset 1px 2px 8px white,8px 9px 20px #738bb026;transform:rotate(20deg)}.course-card:nth-child(3n+2) .course-art{background:linear-gradient(130deg,#ede1f2aa,#e1dbf188)}.course-card:nth-child(3n+2) .course-art b{color:#a58bba}.course-card:nth-child(3n+3) .course-art{background:linear-gradient(130deg,#d2e7e4aa,#eaf3e7)}.course-card:nth-child(3n+3) .course-art b{color:#7ea29c}.course-info{padding:20px}.course-info small{font-size:11px;color:var(--muted)}.course-info h3{font-size:15px;margin:5px 0 8px;font-weight:600}.course-info p{font-size:12px;color:var(--muted);min-height:32px}.course-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:18px;font-size:12px}.course-bottom button{border-radius:9px;background:#ffffff8c;color:var(--blue);font-size:12px;padding:7px 12px}.empty{grid-column:1/-1;text-align:center;padding:70px 25px;color:var(--muted);font-size:12px}.notices-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:20px}.notice-card{padding:26px;margin-bottom:17px;border-radius:20px}.notice-card .eyebrow{margin-bottom:10px}.notice-card h2{font-size:17px;margin-bottom:12px}.notice-card p{font-size:12px;color:var(--muted);line-height:1.9;white-space:pre-line}.notice-card small{display:block;color:#9ba3b7;margin-top:20px}.detail-list{display:grid;grid-template-columns:110px 1fr;gap:12px;font-size:12px}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;overflow-wrap:anywhere}.account-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:20px}.account-hero{text-align:center;padding:35px 25px;border-radius:22px}.account-hero .avatar{width:70px;height:70px;font-size:25px;margin:auto auto 17px}.account-hero h2{margin-bottom:7px;font-size:20px}.account-hero p{font-size:12px;color:var(--muted)}.account-hero .stat-number{margin:28px auto 5px}.account-hero .secondary{margin-top:24px}.settings-row{padding:17px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:12px;gap:20px}.settings-row:last-child{border:0}.settings-row small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.settings-row button{white-space:nowrap}.error{color:#b25757;font-size:12px;white-space:pre-line}.state-panel{border-radius:20px;padding:45px;text-align:center}.state-panel p{color:var(--muted);margin:12px 0 24px}.login-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;min-height:calc(100vh - 190px);max-width:1030px;margin:auto}.login-intro h1{font-size:49px;font-weight:600;letter-spacing:-3px;margin:20px 0}.login-intro p{font-size:13px;color:var(--muted)}.login-art{height:240px;position:relative}.login-art .orb-one{position:absolute;width:180px;height:180px;left:12px;top:32px}.login-art .orb-two{position:absolute;width:90px;height:90px;left:153px;top:128px}.art-label{position:absolute;bottom:0;font-size:11px;letter-spacing:3px;color:#9aa6bc}.login-card{padding:35px;border-radius:26px}.login-symbol{background:linear-gradient(135deg,#a4cbff,#117df1);color:white;width:49px;height:49px;border-radius:16px;display:grid;place-items:center;font-size:25px;font-weight:600;letter-spacing:-2px;box-shadow:inset 1px 1px 3px white;margin-bottom:23px}.login-card h2{font-size:24px}.login-card>p{font-size:12px;color:var(--muted);margin:8px 0 28px}.login-card label{display:block;font-size:12px;margin:17px 0;color:#68738a}.login-card input{display:block;margin-top:7px;border:1px solid #d7deec;background:#ffffff7d;width:100%;border-radius:10px;padding:12px 13px;color:var(--ink);font-size:12px}.login-submit{width:100%;margin-top:15px}.login-card>small{display:block;font-size:12px;color:var(--muted);text-align:center;margin:18px auto}.login-card>.text-button{display:block;margin:auto;font-size:12px}.skip{position:fixed;left:20px;top:-90px;z-index:100;background:white;padding:10px}.skip:focus{top:15px}.menu-toggle{display:none}.mask-button{background:transparent;color:var(--muted);padding:0;font-size:12px}.loading{animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.4}}@media(min-width:1600px){.main-shell{padding-left:50px;padding-right:50px}.hero{min-height:285px;padding:44px}.hero-art{right:80px;transform:scale(1.16) rotate(-7deg)}}@media(max-width:1150px){.sidebar{width:195px;padding-left:13px;padding-right:13px}.main-shell{margin-left:211px;padding:0 22px}.hero-art{right:-39px;opacity:.8}.stats-grid{gap:10px}.stat{padding:16px}.stat-number{font-size:24px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1.5fr 1fr}.login-layout{gap:25px}.login-intro h1{font-size:39px}.login-card{padding:25px}}@media(max-width:900px){.sidebar{width:180px}.main-shell{margin-left:196px;padding:0 18px}.brand{font-size:18px;padding:0}.brandmark{width:40px;height:40px;font-size:24px}.hero{padding:28px;min-height:245px}.hero-art{right:-85px;top:20px;transform:scale(.8);opacity:.7}.hero h2{font-size:24px}.hero-copy{max-width:76%}.hero p{max-width:220px}.stats-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:repeat(4,1fr);margin-top:15px}.quick{padding:8px}.notices-grid,.account-grid{grid-template-columns:1fr}.login-layout{grid-template-columns:1fr;max-width:430px;padding:30px 0}.login-intro{display:none}.page-title{gap:10px}.date-label{display:none}.footer-right{display:none}}@media(max-width:650px){.sidebar{left:10px;top:10px;bottom:10px;width:230px;transform:translateX(-260px);transition:transform .25s;box-shadow:20px 0 100px #293b5822;background:rgba(242,245,252,.96)}.sidebar.is-open{transform:translateX(0)}.main-shell{margin-left:0;padding:0 18px}.topbar{height:74px}.menu-toggle{display:inline-grid;width:25px;margin-left:-4px}.breadcrumb{gap:8px;font-size:12px}.top-actions{gap:6px}.preview-badge{font-size:10px;padding:3px 7px}.page-title{margin-top:7px;margin-bottom:20px}h1{font-size:27px}.page-title p{font-size:12px}.hero{padding:27px 24px;min-height:251px;border-radius:22px}.hero h2{font-size:26px}.hero p{max-width:210px;font-size:12px}.hero-art{right:-138px;top:70px;transform:scale(.7);opacity:.6}.hero-copy{max-width:85%}.hero .primary{margin-top:24px}.section-title{margin-top:24px}.stat{padding:17px}.stat-top{font-size:12px}.stat-number{font-size:26px}.stat-foot{font-size:10px}.panel{padding:20px}.chart{gap:8px}.quick-grid{gap:7px}.quick{font-size:10px}.quick .icon{width:17px;padding:6px}.table-panel .panel-heading{padding:20px}.notice-strip{font-size:11px;gap:8px;align-items:flex-start;padding:14px}.notice-strip strong{white-space:nowrap}.notice-strip>span{max-width:140px}.notice-strip a{font-size:10px}.catalog-grid{grid-template-columns:1fr 1fr;gap:11px}.course-art{height:110px}.course-art b{font-size:25px}.course-art:after{width:78px;height:78px;border-radius:22px}.course-info{padding:14px}.course-info h3{font-size:13px}.course-info p{font-size:11px}.course-bottom{font-size:12px;align-items:flex-start;gap:6px;flex-direction:column}.course-bottom button{align-self:flex-end}.toolbar{gap:8px}.filters{gap:3px}.filter{font-size:12px;padding:7px 11px}.account-grid .panel{padding:22px}.login-layout{padding-top:10px}.login-card{padding:30px 24px}.notice-card{padding:22px}.state-panel{padding:30px 18px}}html[data-theme=dark]{--ink:#e9edf9;--muted:#929db8;--border:rgba(200,218,255,.12);--panel:rgba(31,40,63,.73);--line:rgba(179,199,237,.1);--bg:#111827;--shadow:0 10px 35px #0001,inset 0 1px 0 #dce9ff0d;--green:#79ccac}html[data-theme=dark] .ambient{opacity:.11}html[data-theme=dark] .hero{background:linear-gradient(115deg,#25334b,#2e3b63)}html[data-theme=dark] nav a.active{background:#34476888;box-shadow:inset 0 1px 1px #c5d9ff0a;color:#83bcff}html[data-theme=dark] .support-card,html[data-theme=dark] .quick,html[data-theme=dark] .notice-strip{background:#859bce0b;border-color:#ffffff0c}html[data-theme=dark] .secondary,html[data-theme=dark] .preview-badge,html[data-theme=dark] .filter.active,html[data-theme=dark] .icon-button:hover,html[data-theme=dark] .course-bottom button{background:#8197c515;border-color:#ffffff12}html[data-theme=dark] .segmented button.active{background:#47577a;color:#d2ddf3}html[data-theme=dark] .search,html[data-theme=dark] .login-card input{background:#26344c;color:var(--ink);border-color:#43506a}html[data-theme=dark] .course-art{filter:brightness(.75)}html[data-theme=dark] .sidebar.is-open{background:#1e2a40}html[data-theme=dark] .pill{filter:brightness(.8)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* V0.2: agent ordering, category discovery and administration. */
#nav{flex:1;overflow-y:auto;min-height:0;padding-right:3px;scrollbar-width:thin;scrollbar-color:#bac9e060 transparent}.sidebar-bottom{margin-top:12px;flex-shrink:0}.support-card{padding:10px 12px;margin:4px 3px 10px}.support-card>strong,.support-card>p,.support-card>.small-orb{display:none}.support-card .text-button{margin-top:0;font-size:11px}.nav-group{margin:5px 0}.nav-group summary{list-style:none;font-size:11px;color:#9aa3b6;padding:8px 12px;cursor:pointer}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary span{float:right}.nav-group:not([open]) summary span{transform:rotate(-90deg)}.nav-group a{margin:3px 0;padding:10px 14px}.workspace-control{display:flex;gap:7px;align-items:center}.workspace-control>span{font-size:10px;color:var(--muted)}.workspace-control select{font-size:10px;padding:6px 9px}.workspace-control[hidden]{display:none}.rank-hero{border-radius:24px;padding:30px 35px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(120deg,#fff9,#dce8ff80)}.rank-hero h2{font-size:29px;font-weight:600;margin:12px 0;letter-spacing:-1px;line-height:1.5}.rank-hero p{font-size:12px;color:var(--muted)}.rank-hero-stat{padding:20px 35px;border-left:1px solid var(--border);display:flex;flex-direction:column;color:#8c9ab7;font-size:11px}.rank-hero-stat>strong{font-size:57px;font-weight:500;letter-spacing:-3px;color:#6389c2;line-height:1.5}.rank-hero-stat>strong small{font-size:14px;letter-spacing:0}.ai-panel{margin:20px 0 27px;padding:24px;border-radius:21px}.ai-title{display:flex;align-items:center;gap:12px}.ai-title h2{font-size:16px}.ai-title p{font-size:11px;color:var(--muted);margin-top:5px}.ai-title>.pill{margin-left:auto;white-space:nowrap}.ai-emblem{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(130deg,#d6d5ff88,#f4e8ffcc);font-size:25px;color:#7d76d0;box-shadow:inset 0 1px 0 white}.ai-panel form{display:flex;gap:10px;margin-top:20px}.ai-panel input{flex:1;min-width:0;border:1px solid var(--border);background:#ffffff70;border-radius:12px;padding:12px 15px;color:var(--ink);font-size:12px}.ai-hint{font-size:11px!important;color:var(--muted);line-height:1.8;margin-top:13px!important}.ranking-meta{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;margin:18px 0 13px}.inline-label{font-size:10px;color:#8b9bb5;background:#e5edff66;padding:3px 8px;border-radius:6px;font-weight:400}.rank-list{display:flex;flex-direction:column;gap:13px}.rank-card{padding:22px 24px;border-radius:19px;display:flex;gap:22px;align-items:center}.rank-index{align-self:flex-start;font-size:23px;color:#9ba8bd;font-weight:500;padding-top:1px;font-variant-numeric:tabular-nums;min-width:31px}.top-rank{color:#7a97c3}.rank-main{flex:1;min-width:0}.rank-name{display:flex;gap:10px;align-items:center}.rank-name h2{font-size:16px}.rank-main p{font-size:11px;color:var(--muted);margin:5px 0 14px}.rank-track{width:100%;height:5px;border-radius:8px;background:#dce6f75e;overflow:hidden}.rank-track i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#b5caff,#73a9f5)}.rank-tags{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}.rank-tags span{font-size:10px;border:1px solid #a5b8d12e;border-radius:6px;padding:2px 7px;color:#8e9db5}.rank-count{min-width:97px;text-align:right;padding:0 12px}.rank-count strong{display:block;font-size:27px;letter-spacing:-1px;font-weight:600}.rank-count small,.rank-conversion>small{display:block;font-size:10px;color:var(--muted)}.rank-count>span{display:block;font-size:11px;margin-top:8px}.rank-count>span small{display:inline;font-size:9px}.positive{color:var(--green)}.negative{color:#be786d}.rank-conversion{text-align:right;min-width:120px}.rank-conversion>strong{font-size:21px;font-weight:500}.rank-conversion>.secondary{margin-top:10px;font-size:10px;white-space:nowrap}.ai-result-head{display:flex;justify-content:space-between;gap:10px;margin-top:21px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:#7c78a1}.ai-result-head small{font-size:10px;color:var(--muted)}.ai-suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:13px}.ai-suggestions article{border:1px solid var(--border);background:#ffffff50;padding:17px;border-radius:14px}.ai-suggestions article>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.ai-suggestions strong{font-size:12px}.suggest-index{font-size:10px;color:#929bc6}.ai-suggestions p{font-size:11px;color:var(--muted);margin:12px 0;line-height:1.8}.submit-steps{display:flex;align-items:center;gap:14px;margin:20px 0 25px;color:#a0aac0;font-size:12px}.submit-steps>span.active{color:#5a8dd5}.submit-steps>i{height:1px;background:#becce054;flex:1;max-width:110px}.submit-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}.order-form{border-radius:22px;padding:28px}.order-form label{display:block;color:#77829b;font-size:12px;margin-top:24px}.order-form select,.order-form textarea{display:block;margin-top:9px;width:100%;background:#ffffff70;border:1px solid var(--border);border-radius:11px;padding:12px;color:var(--ink);font:inherit}.order-form textarea{resize:vertical}.form-notice{display:flex;gap:11px;background:#dbe7f54d;padding:14px;border-radius:11px;margin:24px 0 20px}.form-notice .icon{color:#91a8c7;width:18px}.form-notice p{font-size:11px;color:var(--muted);line-height:1.8}.help-copy{font-size:12px;line-height:1.9;color:var(--muted);margin-top:13px}.submit-tip{margin-top:18px}.admin-context{display:flex;justify-content:space-between;align-items:center;margin:5px 0 22px;color:#8d9aba;font-size:11px}.admin-context>span{display:flex;align-items:center;gap:8px}.admin-context .icon{width:16px}.admin-context>a{color:#89a2c5}.admin-feature{border-radius:23px;margin:22px 0;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:35px;background:linear-gradient(115deg,#fff8,#dce7ff6e)}.admin-feature h2{font-size:25px;margin:15px 0 10px;line-height:1.6;max-width:460px}.admin-feature p{color:var(--muted);font-size:12px}.admin-feature .primary{margin-top:24px}.admin-mini-chart{height:140px;min-width:180px;display:flex;align-items:flex-end;gap:12px;padding-right:25px;transform:rotate(-7deg)}.admin-mini-chart i{width:25px;border-radius:8px 8px 3px 3px;height:45%;background:linear-gradient(#cadbfa,#a6c4f2);box-shadow:inset 1px 1px 3px #fff7,0 4px 8px #7c96c31a}.admin-mini-chart i:nth-child(2){height:65%}.admin-mini-chart i:nth-child(3){height:52%}.admin-mini-chart i:nth-child(4){height:85%}.admin-mini-chart i:nth-child(5){height:100%;background:linear-gradient(#b4d8ff,#5ba0ee)}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.admin-entry>.icon{width:22px;height:22px;color:#8ba4cc;margin-bottom:16px}.admin-entry h2{font-size:16px}.admin-entry p{font-size:12px;color:var(--muted);margin:12px 0 22px}.admin-entry>span{font-size:11px;color:#8da4c6}html[data-theme=dark] .rank-hero,html[data-theme=dark] .admin-feature{background:linear-gradient(120deg,#283750,#2e395d)}html[data-theme=dark] .ai-panel input,html[data-theme=dark] .order-form select,html[data-theme=dark] .order-form textarea,html[data-theme=dark] .ai-suggestions article{background:#33425a55}html[data-theme=dark] .ai-emblem{background:linear-gradient(130deg,#6c66a855,#bca2f82b);box-shadow:inset 0 1px 0 #fff2;color:#b4a8f6}@media(max-width:1100px){.rank-card{gap:12px;padding:20px}.rank-count{min-width:85px;padding:0}.rank-conversion{min-width:108px}.rank-index{font-size:19px;min-width:23px}.ai-suggestions{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr}.admin-mini-chart{min-width:120px;gap:7px;padding-right:0}.admin-feature h2{font-size:22px}.workspace-control>span{display:none}}@media(max-width:800px){.submit-grid{grid-template-columns:1fr}.rank-card{flex-wrap:wrap}.rank-main{min-width:65%}.rank-count{margin-left:35px;text-align:left}.rank-conversion{margin-left:auto;text-align:right}.rank-hero{padding:25px}.rank-hero-stat{padding:15px 0 15px 22px}.rank-hero h2{font-size:25px}.ai-title{flex-wrap:wrap}.ai-title>.pill{margin-left:54px}.ai-title p{max-width:260px}.rank-name{flex-wrap:wrap}.admin-feature{padding:25px}.admin-mini-chart{display:none}}@media(max-width:650px){.topbar .preview-badge{display:none}.workspace-control select{max-width:118px;font-size:10px}.top-actions{gap:2px}.rank-hero p{max-width:200px;font-size:11px}.rank-hero-stat>strong{font-size:43px}.rank-hero-stat{font-size:9px}.ai-panel{padding:20px}.ai-panel form{flex-direction:column}.ai-panel .primary{align-self:flex-end}.ranking-meta{gap:10px;font-size:10px}.ranking-meta button{font-size:10px;white-space:nowrap}.rank-count strong{font-size:25px}.submit-steps{font-size:10px;gap:6px}.order-form{padding:22px}.submit-grid{gap:16px}.ai-result-head{flex-direction:column}.rank-hero-stat>span:first-child{max-width:70px}}
/* V0.3 upstream catalog, transient course lookup and server synchronization. */
.order-form input:not([type=checkbox]),.order-form textarea{display:block;width:100%;margin-top:9px;border:1px solid var(--border);background:#ffffff70;color:var(--ink);border-radius:11px;padding:12px;font-size:12px}.project-search{display:flex;gap:9px;align-items:center;margin-top:18px}.project-search input{margin-top:0!important;flex:1;min-width:0}.project-description{padding:17px;border-radius:13px;background:#e4ecfa50;margin-top:18px;max-height:235px;overflow:auto}.project-description strong{font-size:12px}.project-description p{font-size:11px;white-space:pre-line;color:var(--muted);line-height:1.9;margin-top:10px}.queried-header{margin:26px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.queried-header h2{font-size:14px}.queried-header small{font-size:10px;color:var(--muted)}.queried-list{max-height:320px;overflow:auto;border:1px solid var(--border);border-radius:13px;padding:4px 16px;margin-bottom:17px}.queried-list label{display:flex;gap:11px;align-items:center;margin:0;padding:13px 0;border-bottom:1px solid var(--line);color:var(--ink);font-size:12px}.queried-list label:last-child{border:0}.queried-list input{accent-color:var(--blue);width:16px;height:16px}.sync-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0}.sync-grid h2{font-size:16px;margin-top:12px}.sync-grid .secondary{margin-top:18px}.readiness-row{display:flex;justify-content:space-between;gap:15px;font-size:11px;margin:18px 0;color:var(--muted)}.readiness-row strong{font-weight:500;color:var(--ink)}.inline-admin-form{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.inline-admin-form input{flex:1;min-width:140px;padding:11px 12px;background:var(--panel);border:1px solid var(--border);border-radius:10px;color:var(--ink);font-size:12px}html[data-theme=dark] .order-form input:not([type=checkbox]){background:#33425a55}@media(max-width:1100px){.sync-grid{grid-template-columns:1fr}.queried-header{align-items:flex-start;flex-direction:column}}@media(max-width:650px){.project-search{gap:7px}.project-search .secondary{font-size:10px;padding:10px 12px}.inline-admin-form{flex-direction:column}.inline-admin-form input{width:100%}}
/* Canonical course categories, independent of upstream source groups. */
.group-picker{border-radius:23px;padding:27px;margin:24px 0}.group-picker-head{display:flex;align-items:center;justify-content:space-between;gap:24px}.group-picker h2{font-size:23px;font-weight:600;margin:7px 0}.group-picker p{font-size:11px;color:var(--muted)}.group-controls{display:flex;gap:10px;flex-shrink:0}.group-controls label{font-size:10px;color:var(--muted)}.group-controls select{display:block;margin-top:6px;border:1px solid var(--border);border-radius:10px;padding:9px;background:#ffffff75;color:var(--ink)}.group-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:22px}.group-tile{position:relative;text-align:left;display:flex;flex-direction:column;gap:9px;border:1px solid var(--border);background:#ffffff45;border-radius:15px;padding:17px 15px;transition:background .18s,border .18s,transform .18s;min-width:0}.group-tile:hover:not(:disabled){transform:translateY(-2px);background:#ffffff85}.group-tile.active{border-color:#72aaf5;background:linear-gradient(130deg,#eaf3ffb3,#ffffffbb);box-shadow:0 3px 12px #5a95e318}.group-tile strong{font-size:13px;font-weight:600;line-height:1.7}.group-tile small{font-size:10px;color:var(--muted)}.group-tile:disabled{cursor:default;opacity:.55}.group-symbol{width:29px;height:29px;border-radius:10px;display:grid;place-items:center;background:#dceaff9e;color:#6a94ca;font-size:13px}.group-tile em{font-size:9px;font-weight:400;font-style:normal;padding:2px 5px;margin-left:5px;border-radius:4px;color:#4f89cf;background:#dceaff99;white-space:nowrap}.group-hot{position:absolute;right:11px;top:12px;font-size:9px;color:#4e89c8;background:#dcecff99;border-radius:5px;padding:2px 5px}.source-filter{margin-top:22px;font-size:11px;color:var(--muted)}.source-filter summary{cursor:pointer}.source-filter label{margin-top:10px}.group-default-form{display:flex;align-items:center;gap:12px;margin:18px 0}.group-default-form label{font-size:12px;color:var(--muted)}.group-default-form select,.inline-admin-form select{font:inherit;min-width:0;border:1px solid var(--border);border-radius:10px;padding:11px;background:#ffffff70;color:var(--ink)}html[data-theme=dark] .group-tile,html[data-theme=dark] .group-controls select,html[data-theme=dark] .group-default-form select,html[data-theme=dark] .inline-admin-form select{background:#33425a66}html[data-theme=dark] .group-tile.active{border-color:#6a9edd;background:linear-gradient(130deg,#334f78cc,#35456399)}html[data-theme=dark] .group-tile:hover:not(:disabled){background:#3c527366}html[data-theme=dark] .group-symbol{background:#42618e66;color:#afccf5}@media(max-width:1100px){.group-picker-head{align-items:flex-start;flex-direction:column;gap:16px}.group-controls{width:100%}.group-controls label{flex:1}.group-controls select{width:100%}}@media(max-width:650px){.group-picker{padding:20px}.group-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.group-tile{padding:14px}.group-default-form{align-items:stretch;flex-direction:column}.group-picker h2{font-size:21px}}
/* Unified app marks and operating dashboard. */
.brand-image{position:relative;display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid #ffffffb0;border-radius:11px;flex:0 0 38px;overflow:hidden;background:linear-gradient(145deg,#e1edff,#cbdff9);color:#4876b5;box-shadow:0 2px 7px #45688b0d;vertical-align:middle}.brand-image b{font-size:18px;font-weight:600}.brand-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff}.brand-image[data-brand=zhihuishu]{background:#fff0dc;color:#cc793d}.brand-image[data-brand=icve]{background:#e4f1ea;color:#2c9b70}.brand-image[data-brand=ucampus]{background:#eae6ff;color:#7162ca}.brand-image[data-brand=qingshu]{background:#dbf5ee;color:#1a9c8a}.brand-name{display:flex;align-items:center;gap:10px;white-space:nowrap}.course-cell .brand-image{width:26px;height:26px;flex-basis:26px;margin-right:8px;border-radius:7px}.course-cell .brand-image b{font-size:13px}.personal-panel,.profit-hero{border-radius:24px;padding:27px;margin:22px 0}.personal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:21px}.personal-card{display:flex;align-items:center;gap:11px;padding:18px 14px;border:1px solid var(--border);background:#ffffff4d;border-radius:15px;text-align:left;min-width:0;transition:transform .18s,background .18s}.personal-card:hover{transform:translateY(-2px);background:#ffffff8c}.personal-card span:not(.brand-image){min-width:0}.personal-card strong{font-size:13px;display:block}.personal-card small{display:block;color:var(--muted);font-size:10px;margin-top:5px;line-height:1.5}.personal-card i{font-style:normal;color:#8aafda;margin-left:auto}.profit-hero{background:linear-gradient(115deg,#ffffffb8,#e1ecffae 65%,#e9e4fbb0);padding:30px 32px}.profit-hero h2{font-size:21px;margin-top:9px}.profit-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;margin-top:25px;align-items:center}.muted{color:var(--muted);font-size:12px}.profit-total{display:block;font-size:48px;letter-spacing:-2px;line-height:1.4;font-variant-numeric:tabular-nums;font-weight:600;margin:8px 0 18px;color:#267bd7}.profit-metrics{display:flex;gap:22px;flex-wrap:wrap}.profit-metrics span{font-size:10px;color:var(--muted)}.profit-metrics b{display:block;font-size:13px;color:var(--ink);font-weight:500;margin-top:5px}.profit-bars{display:flex;gap:12px;align-items:flex-end;height:140px;padding:0 14px}.profit-bars>div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.profit-bars i{display:block;width:85%;max-width:32px;border-radius:7px 7px 3px 3px;background:linear-gradient(#95c5ff8f,#a2bff078)}.profit-bars>div:last-child i{background:linear-gradient(#57a8ff,#267fed);box-shadow:0 4px 10px #267fed22}.profit-bars small{font-size:9px;color:var(--muted);margin-top:10px}.profit-hero .ai-hint{margin-top:22px;font-size:10px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:20px}.form-grid label{font-size:12px;color:var(--muted)}.form-grid input:not([type=checkbox]),.form-grid select,.form-grid textarea{display:block;min-width:0;width:100%;margin-top:8px;padding:12px;border-radius:10px;background:var(--panel);border:1px solid var(--border);color:var(--ink);font:inherit}.form-grid small{font-size:10px;display:block;margin-top:5px}.form-grid fieldset{border:1px solid var(--border);border-radius:12px;padding:14px}.check-label{display:flex;align-items:center;gap:10px}.form-grid .primary{align-self:end}.task-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.task-switches label{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);padding:18px;border-radius:13px;background:#ffffff3d}.task-switches small{display:block;font-size:10px;color:var(--muted);margin-top:4px}input[role=switch]{appearance:none;width:37px;height:22px;border:1px solid #ccd2df;border-radius:20px;position:relative;background:#ccd2df;cursor:pointer;flex-shrink:0}input[role=switch]:after{content:'';position:absolute;width:16px;height:16px;border-radius:50%;left:2px;top:2px;background:#fff;box-shadow:0 1px 3px #0002;transition:transform .15s}input[role=switch]:checked{background:var(--blue);border-color:var(--blue)}input[role=switch]:checked:after{transform:translateX(15px)}.queue-summary,.inline-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.table-sub{display:block;font-size:10px;color:var(--muted);margin-top:4px}.price-positive{color:#2685d4;font-variant-numeric:tabular-nums}.price-cost{color:#a177bf;font-variant-numeric:tabular-nums}.recharge-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.recharge-record{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 0;border-bottom:1px solid var(--line)}.recharge-record small{display:block;color:var(--muted);font-size:10px}.recharge-record strong{font-size:17px}.sidebar nav{overflow:auto;min-height:0}.sidebar .sidebar-bottom{flex-shrink:0}html[data-theme=dark] .profit-hero{background:linear-gradient(115deg,#263951db,#2b4165bb,#373b5cbb)}html[data-theme=dark] .personal-card,html[data-theme=dark] .task-switches label{background:#33425a55}html[data-theme=dark] .profit-total{color:#83b9fa}.panel+.panel,.panel+.table-panel{margin-top:20px}@media(max-width:1200px){.personal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.profit-layout,.recharge-grid{grid-template-columns:1fr}.profit-bars{height:115px;padding:0}.profit-total{font-size:40px}.profit-hero{padding:24px}.form-grid,.task-switches{grid-template-columns:1fr}.personal-panel{padding:22px}.panel-heading{gap:10px;flex-wrap:wrap}}@media(max-width:480px){.personal-grid{grid-template-columns:1fr}.profit-metrics{gap:15px}.profit-hero h2{font-size:18px}.profit-total{font-size:36px}}

.account-role{display:inline-flex;align-items:center;padding:5px 11px;border-radius:20px;font-size:11px;color:var(--muted);background:var(--panel);border:1px solid var(--border);white-space:nowrap}.account-role.is-admin{color:var(--blue);background:#e6f1ff88}html[data-theme=dark] .account-role.is-admin{background:#34507566;color:#a5caff}

/* Home order workspace: dense, readable desktop table with local horizontal scroll. */
.order-desk{margin-top:24px;overflow:hidden}.order-desk .toolbar{padding:0 24px;margin:0 0 16px;flex-wrap:wrap}.order-desk-filter select{max-width:210px}.order-desk .panel-heading p{margin:7px 0 0;color:var(--muted);font-size:13px}.order-batch-actions{padding:0 24px 18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.order-batch-actions>span{font-size:12px;color:var(--muted)}.order-table table{min-width:1440px}.order-table td{font-size:12px;vertical-align:middle}.order-table small{display:block;color:var(--muted);font-size:11px;margin-top:5px;white-space:normal}.order-table input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px}.order-course{min-width:160px;max-width:230px;white-space:normal}.order-progress-detail{min-width:190px;max-width:280px;white-space:normal;overflow-wrap:anywhere;line-height:1.6}.order-row-actions{display:grid;gap:7px;white-space:nowrap}.order-row-actions button:disabled{opacity:.4;cursor:not-allowed}.order-progress{min-width:100px;max-width:155px;font-size:11px}.order-progress-track{height:8px;border-radius:9px;background:rgba(120,135,160,.15);overflow:hidden;margin-bottom:5px}.order-progress-track i{display:block;height:100%;border-radius:9px;background:#45b87c}.order-detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 16px}.order-log-title{margin-top:26px}.order-timeline{list-style:none;padding:0;border-left:2px solid rgba(100,130,190,.2);margin:20px 0}.order-timeline li{padding:0 0 18px 15px;font-size:13px;overflow-wrap:anywhere}.order-timeline time{font-size:11px;color:var(--muted)}.order-timeline p{white-space:pre-wrap;line-height:1.7}.order-category-editor h3{margin:24px 0 14px}.order-category-editor .order-form{padding:0}.detail-list dd{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:700px){.order-desk .panel-heading{flex-wrap:wrap;gap:12px}.order-desk .toolbar{padding:0 16px;display:flex}.order-desk .toolbar label{flex-basis:100%}.order-desk-filter select{max-width:100%;min-width:130px;flex:1}.order-batch-actions{padding:0 16px 16px}.order-detail-actions .primary,.order-detail-actions .secondary{font-size:12px}}
.product-selection{margin:20px 0;padding-bottom:20px}.product-selection .panel-heading{gap:18px}.product-selection .panel-heading p{font-size:12px;color:var(--muted);margin-top:8px}.product-selection>.ai-hint{padding:0 24px}.product-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 24px 18px}.product-choice{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:10px;padding:18px;border:1px solid rgba(120,140,180,.2);border-radius:14px;background:rgba(255,255,255,.4);color:inherit;cursor:pointer;transition:border-color .2s,transform .2s}.product-choice:hover{transform:translateY(-2px);border-color:#5889df}.product-choice.selected{border-color:#4c80db;box-shadow:0 0 0 2px rgba(76,128,219,.1)}.product-choice-name{font-weight:650;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.product-choice small{color:var(--muted);font-size:12px}.product-choice-cta{font-size:12px;color:#437bd2;margin-top:auto}.product-badges{display:flex;gap:5px;flex-wrap:wrap}.product-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;font-size:11px;font-weight:600;border-radius:6px;line-height:1.2}.product-badge svg{width:12px;height:12px}.badge-quality{background:#e7f5ec;color:#287049}.badge-personal{background:#e9efff;color:#4a67ab}.badge-hot{background:#fff1dd;color:#9c641e}.course-cell>small{display:block;font-size:11px;color:var(--muted);margin:5px 0}.course-cell .product-badges{margin-top:6px}[data-theme=dark] .product-choice{background:rgba(30,40,65,.4)}@media(max-width:950px){.product-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.product-choice-grid{grid-template-columns:1fr;padding:0 16px 15px}.product-selection .panel-heading{flex-wrap:wrap}}
.guess-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 24px 12px}.guess-product{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:10px;padding:16px;border:1px solid rgba(125,145,180,.18);border-radius:12px;background:transparent;color:inherit;cursor:pointer}.guess-product:hover{border-color:#6d90cc}.guess-product strong{font-size:13px;line-height:1.6}.guess-product small{color:var(--muted);font-size:12px}.guess-product>span:last-child{font-size:12px;color:#4b79bf}.guess-all{display:inline-block;margin:4px 24px 22px}@media(max-width:600px){.guess-product-grid{grid-template-columns:1fr;margin:16px}}
.is-hidden{display:none!important}.site-logo{width:100%;height:100%;object-fit:contain;border-radius:12px}#site-brand-name{font:inherit}#basic-settings-form details{border-bottom:1px solid rgba(120,140,180,.14);padding:15px 0}#basic-settings-form summary{cursor:pointer;font-weight:600;margin-bottom:15px}.mobile-site-info{display:none}.mobile-banner-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px}.mobile-banner-track img{width:100%;max-height:220px;object-fit:cover;scroll-snap-align:start;border-radius:14px;flex:none}@media(max-width:700px){.mobile-site-info{display:block;margin:16px 0}}#source-registry-list small{display:block;color:var(--muted);font-size:11px;margin-top:6px}
.product-cover{width:100%;height:100px;object-fit:cover;border-radius:10px}

/* V0.7.1 · iOS-inspired web materials. Strong blur belongs to navigation and sheets. */
:root {
  --ink:#1d2738; --muted:#536176; --blue:#075dcc; --accent:var(--blue);
  --bg:#eef2f8; --panel:#fbfcfe; --border:rgba(113,133,165,.20);
  --line:rgba(76,96,126,.14); --green:#186e51;
  --glass-fill:rgba(247,250,255,.82); --glass-edge:rgba(255,255,255,.90);
  --control:#f0f4fa; --selected:#e5eefb; --opaque:#f6f8fc;
  --shadow:0 8px 28px rgba(35,56,91,.055),inset 0 1px 0 rgba(255,255,255,.75);
  -webkit-font-smoothing:antialiased;
}
html[data-theme=dark] {
  --ink:#edf2fb; --muted:#b6c3d8; --blue:#91c2ff; --accent:var(--blue);
  --bg:#111824; --panel:#1c2635; --border:rgba(182,201,230,.20);
  --line:rgba(182,201,230,.15); --green:#89ddba;
  --glass-fill:rgba(28,39,56,.88); --glass-edge:rgba(208,224,250,.22);
  --control:#263347; --selected:#2c405c; --opaque:#1c2738;
  --shadow:0 8px 28px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.06);
}
body {background:radial-gradient(ellipse at 85% 0%,rgba(151,184,242,.18),transparent 58%),var(--bg)}
.ambient {filter:none;opacity:.18;background:radial-gradient(ellipse,#bbcffe,transparent 70%)}
.ambient-b {background:radial-gradient(ellipse,#d6cbec,transparent 70%)}
.glass {background:var(--panel);border-color:var(--border);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:var(--shadow)}
.sidebar,.topbar,dialog,.mobile-dock {
  background:var(--glass-fill);border:1px solid var(--glass-edge);
  backdrop-filter:blur(24px) saturate(135%);-webkit-backdrop-filter:blur(24px) saturate(135%);
  box-shadow:0 12px 36px rgba(30,52,90,.075),inset 0 1px 0 rgba(255,255,255,.18);
}
.sidebar {border-radius:28px}
.topbar {position:sticky;top:12px;z-index:15;height:64px;margin:12px 0 28px;padding:0 19px;border-radius:22px}
.breadcrumb strong,.icon-button,.profile>span:last-child {color:var(--ink)}
.breadcrumb,.date-label,.preview-badge,.account-role,.space-label,.nav-group summary {color:var(--muted)}
nav a {color:var(--muted);min-height:44px;font-size:13px;transition:background .16s,color .16s}
nav a.active,html[data-theme=dark] nav a.active {color:var(--blue);background:var(--selected);box-shadow:inset 0 1px 0 rgba(255,255,255,.28)}
nav a:hover {background:var(--control)}
nav a:active,.icon-button:active,.secondary:active {background:var(--selected)}
.brand-sub,.support-card p,.profile small,.stat-top,.stat-foot,.hero p,.eyebrow,.chart-column span,.y-axis,.chart-column small,
.panel-heading p,.section-title>span,.table-footer,.table-sub,.course-cell>small,.table-link,.notice-strip,.notice-strip strong,.notice-strip a,
.quick,.segmented button,.rank-description,.ai-hint,footer {color:var(--muted)}
.stat-top>.icon {color:var(--muted)}
.stat-number,.profit-total {font-variant-numeric:tabular-nums;letter-spacing:-.035em}
.stat-number {font-size:30px}.stat-foot {font-size:12px}
h1 {letter-spacing:-.04em}h2 {letter-spacing:-.02em}
.hero,.profit-hero {background:linear-gradient(115deg,var(--panel),#e6eefb);border-radius:26px}
html[data-theme=dark] .hero,html[data-theme=dark] .profit-hero {background:linear-gradient(115deg,#1c293c,#283a56)}
.hero-copy p {max-width:32em}.orb {backdrop-filter:none;-webkit-backdrop-filter:none}
.primary {background:#075dcc;border-color:#075dcc;color:#fff;border-radius:14px;min-height:44px;font-size:13px;font-weight:600;transition:filter .16s,transform .16s}
.primary:active {transform:scale(.98);filter:brightness(.95)}
.secondary {background:var(--control);border-color:var(--border);border-radius:13px;min-height:40px;font-size:13px;justify-content:center}
.icon-button {width:40px;height:40px}.avatar-small {width:36px;height:36px}
.text-button,.table-link,.course-bottom button {min-height:32px;display:inline-flex;align-items:center}
.quick,.personal-card,.product-choice,.guess-product {background:var(--panel);border-color:var(--border);border-radius:17px}
html[data-theme=dark] .quick,html[data-theme=dark] .personal-card,html[data-theme=dark] .product-choice {background:var(--panel)}
.quick:hover,.personal-card:hover,.product-choice:hover,.guess-product:hover {background:var(--control)}
.product-choice.selected {background:var(--selected);border-color:var(--blue)}
.product-choice-cta,.guess-product>span:last-child,.price-positive,.profit-total {color:var(--blue)}
.price-cost {color:#785094}html[data-theme=dark] .price-cost {color:#dab5f2}
.segmented {background:var(--control);border:1px solid var(--border);border-radius:12px}
.segmented button {min-height:32px;font-size:12px;border-radius:9px}
.segmented button.active,html[data-theme=dark] .segmented button.active {background:var(--panel);color:var(--ink);box-shadow:0 2px 5px #0001}
.panel,.table-panel {border-radius:22px}
.table-wrap {max-width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
th {background:var(--control);color:var(--muted);font-size:12px;font-weight:600}
td {color:var(--ink);font-size:13px}.table-wrap tr:hover td {background:var(--control)}
.pill {background:#e6f3ec;color:#246245}.pill.blue {background:#e5efff;color:#205d9c}
.pill.orange {background:#fff0da;color:#82521b}.pill.gray {background:#e9edf3;color:#4d596b}
html[data-theme=dark] .pill {filter:none;background:#244538;color:#b8ecd1}
html[data-theme=dark] .pill.blue {background:#253f60;color:#c2dfff}
html[data-theme=dark] .pill.orange {background:#493b28;color:#ffdfac}
html[data-theme=dark] .pill.gray {background:#343f50;color:#d6dfec}
html[data-theme=dark] .badge-quality {background:#244538;color:#b8ecd1}
html[data-theme=dark] .badge-personal {background:#2d3c60;color:#d3ddff}
html[data-theme=dark] .badge-hot {background:#493b28;color:#ffdfac}
html[data-theme=dark] .account-role.is-admin {background:var(--selected);color:var(--blue)}
.order-form input:not([type=checkbox]),.order-form textarea,.form-grid input:not([type=checkbox]),.form-grid select,.form-grid textarea,
.login-card input,.toolbar select,.project-search select,.search {background:var(--control);color:var(--ink);border-color:var(--border);border-radius:12px}
input::placeholder,textarea::placeholder {color:var(--muted);opacity:1}
input,select,textarea {accent-color:var(--blue)}
input[role=switch] {width:46px;height:28px;background:#637083;border-color:#637083}
input[role=switch]:after {width:22px;height:22px;left:2px;top:2px}
input[role=switch]:checked {background:#18764d;border-color:#18764d}
input[role=switch]:checked:after {transform:translateX(18px)}
dialog {border-radius:28px;max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain}
dialog::backdrop {background:rgba(14,25,44,.34);backdrop-filter:none;-webkit-backdrop-filter:none}
.dialog-top {position:sticky;top:-24px;background:var(--glass-fill);padding:8px 0;z-index:2}
#dialog-body p {color:var(--muted);font-size:14px}
#toast {bottom:calc(24px + env(safe-area-inset-bottom));background:var(--ink);color:var(--bg);backdrop-filter:none}
.mobile-dock {display:none}
button:disabled {cursor:not-allowed}
:where(a,button,input,select,textarea,summary):focus-visible {outline:3px solid var(--blue);outline-offset:3px}
:where(.panel,.table-panel,.stat,.page-title,.toolbar,.form-grid>*,.main-shell) {min-width:0}
@media(max-width:650px) {
  body {font-size:15px}
  .main-shell {padding:0 max(16px,env(safe-area-inset-right)) 94px max(16px,env(safe-area-inset-left))}
  .topbar {top:calc(8px + env(safe-area-inset-top));margin-top:calc(8px + env(safe-area-inset-top));margin-bottom:24px;padding:0 10px;height:60px;border-radius:21px;gap:6px}
  .top-actions {gap:0}.top-actions .account-role {font-size:11px;padding:4px 7px}
  .breadcrumb {gap:5px;min-width:0}.breadcrumb>span,.breadcrumb>i {display:none}.breadcrumb strong {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:115px}
  .icon-button,.menu-toggle,.avatar-small {min-width:44px;width:44px;height:44px;min-height:44px}
  .menu-toggle {margin-left:0}
  .sidebar {top:calc(8px + env(safe-area-inset-top));bottom:calc(8px + env(safe-area-inset-bottom));left:max(8px,env(safe-area-inset-left));width:min(290px,calc(100vw - 32px));padding:22px 16px 14px;transform:translateX(calc(-100% - 32px));visibility:hidden;background:var(--glass-fill);transition:transform .22s,visibility .22s;z-index:40}
  .sidebar.is-open {transform:translateX(0);visibility:visible;background:var(--glass-fill)}
  html[data-theme=dark] .sidebar.is-open {background:var(--glass-fill)}
  #nav a {font-size:14px;min-height:46px}.nav-group summary {min-height:44px;display:flex;align-items:center;justify-content:space-between}
  .mobile-dock:not([hidden]) {position:fixed;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px;left:max(14px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right));bottom:calc(9px + env(safe-area-inset-bottom));z-index:25;border-radius:26px}
  .mobile-dock a {display:flex;flex-direction:column;justify-content:center;gap:2px;padding:6px 4px;min-height:54px;border-radius:19px;font-size:11px;font-weight:600;color:var(--muted)}
  .mobile-dock a.active {color:var(--blue);background:var(--selected)}.mobile-dock .icon {width:21px;height:21px}
  .mobile-dock a .nav-dot {display:none}
  h1 {font-size:28px}.hero h2 {font-size:26px}.page-title {flex-wrap:wrap;align-items:flex-start}
  .hero {padding:25px 23px;min-height:230px}.hero-art {opacity:.38}.hero-copy {max-width:95%}
  .stats-grid {gap:10px}.stat {padding:17px 15px}.stat-top {font-size:13px}.stat-number {font-size:28px}
  .panel-heading h2,.section-title h2 {font-size:15px}
  .page-title p,.hero p,.panel-heading p,.personal-card small,.guess-product small {font-size:13px}
  .panel-heading,.table-footer {gap:10px;flex-wrap:wrap}
  .primary,.secondary,.text-button,.table-link,.pagination button,.filter,.segmented button {min-height:44px}
  .pagination button {min-width:44px;font-size:14px}.pagination {flex-wrap:wrap}
  .order-row-actions button {min-width:44px;min-height:44px}
  input:not([type=checkbox]):not([type=radio]),select,textarea {font-size:16px!important;min-height:44px}
  .search {min-height:46px;min-width:0}.search input {min-width:0}
  .toolbar {gap:10px}.toolbar>* {max-width:100%}.toolbar select {flex:1;min-width:120px}
  .form-grid {gap:18px}.form-grid label,.order-form label {font-size:14px}
  input[type=checkbox]:not([role=switch]) {width:22px;height:22px;margin:11px;vertical-align:middle;flex-shrink:0}
  dialog {width:calc(100% - 16px);max-width:none;margin:auto 8px max(8px,env(safe-area-inset-bottom));max-height:calc(100dvh - env(safe-area-inset-top) - 24px);padding:22px;border-radius:28px}
  .dialog-top {top:-22px}.dialog-top strong {font-size:18px}
  #toast {bottom:calc(91px + env(safe-area-inset-bottom));font-size:14px}
  .login-layout {min-height:calc(100dvh - 200px)}
  footer {font-size:12px;padding-bottom:24px}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .sidebar,.topbar,dialog,.mobile-dock {background:var(--opaque)}
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) {
  .sidebar,.topbar,dialog,.mobile-dock {background:var(--opaque);backdrop-filter:none;-webkit-backdrop-filter:none;border-color:var(--muted)}
  .ambient,.hero-art {display:none}.hero,.profit-hero {background:var(--panel)}
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .primary:hover,.primary:active,.product-choice:hover,.personal-card:hover {transform:none}
}
html[data-transparency=reduced] :is(.sidebar,.topbar,dialog,.mobile-dock) {
  background:var(--opaque);backdrop-filter:none;-webkit-backdrop-filter:none;border-color:var(--border);
}
html[data-transparency=reduced] .ambient {display:none}
/* V0.7.2: feedback must remain in the dialog's top layer. */
.form-feedback {white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.7;color:var(--ink);margin:16px 0;padding:12px 14px;background:var(--control);border:1px solid var(--border);border-radius:12px}
.form-feedback:empty {display:none}.form-feedback.is-error {color:#9e2727;border-color:#bd555566;background:#fff0f0}
html[data-theme=dark] .form-feedback.is-error {color:#ffc5c5;background:#482d35}
dialog>#toast {position:sticky;left:auto;bottom:0;transform:none;max-width:100%;margin:12px 0 0;display:none;z-index:2}
dialog>#toast.visible {display:block;transform:none}

/* V0.7.4 · Orders: semantic states, source percentages and adaptive record cards. */
:root {
 --order-queued:#785116;--order-queued-soft:#fff3d9;
 --order-active:#195eab;--order-active-soft:#eaf2ff;
 --order-complete:#216747;--order-complete-soft:#e8f5ee;
 --order-paused:#82550e;--order-paused-soft:#fff1d0;
 --order-error:#a52d3f;--order-error-soft:#ffedf0;
 --order-refund:#705095;--order-refund-soft:#f2ecfa;
 --order-neutral:#536176;--order-neutral-soft:#edf1f6;
 --order-row-alt:#f7f9fd;
}
html[data-theme=dark] {
 --order-queued:#ead39a;--order-queued-soft:#3f3726;
 --order-active:#b8d8ff;--order-active-soft:#273b55;
 --order-complete:#b6e6d0;--order-complete-soft:#253d35;
 --order-paused:#f6dca0;--order-paused-soft:#433a29;
 --order-error:#ffc6ce;--order-error-soft:#472e38;
 --order-refund:#dfcaf9;--order-refund-soft:#3a304a;
 --order-neutral:#c6d1e2;--order-neutral-soft:#303b4d;
 --order-row-alt:#202b3c;
}
.status-queued,.progress-queued,.row-queued {--order-tone:var(--order-queued);--order-tone-soft:var(--order-queued-soft)}
.status-active,.progress-active,.row-active {--order-tone:var(--order-active);--order-tone-soft:var(--order-active-soft)}
.status-complete,.progress-complete,.row-complete {--order-tone:var(--order-complete);--order-tone-soft:var(--order-complete-soft)}
.status-paused,.progress-paused,.row-paused {--order-tone:var(--order-paused);--order-tone-soft:var(--order-paused-soft)}
.status-error,.progress-error,.row-error {--order-tone:var(--order-error);--order-tone-soft:var(--order-error-soft)}
.status-refund,.progress-refund,.row-refund {--order-tone:var(--order-refund);--order-tone-soft:var(--order-refund-soft)}
.status-cancelled,.status-unknown,.progress-cancelled,.progress-unknown,.row-cancelled,.row-unknown {--order-tone:var(--order-neutral);--order-tone-soft:var(--order-neutral-soft)}
:root .pill.order-status {display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:5px 10px;border:1px solid transparent;border-radius:10px;background:var(--order-tone-soft);color:var(--order-tone);font-size:.75rem;font-weight:600;line-height:1.4;white-space:nowrap;filter:none}
:root .pill.order-status::before {display:none}
.order-status .icon {width:14px;height:14px;stroke-width:1.9}
.order-desk {container-name:orders;container-type:inline-size;border:1px solid var(--border)}
.order-desk>.panel-heading {padding:24px 24px 18px;gap:16px}
.order-desk>.panel-heading h2 {font-size:1.0625rem;font-weight:650;display:flex;gap:7px;align-items:baseline}
.order-desk>.panel-heading h2 small {font-size:.8125rem;color:var(--muted);font-weight:400}
.order-desk .toolbar {gap:10px}
.order-page-overview {display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 24px 18px;padding:12px 14px;background:var(--control);border-radius:14px}
.order-page-label {color:var(--muted);font-size:.75rem;margin-right:5px}
.order-overview-item {display:inline-flex;align-items:center;gap:6px;font-size:.75rem;background:var(--panel);padding:5px 10px;border-radius:9px;color:var(--ink)}
.order-overview-item .icon {width:14px;height:14px}.order-overview-item strong {font-variant-numeric:tabular-nums;font-weight:650;font-size:.8125rem;margin-left:3px}
.overview-active .icon {color:var(--order-active)}.overview-complete .icon {color:var(--order-complete)}.overview-queued .icon {color:var(--order-queued)}.overview-attention .icon {color:var(--order-error)}
.order-desk .order-batch-actions {padding-bottom:18px;gap:10px}
.order-desk .order-batch-actions>span {font-size:.75rem}
.order-table {max-height:70dvh;border-top:1px solid var(--line);scrollbar-width:thin;scrollbar-color:#9dafc8 transparent}
.order-table:focus-visible {outline:3px solid var(--blue);outline-offset:-3px}
.order-table table {min-width:1380px;table-layout:auto}
.order-table th {position:sticky;top:0;z-index:3;font-size:.75rem;font-weight:600;background:var(--control);padding:11px 16px;white-space:nowrap;border-bottom:1px solid var(--line)}
.order-table td {padding:16px;vertical-align:middle;font-size:.8125rem;line-height:1.65;background:var(--panel);color:var(--ink)}
.order-table tr:nth-child(even) td {background:var(--order-row-alt)}
.order-table tr:hover td {background:var(--control)}
.order-table th:first-child,.order-table td:first-child {position:sticky;left:0;min-width:56px;width:56px;padding:5px;z-index:2;text-align:center}
.order-table th:nth-child(2),.order-table td:nth-child(2) {position:sticky;left:56px;min-width:180px;z-index:2;box-shadow:8px 0 12px -12px #13254177}
.order-table th:first-child,.order-table th:nth-child(2) {z-index:4;background:var(--control)}
.order-select-hit {display:inline-grid;place-items:center;width:44px;height:44px;cursor:pointer}
.order-table .order-select-hit input[type=checkbox] {width:18px;height:18px;margin:0;accent-color:var(--blue)}
.order-identity strong {font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:normal;overflow-wrap:anywhere;display:block}
.order-table small {font-size:.6875rem;line-height:1.65;margin-top:5px;color:var(--muted)}
.order-table .order-course {min-width:170px;max-width:230px;font-weight:600;white-space:normal;overflow-wrap:anywhere}
.order-table td[data-label="平台 / 账号"] {min-width:150px;max-width:220px;white-space:normal;overflow-wrap:anywhere}
.order-progress {min-width:125px;max-width:none;width:100%;font-variant-numeric:tabular-nums}
.order-progress-caption {display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px;white-space:normal}
.order-progress-caption strong {font-size:.875rem;line-height:1.4;font-weight:650;color:var(--order-tone,var(--blue));overflow-wrap:anywhere}
.order-progress-caption>span {font-size:.625rem;white-space:nowrap;color:var(--muted)}
.order-progress .order-progress-track {height:7px;margin:0;border-radius:20px;background:var(--line);overflow:hidden}
.order-progress .order-progress-track i {display:block;height:100%;border-radius:20px;background:var(--order-tone,var(--blue));box-shadow:none;transition:width .2s ease-out}
.order-progress.progress-unavailable .order-progress-track {background:repeating-linear-gradient(90deg,var(--line) 0 9px,transparent 9px 14px)}
.order-progress-detail {max-width:270px;min-width:200px;white-space:normal;overflow-wrap:anywhere;line-height:1.7}
.order-progress-detail>span {display:block;font-size:.75rem;color:var(--muted)}
.order-table .order-sync-error {display:flex;align-items:flex-start;gap:5px;white-space:normal;color:var(--order-error);font-size:.6875rem;margin-top:8px}
.order-sync-error .icon {width:13px;height:13px;margin-top:3px}
.order-connection {display:inline-flex;align-items:center;gap:5px;font-size:.75rem;color:var(--muted);white-space:nowrap}
.order-connection .icon {width:14px;height:14px}.order-connection.is-linked {color:var(--order-active)}
.order-row-actions {display:grid;gap:8px}
.order-detail-button,.order-sync-button {display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:7px 12px;min-height:36px;border-radius:11px;font-size:.75rem;line-height:1.5;white-space:nowrap;border:1px solid var(--border);transition:background .15s,border-color .15s}
.order-detail-button {background:var(--selected);color:var(--blue);font-weight:600}
.order-sync-button {background:var(--panel);color:var(--muted)}
.order-detail-button .icon,.order-sync-button .icon {width:14px;height:14px}
.order-detail-button:hover,.order-sync-button:not(:disabled):hover {border-color:var(--blue);background:var(--control)}
.order-detail-button:active,.order-sync-button:not(:disabled):active {background:var(--selected)}
.order-sync-button:disabled {opacity:.55;cursor:not-allowed}
.order-sync-button[aria-busy=true] {opacity:1;color:var(--blue);background:var(--selected);cursor:wait}
.order-detail-summary {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;padding:22px;margin:0 0 22px;border:1px solid var(--border);border-radius:20px;background:var(--panel)}
.order-detail-caption {font-size:.75rem;color:var(--muted);overflow-wrap:anywhere}
.order-detail-summary h2 {font-size:1.1875rem;line-height:1.6;margin-top:6px;letter-spacing:-.01em;overflow-wrap:anywhere}
#dialog .order-detail-summary p {font-size:.8125rem;margin-top:4px;color:var(--muted);overflow-wrap:anywhere}
.order-detail-summary .order-status {align-self:start}
.order-detail-progress {grid-column:1/-1;padding:16px;border-radius:14px;background:var(--control)}
.order-detail-progress .order-progress-caption strong {font-size:1.25rem}
.order-detail-progress .order-progress-caption>span {font-size:.75rem}
.order-detail-summary>small {grid-column:1/-1;font-size:.6875rem;color:var(--muted);line-height:1.8}
.order-detail-summary~.detail-list dt {font-size:.75rem;color:var(--muted)}
.order-detail-summary~.detail-list dd {font-size:.8125rem;line-height:1.8}
.order-detail-summary~.order-detail-actions {gap:10px;padding-top:18px;border-top:1px solid var(--line)}
.order-detail-summary~.order-timeline li {font-size:.8125rem;line-height:1.8}
.order-empty td {padding:40px!important;text-align:center;position:static!important}
@media(prefers-reduced-motion:reduce) {.order-progress .order-progress-track i {transition:none}}
@media(prefers-contrast:more) {:root .pill.order-status {border-color:currentColor}.order-progress .order-progress-track {outline:1px solid var(--muted)}}

@container orders (max-width:700px) {
 .order-desk>.panel-heading {padding:20px 16px 16px;flex-wrap:wrap}
 .order-desk .toolbar {padding:0 16px;gap:10px}
 .order-desk .toolbar .search {width:100%}
 .order-desk .order-page-overview {margin:0 16px 16px;padding:10px;gap:6px}
 .order-page-label {flex-basis:100%;margin:0 0 2px}
 .order-overview-item {font-size:.75rem;flex:1;justify-content:center;padding:7px;min-width:104px}
 .order-desk .order-batch-actions {padding:0 16px 16px}
 .order-desk .order-batch-actions button {min-height:44px;flex:1;justify-content:center}
 .order-desk .order-batch-actions>span {flex-basis:100%;line-height:1.8}
 .order-table {max-height:none;overflow:visible;border-top:0;padding:0 12px 12px}
 .order-table table {display:block;min-width:0;width:100%;white-space:normal}
 .order-table thead {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .order-table tbody {display:grid;gap:12px}
 .order-table .order-record {position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 14px;padding:18px;background:var(--panel);border:1px solid var(--border);border-left:3px solid var(--order-tone,var(--border));border-radius:18px;box-shadow:0 4px 16px #182b4a05}
 .order-table .order-record td,.order-table .order-record:nth-child(even) td,.order-table .order-record:hover td {position:static;left:auto;width:auto;min-width:0;max-width:none;box-shadow:none;background:transparent;padding:0;border:0;text-align:left;font-size:.875rem;line-height:1.7;white-space:normal;overflow-wrap:anywhere}
 .order-table .order-record td[data-label]::before {content:attr(data-label);display:block;color:var(--muted);font-size:.6875rem;font-weight:400;line-height:1.5;margin-bottom:5px}
 .order-table .order-record .order-select-cell {position:absolute;top:10px;right:10px;left:auto;width:44px;height:44px}
 .order-table .order-select-hit input[type=checkbox] {width:22px;height:22px}
 .order-table .order-identity {order:0;grid-column:1/-1;padding-right:40px!important}
 .order-table .order-identity strong {font-size:.8125rem;line-height:1.6}
 .order-table .order-identity small {display:inline-block;margin-right:10px;margin-top:3px;font-size:.6875rem}
 .order-table .order-course {order:1;grid-column:1/-1;font-size:1rem!important;line-height:1.65!important;font-weight:650}
 .order-table .order-course::before {display:none!important}
 .order-table td:nth-child(6) {order:2}.order-table td:nth-child(7) {order:3}
 .order-table td:nth-child(3) {order:4}.order-table td:nth-child(4) {order:5}
 .order-table .order-progress-detail {order:6;grid-column:1/-1;padding:12px!important;border-radius:12px;background:var(--control)!important}
 .order-table .order-progress-detail>span {font-size:.8125rem;line-height:1.8}
 .order-table .order-source-cell {order:7;grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 12px}
 .order-table .order-source-cell::before {display:none!important}
 .order-table .order-source-cell small {font-size:.6875rem;margin:0}
 .order-table .order-action-cell {order:8;grid-column:1/-1;border-top:1px solid var(--line)!important;padding-top:14px!important}
 .order-table .order-row-actions {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));gap:10px}
 .order-detail-button,.order-sync-button {min-height:44px;font-size:.8125rem;padding:9px}
 .order-progress {min-width:0}.order-progress-caption {gap:7px}
 .order-progress-caption strong {font-size:1rem}.order-progress-caption>span {font-size:.625rem}
 .order-progress .order-progress-track {height:7px}
 .order-empty {display:block;background:var(--panel);border-radius:16px;border:1px solid var(--border)}
 .order-table .order-empty td {display:block}
 .order-detail-summary {grid-template-columns:minmax(0,1fr);padding:18px;gap:12px}
 .order-detail-summary .order-status {justify-self:start}
}
@media(max-width:700px) {
 .order-desk>.panel-heading {padding:20px 16px 16px;flex-wrap:wrap}
 .order-desk .toolbar {padding:0 16px;gap:10px}
 .order-desk .toolbar .search {width:100%}
 .order-desk .order-page-overview {margin:0 16px 16px;padding:10px;gap:6px}
 .order-page-label {flex-basis:100%;margin:0 0 2px}
 .order-overview-item {font-size:.75rem;flex:1;justify-content:center;padding:7px;min-width:104px}
 .order-desk .order-batch-actions {padding:0 16px 16px}
 .order-desk .order-batch-actions button {min-height:44px;flex:1;justify-content:center}
 .order-desk .order-batch-actions>span {flex-basis:100%;line-height:1.8}
 .order-table {max-height:none;overflow:visible;border-top:0;padding:0 12px 12px}
 .order-table table {display:block;min-width:0;width:100%;white-space:normal}
 .order-table thead {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .order-table tbody {display:grid;gap:12px}
 .order-table .order-record {position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 14px;padding:18px;background:var(--panel);border:1px solid var(--border);border-left:3px solid var(--order-tone,var(--border));border-radius:18px;box-shadow:0 4px 16px #182b4a05}
 .order-table .order-record td,.order-table .order-record:nth-child(even) td,.order-table .order-record:hover td {position:static;left:auto;width:auto;min-width:0;max-width:none;box-shadow:none;background:transparent;padding:0;border:0;text-align:left;font-size:.875rem;line-height:1.7;white-space:normal;overflow-wrap:anywhere}
 .order-table .order-record td[data-label]::before {content:attr(data-label);display:block;color:var(--muted);font-size:.6875rem;font-weight:400;line-height:1.5;margin-bottom:5px}
 .order-table .order-record .order-select-cell {position:absolute;top:10px;right:10px;left:auto;width:44px;height:44px}
 .order-table .order-select-hit input[type=checkbox] {width:22px;height:22px}
 .order-table .order-identity {order:0;grid-column:1/-1;padding-right:40px!important}
 .order-table .order-identity strong {font-size:.8125rem;line-height:1.6}
 .order-table .order-identity small {display:inline-block;margin-right:10px;margin-top:3px;font-size:.6875rem}
 .order-table .order-course {order:1;grid-column:1/-1;font-size:1rem!important;line-height:1.65!important;font-weight:650}
 .order-table .order-course::before {display:none!important}
 .order-table td:nth-child(6) {order:2}.order-table td:nth-child(7) {order:3}
 .order-table td:nth-child(3) {order:4}.order-table td:nth-child(4) {order:5}
 .order-table .order-progress-detail {order:6;grid-column:1/-1;padding:12px!important;border-radius:12px;background:var(--control)!important}
 .order-table .order-progress-detail>span {font-size:.8125rem;line-height:1.8}
 .order-table .order-source-cell {order:7;grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 12px}
 .order-table .order-source-cell::before {display:none!important}
 .order-table .order-source-cell small {font-size:.6875rem;margin:0}
 .order-table .order-action-cell {order:8;grid-column:1/-1;border-top:1px solid var(--line)!important;padding-top:14px!important}
 .order-table .order-row-actions {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));gap:10px}
 .order-detail-button,.order-sync-button {min-height:44px;font-size:.8125rem;padding:9px}
 .order-progress {min-width:0}.order-progress-caption {gap:7px}
 .order-progress-caption strong {font-size:1rem}.order-progress-caption>span {font-size:.625rem}
 .order-progress .order-progress-track {height:7px}
 .order-empty {display:block;background:var(--panel);border-radius:16px;border:1px solid var(--border)}
 .order-table .order-empty td {display:block}
 .order-detail-summary {grid-template-columns:minmax(0,1fr);padding:18px;gap:12px}
 .order-detail-summary .order-status {justify-self:start}
}

:root .pill.order-status {max-width:100%;white-space:normal}:root .pill.order-status>span {min-width:0;overflow-wrap:anywhere}
@media(min-width:701px) {
 .order-table th:last-child,.order-table td:last-child {position:sticky;right:0;min-width:140px;z-index:2;box-shadow:-8px 0 12px -12px #13254177}
 .order-table th:last-child {z-index:4;background:var(--control)}
}
@container orders (max-width:700px) {
 .order-table .order-record td:last-child {position:static;min-width:0;box-shadow:none}
}
/* Audit correction: retain horizontal state labels and readable long order IDs. */
.order-table th:nth-child(6),.order-table td:nth-child(6) {min-width:112px}
:root .pill.order-status:not(.status-unknown)>span {white-space:nowrap}
.order-table th:nth-child(2),.order-table td:nth-child(2) {min-width:220px}
.order-table .order-identity strong {white-space:nowrap;letter-spacing:0;font-size:.8125rem}
@container orders (max-width:700px) {
 .order-table .order-record td:nth-child(6),.order-table .order-record td:nth-child(2) {min-width:0}
 .order-table .order-identity strong {white-space:normal}
}
@media(max-width:700px) {
 .order-table .order-record td:nth-child(6),.order-table .order-record td:nth-child(2) {min-width:0}
 .order-table .order-identity strong {white-space:normal}
}

.order-progress-caption {flex-wrap:wrap}
.order-progress-caption strong {white-space:nowrap}
@container orders (max-width:340px) {
 .order-table .order-record {grid-template-columns:minmax(0,1fr)}
 .order-table .order-record td {grid-column:1/-1}
}
@media(max-width:360px) {
 .order-table .order-record {grid-template-columns:minmax(0,1fr)}
 .order-table .order-record td {grid-column:1/-1}
}
/* V0.7.5 compact submission and account tools */
.submission-workspace .page-title {margin-bottom:14px}
.submission-workspace .group-picker {padding:14px 16px;margin:12px 0;border-radius:18px}
.submission-workspace .group-picker-head {flex-direction:row;align-items:center;gap:10px}
.submission-workspace .group-picker-head .eyebrow,.submission-workspace .group-picker-head p {display:none}
.submission-workspace .group-picker h2 {font-size:.9375rem;margin:0}
.group-options {position:relative;color:var(--muted);font-size:.75rem;flex-shrink:0}
.group-options summary {cursor:pointer;padding:8px}
.group-options .group-controls {padding:8px 0;flex-wrap:wrap;max-width:300px}
.submission-workspace .group-tiles {display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}
.submission-workspace .group-tile {flex-shrink:0;flex-direction:row;align-items:center;gap:7px;padding:8px 11px;min-height:44px;max-width:280px}
.submission-workspace .group-tile .brand-image,.submission-workspace .group-symbol {width:25px;height:25px;flex-shrink:0}
.submission-workspace .group-tile strong {font-size:.8125rem;white-space:normal}
.submission-workspace .group-tile small,.submission-workspace .group-hot {display:none}
.submission-workspace .product-selection {margin:12px 0;padding:0 0 10px;border-radius:18px}
.submission-workspace .product-selection .panel-heading {padding:12px 16px;gap:10px}
.submission-workspace .product-selection .panel-heading h2 {font-size:.875rem}
.submission-workspace .product-selection .panel-heading p,.submission-workspace .product-selection>.ai-hint {display:none}
.submission-workspace #product-child-filter {max-width:55%;min-height:36px}
.submission-workspace .product-choice-grid {gap:7px;padding:0 16px 5px;max-height:144px;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain;scroll-padding:8px}
.submission-workspace .product-choice {padding:10px 12px;gap:5px;min-height:58px;transform:none;min-width:0}
.submission-workspace .product-choice-name {font-size:.8125rem;line-height:1.5}
.submission-workspace .product-choice .product-badges {gap:3px}
.submission-workspace .product-choice .product-badge {font-size:.625rem;padding:3px 5px}
.submission-workspace .product-choice small {font-size:.6875rem}
.submission-workspace .product-cover,.submission-workspace .product-choice-cta {display:none}
.submission-workspace .submit-grid {display:block;margin-top:12px}
.submission-workspace #submit-form {padding:18px 22px;border:1px solid var(--border)}
.submission-workspace #submit-form>.panel-heading {padding:0 0 10px}
.submission-workspace #submit-form h2 {font-size:1rem}
.submission-workspace .duplicate-group-label {display:none}
.submission-workspace #submit-form label {margin-top:12px}
.submission-workspace .source-filter {margin-top:8px}
.submission-workspace .project-search {margin-top:10px;gap:8px}
.submission-workspace .project-description {padding:10px 12px;margin:10px 0;border-radius:12px;background:var(--control);font-size:.8125rem;overflow-wrap:anywhere}
.submission-workspace .project-description summary {cursor:pointer;font-weight:600;line-height:1.6}
.submission-workspace .project-description p {margin-top:8px;line-height:1.8;white-space:pre-wrap}
.submission-workspace .form-notice {margin:12px 0;padding:10px 12px}
.submission-workspace .form-notice p {font-size:.75rem}
.credential-line-control {display:flex;gap:8px;align-items:stretch;margin-top:8px}
.credential-line-control input {flex:1;min-width:0;margin:0;font:inherit;font-size:1rem!important;min-height:44px;background:var(--control);color:var(--ink);border:1px solid var(--border);border-radius:12px;padding:11px 12px}
.credential-line-control button {min-width:52px;min-height:44px;flex-shrink:0}
.credential-entry-tools {display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:5px;flex-wrap:wrap;font-size:.75rem;color:var(--muted)}
.credential-entry-tools>span {overflow-wrap:anywhere;min-width:0}
.credential-entry-tools button {min-height:44px;padding:8px 0}
.split-credentials {font-size:.75rem;color:var(--muted)}
.split-credentials summary {cursor:pointer;padding:9px 0}
#credential-assist-form,#agent-tool-form {padding:0}
#agent-tool-form>p {line-height:1.7;overflow-wrap:anywhere}
#agent-tool-form .primary,#credential-assist-form .primary {min-height:44px;margin-top:14px}
#agent-tool-form label {font-size:.875rem}
.agent-login {display:block;color:var(--muted);font-size:.75rem;margin-top:5px}
[data-agent-tool] {min-height:44px;white-space:nowrap;padding:8px 10px}
@media(max-width:650px) {
 .submission-workspace .page-title {margin-bottom:10px}.submission-workspace h1 {font-size:25px}
 .submission-workspace .group-picker {padding:10px 12px;margin:10px 0}
 .submission-workspace .group-tile {padding:6px 9px;min-height:44px}
 .submission-workspace .product-selection .panel-heading {padding:10px 12px;flex-wrap:nowrap}
 .submission-workspace .product-choice-grid {grid-template-columns:repeat(2,minmax(0,1fr));padding:0 12px 4px;max-height:132px}
 .submission-workspace .product-choice {padding:9px;min-height:62px}
 .submission-workspace #submit-form {padding:14px}
 .submission-workspace .product-choice .product-badge {font-size:.6875rem}
 .submission-workspace .topbar {margin-bottom:16px}
 .submission-workspace .project-search input {min-width:0}
}
@media(max-width:360px) {.submission-workspace .product-choice-grid {grid-template-columns:minmax(0,1fr)}}
.submission-workspace .group-tile {min-width:max-content;max-width:none}
.submission-workspace .group-tile strong {white-space:nowrap}
.submission-workspace .product-selection-summary {padding:13px 16px;font-size:.875rem;font-weight:600;line-height:1.6;cursor:pointer;overflow-wrap:anywhere;list-style-position:inside}
.submission-workspace .product-selection:not([open]) {padding-bottom:0}
.submission-workspace .product-selection[open]>.panel-heading h2 {display:none}
.submission-workspace .product-selection[open]>.panel-heading {justify-content:flex-end;padding-top:0;padding-bottom:8px}
.submission-extra {margin-top:12px;color:var(--muted);font-size:.75rem;border-top:1px solid var(--border);padding-top:10px}
.submission-extra>summary {cursor:pointer;padding:7px 0}
.submission-workspace #submit-form>.form-notice {margin:8px 0;padding:8px 10px}
.submission-workspace #submit-form>.form-notice p {line-height:1.5}
.submission-workspace #query-courses {min-height:44px}
.submission-workspace .credential-line-control input {margin:0;min-height:44px}
.submission-workspace .credential-line-control button {margin:0;min-height:44px}
.submission-workspace #submit-form {scroll-margin-top:88px}
@media(max-width:360px) {.submission-workspace>.toolbar>.ai-hint {display:none}}
/* V0.7.6: project requirements before credentials; supplier controls stay out of the form. */
.submission-workspace #project-description {padding:14px 16px;margin:4px 0 14px;border:1px solid var(--project-note-border);border-left:3px solid var(--blue);background:var(--project-note-bg);border-radius:14px;color:var(--ink);scroll-margin-top:88px}
.submission-workspace {--project-note-bg:#eef5ff;--project-note-border:#ccddf5}
html[data-theme=dark] .submission-workspace {--project-note-bg:#25364d;--project-note-border:#405976}
.project-description-heading {display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.project-description-heading .icon {width:18px;height:18px;color:var(--blue);flex-shrink:0}
.project-description-heading h3 {font-size:.9375rem;margin:0;font-weight:650;color:var(--blue)}
.project-description-price {margin-left:auto;font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--ink)}
.project-description-name {display:block;line-height:1.65;font-size:.875rem;overflow-wrap:anywhere}
.project-description-text {position:relative;max-height:9.6em;overflow:hidden;font-size:.875rem;line-height:1.8;overflow-wrap:anywhere}
.submission-workspace .project-description-text p {font-size:inherit;color:var(--ink);margin:8px 0 0;line-height:inherit;white-space:pre-wrap}
.project-description-text.is-expanded {max-height:none;overflow:visible}
.project-description-text.has-more:not(.is-expanded)::after {content:'';position:absolute;bottom:0;left:0;right:0;height:24px;pointer-events:none;background:linear-gradient(transparent,var(--project-note-bg))}
.project-description-tip b {display:block;font-size:.75rem;color:var(--muted);font-weight:600}
.submission-workspace .project-description-toggle {min-height:44px;margin-top:5px;padding:8px 0;color:var(--blue)}
.submission-workspace .project-description-toggle[hidden] {display:none}
.submission-workspace .project-description-empty {margin:6px 0 14px;color:var(--muted);font-size:.8125rem;line-height:1.7}
.submission-workspace .product-search {margin:0 16px 10px;display:flex}
.submission-workspace .product-search input {min-width:0;flex:1}
.submission-workspace .product-pagination {padding:10px 16px;gap:8px}
.submission-workspace #submit-form>.school-setting {margin:4px 0 14px}
@media(max-width:650px) {
 .submission-workspace #project-description {padding:12px;margin-bottom:12px}
 .project-description-heading h3 {font-size:.875rem}
 .project-description-text {max-height:8.1em}
 .submission-workspace .product-search {margin-left:12px;margin-right:12px}
 .submission-workspace .product-pagination {padding:8px 12px;flex-wrap:wrap}
}
.source-delete-button {color:#a52d3f;min-height:44px}
html[data-theme=dark] .source-delete-button {color:#ffc6ce}
#source-delete-form {padding:0}
#source-delete-form p {line-height:1.8;overflow-wrap:anywhere}
.source-delete-actions {display:flex;justify-content:flex-end;gap:10px;margin-top:16px;flex-wrap:wrap}
.source-delete-actions button {min-height:44px}
.source-delete-confirm {background:#a52d3f;color:white}

/* Direct product publication controls and admin audit filters. */
.product-state{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:7px 12px;border:1px solid var(--line);border-radius:13px;background:var(--control);color:var(--muted);font:inherit;font-weight:600;white-space:nowrap;cursor:pointer}.product-state.is-listed{color:var(--green,#157347);background:rgba(40,167,95,.1);border-color:rgba(40,167,95,.25)}.product-state svg{width:14px;height:14px}.product-state:disabled{opacity:.55;cursor:wait}.product-state:focus-visible{outline:3px solid var(--blue,#007aff);outline-offset:2px}.audit-toolbar{align-items:end;flex-wrap:wrap}.audit-toolbar>label:not(.search){display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:12px}.audit-toolbar input[type=date]{min-width:140px}.audit-toolbar input[name=actor]{width:135px}.audit-summary{max-width:380px;white-space:normal;overflow-wrap:anywhere}@media(max-width:600px){.audit-toolbar>label:not(.search){flex:1 1 135px;min-width:0}.audit-toolbar>label input{max-width:100%;width:100%}.audit-toolbar>select{max-width:100%}.audit-toolbar .search{flex-basis:100%}}
.text-button.danger{color:#a71d2a}.primary.danger{background:#b4232a;color:#fff;border-color:#b4232a}.primary.danger:hover{background:#971c23}html[data-theme=dark] .text-button.danger{color:#ffb4ab}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap}
.audit-toolbar>label:not(.search) input{border:1px solid var(--border);border-radius:12px;background:var(--control);color:var(--ink);min-height:44px;padding:10px 12px;font:inherit;font-size:14px;box-sizing:border-box}.audit-toolbar input[type=date]{color-scheme:light}html[data-theme=dark] .audit-toolbar input[type=date]{color-scheme:dark}@media(max-width:650px){.audit-table{min-width:0;width:100%}.audit-table thead{display:none}.audit-table tbody,.audit-table tr{display:block}.audit-table tr{padding:16px;border-bottom:1px solid var(--line)}.audit-table tr:last-child{border-bottom:0}.audit-table td{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px;padding:6px 0!important;border:0!important;text-align:left;white-space:normal;overflow-wrap:anywhere;max-width:none}.audit-table td::before{content:attr(data-label);color:var(--muted);font-size:12px}.audit-table td.empty{display:block}.audit-table td.empty::before{display:none}.audit-table .table-sub{font-size:11px}.audit-table tr:hover td{background:transparent}}
.product-bulk-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:14px 20px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.product-bulk-toolbar small{flex:1 1 180px;line-height:1.6}.secondary.danger{color:#a71d2a;border-color:rgba(167,29,42,.28)}html[data-theme=dark] .secondary.danger{color:#ffb4ab;border-color:rgba(255,180,171,.35)}[data-platform-selected],#platform-select-page{width:18px;height:18px;accent-color:var(--blue);cursor:pointer}
.pagination{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.pagination button{min-height:40px;white-space:nowrap}.pagination .page-summary{font-size:12px;color:var(--muted);white-space:nowrap}.page-jump-label{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:12px;white-space:nowrap}.page-jump-label input{width:58px;min-width:0;min-height:40px;padding:7px;border:1px solid var(--border);border-radius:10px;background:var(--control);color:var(--ink);font:inherit;text-align:center}.table-footer{gap:12px;flex-wrap:wrap}@media(max-width:650px){.table-footer{align-items:flex-start;flex-direction:column}.pagination{justify-content:flex-start;width:100%}.pagination button{min-height:44px}.page-jump-label input{min-height:44px}.pagination .page-summary{padding:0 4px}}
.pagination{flex-direction:row;flex:0 1 auto}#source-edit-form label[hidden]{display:none!important}

/* 货源操作按钮可辨识度（自定义补丁） */
[data-source-edit] {color:#2f6fd0;font-weight:600}
html[data-theme=dark] [data-source-edit] {color:#8ab4f8}
[data-source-edit]:disabled {color:var(--muted);font-weight:500;opacity:.55;cursor:not-allowed}
[data-source-delete] {font-weight:600}
