/* CBOT visual system: bright technology, strong text contrast. */
:root{--ink:#182747;--green:#4965e8;--border:#dce3f3;--paper:#f6f8ff}
body{background:#f6f8ff url('/assets/tech-background.svg') center top/1600px auto repeat-y;color:#182747;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;line-height:1.6}
header{max-width:none;padding:0 max(28px,calc((100vw - 1160px)/2));height:86px;background:#ffffffc9;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff;box-shadow:0 2px 16px #3f5da506}
.brand{font-size:25px;letter-spacing:.5px;gap:11px}.brand-sub{font-size:15px;color:#536484;letter-spacing:1px}.logo{height:40px;width:40px;border-radius:13px;background:linear-gradient(135deg,#358df2,#7453e7);font-size:25px;box-shadow:0 5px 15px #5d6be82b;border:1px solid #ffffff80}
.admin-link{color:#53678b;background:white;border:1px solid #d9e2f3;border-radius:9px;font-size:12px;padding:9px 15px}
main{max-width:1216px;padding:0 28px}.purchase-banner{margin-top:32px;min-height:224px;padding:36px 38px 62px;border-radius:22px;gap:24px;background:linear-gradient(115deg,#fcfeff 0%,#eef3ff 45%,#e9e8ff 100%);border:1px solid #becdf5;box-shadow:0 14px 45px #5b70ba14,inset 0 1px #fff;position:relative}.purchase-banner:before{inset:0;z-index:-1;background:url('/assets/robot-art.svg') 68% center/380px auto no-repeat;opacity:.85}.purchase-banner>div:first-of-type{max-width:510px;z-index:1}.purchase-banner .purchase-label{font-size:11px;letter-spacing:2px;color:#506ec2}.purchase-banner .cbot-title{font-size:36px;letter-spacing:1px;margin:12px 0 10px;font-weight:800;color:#2745a5}.purchase-banner p{font-size:14px;line-height:1.9;max-width:440px;color:#53678d}.purchase-banner .purchase-button{font-size:15px;padding:16px 24px;background:linear-gradient(110deg,#347ff1,#6953e7);border-color:#c0d0ff;border-radius:12px;box-shadow:0 8px 22px #5064e532;position:relative;z-index:1}.purchase-flow{border-radius:22px}.purchase-flow rect{rx:19px}.tech-marquee{height:31px;background:#e1e8ff6b;border-top:1px solid #ccd7f578}.tech-track span{font-size:10px;color:#667ba7;letter-spacing:2.5px}
.hero{padding:26px 0 0}.search{border-radius:14px;padding:7px 8px 7px 16px;min-height:66px;border:1px solid #d4dff3;background:#fffffff5;box-shadow:0 7px 24px #405f9d08}.search>span{margin:0 8px 0 0;color:#5277be;font-size:31px}.search input{font-size:15px;letter-spacing:.3px;color:#1e345c}.search input::placeholder{color:#667a9b}.search button{background:#4666e6;border-radius:10px;padding:13px 24px}.catalog{position:relative;padding-top:30px;padding-bottom:60px}.catalog .section-heading{position:absolute;right:0;top:36px;margin:0}.section-heading select{background:#ffffffb8;border-color:#d6e0f3;border-radius:8px;font-size:12px;padding:9px 10px}.filters{gap:8px;padding:6px;margin:0 145px 25px 0;background:#e7ecf7b8;border:1px solid #dce3f3;border-radius:14px;display:inline-flex;flex-wrap:wrap}.filters button{font-size:18px;padding:10px 22px;border:0;background:transparent;color:#536687;border-radius:10px;font-weight:700;transition:background .2s,color .2s,box-shadow .2s}.filters button:hover{background:#ffffffa3;color:#3555bd}.filters button.active{color:#3153c1;background:white;border:0;box-shadow:0 3px 10px #4a609418;position:relative}.filters button.active:after{content:'';position:absolute;bottom:4px;left:40%;right:40%;height:2px;background:#6281f2;border-radius:3px}
.tutorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.tutorial-card{border:1px solid #dce4f3;border-radius:18px;background:#fffffffa;box-shadow:0 6px 24px #445e9f08;overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s,border-color .2s}.tutorial-card:before{content:'';height:3px;background:linear-gradient(90deg,#709df4,#b7a0f4,#dce9ff);position:absolute;top:0;left:24px;right:24px;border-radius:0 0 5px 5px}.tutorial-card:hover{transform:translateY(-3px);border-color:#b3c5f2;box-shadow:0 15px 30px #445e9f12}.card-content{padding:25px 27px}.card-meta{color:#5f75a0;font-size:12px;font-weight:600;letter-spacing:.4px}.card-meta span{background:#f2edff;color:#7c5eb3;border-radius:5px;padding:2px 8px}.card-content h3{font-size:21px;color:#213a65;line-height:1.65;margin:13px 0}.card-content p{color:#506585;font-size:15px;line-height:1.9}.tutorial-card .thumbnail{padding:0 20px 20px}.tutorial-card .cover-image{border:1px solid #e1e7f3;border-radius:10px}
.tutorial-link{background:#f5f7fe;border:1px solid #e0e7f7;border-radius:10px;padding:13px 14px;gap:10px}.tutorial-link a{color:#3864d4;font-size:14px;text-decoration:none;line-height:1.8}.tutorial-link a:hover{text-decoration:underline}.tutorial-link button{border:1px solid #c8d6fa;background:#e9efff;color:#355ac2;border-radius:7px;padding:6px 12px;font-weight:600;font-size:12px}.tutorial-link button:hover{background:#dde7ff}.named-links{padding:0;border:0;background:transparent}.named-link .link-label{color:#304769;font-size:14px}.invite-value{font-size:16px;letter-spacing:1px;color:#5266ad}.free-content-text{color:#40587d;line-height:1.9}.qa-collection{gap:16px}.qa-collection-title{font-size:23px;color:#294572;padding:4px 0 4px 3px}.qa-card{border-radius:16px;padding:26px 28px;border-color:#dbe4f5;box-shadow:0 5px 20px #4d68a408;background:#fff}.qa-question{gap:15px}.qa-question h3{color:#213a65;font-size:19px}.qa-badge{border-radius:9px;background:#eaf0ff;color:#4468cf;font-size:14px;width:32px;height:32px}.qa-answer{padding-top:17px;margin-top:17px;border-color:#e8edf7;gap:15px}.qa-answer .qa-badge{background:#f0ebfc;color:#8865c1}.qa-answer>div{color:#435b7e;font-size:16px;line-height:1.95}
footer{max-width:1160px;padding:25px 0 32px;border-color:#dce4f1}footer .brand{font-size:20px}footer .brand-sub{font-size:12px}footer>span,footer small{font-size:11px;color:#617394}dialog{border-radius:20px;border:1px solid #d3def2;box-shadow:0 30px 100px #192a4740}dialog::backdrop{background:#1d305b87;backdrop-filter:blur(9px)}#detail{padding:38px 40px}#detail h2{color:#233f70}.close{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#edf2fc;color:#496286;line-height:1;font-size:24px;right:12px;top:12px}#purchase-dialog{background:linear-gradient(145deg,#fff,#eff4ff 55%,#eeeaff);border-radius:22px;padding:40px 30px}#purchase-dialog .purchase-symbol{background:linear-gradient(135deg,#e6f2ff,#e9e1ff);border-color:#ccd9f7;border-radius:22px;color:#5a75d6}#purchase-dialog .purchase-button{background:linear-gradient(110deg,#347ff1,#6953e7);border-radius:10px}.panel{border-radius:16px;background:#ffffffef}.admin-shell{max-width:1216px}.panel h3{color:#294372}.panel textarea,.panel input{line-height:1.7}.primary{background:#4967e6;border-radius:9px}.panel label{color:#445d83;font-weight:600}.qa-edit-row{background:#f4f7ff;border-radius:12px}
@media(min-width:1500px){main{max-width:1320px}footer{max-width:1264px}.purchase-banner{min-height:240px}.purchase-banner:before{background-size:420px auto}.card-content{padding:28px 30px}}
@media(max-width:850px){.purchase-banner:before{background-position:95% center;opacity:.3}.purchase-banner{padding:28px 26px 53px}.purchase-banner .cbot-title{font-size:30px}.filters{margin-right:0;display:flex}.catalog .section-heading{position:static;margin-bottom:12px}.catalog{padding-top:18px}.filters button{flex:1;padding:10px;font-size:17px;white-space:nowrap}.tutorial-grid{gap:16px}.card-content{padding:21px}footer{margin:0 28px}.purchase-banner .purchase-button{margin-left:0}}
@media(max-width:600px){header{padding:0 18px;height:74px;min-height:74px}.brand{font-size:22px;gap:9px}.brand-sub{font-size:12px}.logo{width:35px;height:35px;font-size:23px}.admin-link{font-size:11px;padding:7px 10px}main{padding:0 16px}.purchase-banner{margin-top:20px;border-radius:18px;padding:24px 22px 49px;gap:20px}.purchase-banner:before{background-position:140% 0%;background-size:260px auto;opacity:.3}.purchase-banner .cbot-title{font-size:29px}.purchase-banner p{font-size:13px;color:#485f86}.purchase-banner .purchase-button{padding:13px}.search{min-height:58px;border-radius:12px;padding:6px 6px 6px 12px}.search input{font-size:13px}.search button{padding:11px 14px;font-size:13px}.search button span{margin-left:5px}.hero{padding-top:18px}.filters{padding:4px;gap:3px;margin-bottom:18px;border-radius:11px}.filters button{font-size:15px;padding:11px 6px;white-space:normal;line-height:1.5}.tutorial-grid{grid-template-columns:minmax(0,1fr)}.card-content{padding:23px}.qa-card{padding:20px}.qa-question,.qa-answer{gap:10px}.qa-badge{width:27px;height:27px;font-size:12px}.qa-question h3{font-size:18px}.qa-answer>div{font-size:15px}.qa-collection-title{font-size:21px}footer{margin:0 16px;gap:12px;padding:22px 0}footer small{font-size:9px}footer .brand{font-size:17px}#detail{padding:35px 20px}.admin-shell{padding:0 16px}.purchase-flow rect{rx:15px}}
.tutorial-grid>.tutorial-card:only-child{grid-column:1/-1}.tutorial-grid>.tutorial-card:only-child .named-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tutorial-grid>.tutorial-card:only-child .named-links>.named-link{margin:0}.tutorial-grid>.tutorial-card:only-child .named-links>.free-content-text{grid-column:1/-1}.tutorial-grid>.tutorial-card:only-child .thumbnail{max-width:850px;align-self:center}.invite-value{font-family:Consolas,"Segoe UI",monospace;font-weight:600}
@media(max-width:600px){.filters{display:flex;flex-wrap:wrap;gap:6px;padding:7px}.filters button{flex:1 1 calc(50% - 6px);font-size:15px;padding:10px 8px;white-space:normal}.tutorial-grid>.tutorial-card:only-child .named-links{grid-template-columns:1fr}.tutorial-link a{font-size:13px}.qa-collection-title{padding-top:8px}}
/* 背景覆盖整个视口，包括顶部导航两侧 */
html{min-height:100%;background:#eef2ff}body{min-height:100vh;background:#f6f8ff url('/assets/tech-background.svg') center top/cover fixed no-repeat}header{background:transparent;backdrop-filter:none;border-bottom:1px solid #b9c9e54d;box-shadow:none}.admin-link{background:#ffffffa8}.logo{box-shadow:0 5px 15px #5d6be82b}
/* Final polish: luminous background, stronger hierarchy, quieter surfaces */
body{background-image:radial-gradient(ellipse at 4% 5%,#b8d9ff80,transparent 42%),radial-gradient(ellipse at 98% 20%,#d6c5ff85,transparent 42%),url('/assets/tech-background.svg');background-size:cover,cover,cover;background-attachment:fixed}
header{height:90px;border-bottom-color:#ffffff90}.brand{font-weight:800}.brand-sub{font-weight:500}.admin-link{box-shadow:0 3px 12px #435a9d08;background:#ffffffb5}
.purchase-banner{min-height:250px;background:linear-gradient(115deg,#ffffffed 0%,#eef5ffeb 47%,#eae7ffee 100%);box-shadow:0 20px 55px #4c6ad51a,inset 0 1px 0 #fff;border-radius:24px;padding:40px 38px 64px}.purchase-banner:before{background-size:420px auto;background-position:68% center}.purchase-banner .cbot-title{font-size:40px;letter-spacing:1.5px;line-height:1.35;color:#24449d}.purchase-banner .purchase-label{background:#fff9;border:1px solid #cadaff;border-radius:20px;padding:5px 11px;letter-spacing:1px;font-weight:700}.purchase-banner .purchase-button{padding:17px 27px;box-shadow:0 9px 25px #535fe545;border:1px solid #9caeff}.purchase-banner p{font-size:15px;max-width:430px;color:#4e6487}.purchase-flow rect{rx:21px}
.search{box-shadow:0 8px 30px #4b6daf0d;border-color:#cad8f1;background:#fffffff2}.search:focus-within{border-color:#819aec;box-shadow:0 0 0 4px #6789ec12}.search button{background:linear-gradient(115deg,#3979ee,#6658e9)}
.filters{background:#ffffff70;border-color:#cfdaf0;box-shadow:inset 0 1px 0 white;gap:7px}.filters button{color:#526583;font-size:18px}.filters button.active{background:linear-gradient(115deg,#3d76ed,#6856e8);color:white;box-shadow:0 5px 14px #5469da35}.filters button.active:after{background:#ffffff9c;bottom:5px}.filters button:not(.active):hover{background:#fff;color:#3455ad}
.tutorial-card,.qa-card{border-color:#d6e0f2;box-shadow:0 8px 25px #4566a50a;background:#ffffffed}.card-meta{font-size:12px;color:#657ca5}.card-content h3{letter-spacing:.3px}.named-link{background:linear-gradient(115deg,#f5f8ff,#f9faff);border-color:#e0e7f7;padding:17px 18px}.named-link .link-label{font-weight:700;font-size:15px}.tutorial-link button{background:white;border-color:#c9d6f4;box-shadow:0 2px 5px #3e60aa08;padding:8px 14px}.tutorial-link button:hover{background:#466ee6;color:white;border-color:#466ee6}.qa-collection{gap:18px}.qa-card{padding:27px 30px}.qa-question .qa-badge{background:linear-gradient(135deg,#477beb,#7860df);color:white;box-shadow:0 3px 9px #5c74cb26}.qa-answer .qa-badge{background:#ecf1fc;color:#5974ad}.qa-answer{border-top:1px dashed #dce5f3}.qa-collection-title{margin-bottom:2px}footer{border-top-color:#cbd7ed;color:#5a6d8c}
@media(max-width:850px){.purchase-banner:before{background-position:100% center;opacity:.3}.purchase-banner .cbot-title{font-size:33px}.purchase-banner{padding:30px 26px 55px}}
@media(max-width:600px){header{height:74px}.purchase-banner{min-height:0;margin-top:18px;padding:25px 22px 49px;border-radius:20px}.purchase-banner .cbot-title{font-size:30px;letter-spacing:.5px}.purchase-banner p{font-size:13px}.purchase-banner:before{background-size:270px auto;background-position:150% 10%;opacity:.25}.purchase-banner .purchase-button{padding:14px}.filters button{font-size:15px}.qa-card{padding:21px}.named-link{padding:14px}.purchase-flow rect{rx:17px}}

.filters{margin-right:0}.catalog .section-heading{display:none}

.fairy-layer{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:4}.fairy{position:absolute;display:block;width:68px;height:55px;opacity:.72;filter:drop-shadow(0 3px 9px #88a7ef55);animation:fairy-flight 17s ease-in-out infinite alternate}.fairy svg{width:100%;height:100%}.fairy-wing{fill:#eef2ff;stroke:#bacbff;stroke-width:1.5;opacity:.85}.fairy-face{fill:#e0eaff;stroke:#a4b9f4;stroke-width:1.5}.fairy-1{left:2%;top:23%}.fairy-2{right:2%;top:55%;animation-duration:23s;animation-delay:-7s}.fairy-2 .fairy-face{fill:#ece2ff;stroke:#c7b4ee}.fairy-3{left:7%;top:82%;width:46px;animation-duration:19s;animation-delay:-11s}.fairy-star{position:absolute;color:#7c99e3;font-style:normal;font-size:20px;opacity:.55;animation:fairy-glimmer 6s ease-in-out infinite alternate}.star-1{left:6%;top:48%}.star-2{right:7%;top:30%;animation-delay:-2s;font-size:14px}.star-3{right:4%;top:83%;animation-delay:-4s}.star-4{left:3%;top:12%;font-size:12px;animation-delay:-3s}@keyframes fairy-flight{0%{transform:translate(0,0) rotate(-9deg)}35%{transform:translate(18px,-38px) rotate(7deg)}70%{transform:translate(-10px,-80px) rotate(-5deg)}100%{transform:translate(13px,-125px) rotate(10deg)}}@keyframes fairy-glimmer{from{transform:translateY(0) rotate(0);opacity:.25}to{transform:translateY(-24px) rotate(50deg);opacity:.65}}@media(max-width:600px){.fairy{width:40px;opacity:.4}.fairy-1{left:-8px}.fairy-2{right:-8px}.fairy-3,.star-4{display:none}.fairy-star{font-size:12px;opacity:.3}}@media(prefers-reduced-motion:reduce){.fairy,.fairy-star{animation:none}}body.page-hidden .fairy,body.page-hidden .fairy-star{animation-play-state:paused}
