/* 公开首页：深蓝、钴蓝与银白。静态资源直接由 FastAPI 提供。 */
:root{--ink:#172641;--muted:#748097;--green:#3562d5;--line:#e3e8f1;--bg:#f5f7fb;--el-color-primary:#3562d5;--el-color-primary-light-3:#6f8fe2;--el-color-primary-light-5:#9ab0ea;--el-color-primary-light-7:#c2d0f2;--el-color-primary-light-8:#d7e0f7;--el-color-primary-light-9:#edf2fc;--el-color-primary-dark-2:#244cae;--el-color-success:#4777bb}
html{scroll-behavior:smooth;scroll-padding-top:28px}
.landing{background:#fff;color:#172641;font-size:15px;overflow:clip}
.site-wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}
.landing-top{background:#0b1734;color:#fff;position:relative;background-image:radial-gradient(ellipse at 80% 35%,#23457c66,transparent 55%)}
.site-nav{height:100px;display:flex;align-items:center;justify-content:space-between;gap:26px;border-bottom:1px solid #ffffff12}
.site-nav .brand img{width:44px;height:44px}.site-nav .brand span{font-size:23px;letter-spacing:1px}.site-nav .brand small{font-size:7px;letter-spacing:1.7px;color:#8e9fbd}
.site-nav nav{display:flex;gap:36px;font-size:13px;color:#b2bed5}.site-nav a:hover{color:#fff}.nav-account{display:flex;align-items:center;gap:25px;font-size:13px}
.site-button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:#416ff0;color:#fff;border:1px solid transparent;border-radius:7px;padding:17px 25px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s}
.site-button:hover{background:#315fdf;color:white;transform:translateY(-2px);box-shadow:0 8px 30px #3161d32e}.site-button.small{padding:11px 18px;font-size:12px}.site-button:disabled{opacity:.6;cursor:wait;transform:none}
.site-text-link{display:inline-flex;gap:18px;align-items:center;font-size:13px;color:#4267bc}
.landing-hero{min-height:620px;display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center;padding-block:65px 75px}
.site-kicker{font-size:10px;font-weight:600;letter-spacing:1.8px;color:#6680ab;margin-bottom:23px}
.hero-copy .site-kicker{display:flex;gap:10px;align-items:center;color:#b1c5f0;font-size:11px;letter-spacing:2px}.site-kicker>span{width:6px;height:6px;background:#8baaff;border-radius:50%;box-shadow:0 0 12px #739cff}
.hero-copy h1{font-size:clamp(44px,4.9vw,70px);line-height:1.22;letter-spacing:-2px;font-weight:650;margin-bottom:27px}.hero-copy h1 em{font-style:normal;background:linear-gradient(100deg,#fff,#8eafff);background-clip:text;color:transparent}
.hero-description{color:#a5b4cf;font-size:16px;line-height:1.95;margin-bottom:31px}
.site-actions{display:flex;align-items:center;gap:28px}.site-actions .site-text-link{color:#c6d2eb}
.hero-price{font-size:11px;color:#8b9bb8;margin:24px 0 0}.hero-price strong{color:#d6e3ff;font-size:17px;font-weight:500;margin-inline:5px}.hero-price>span{margin-left:8px}
.trust-visual{height:485px;position:relative;isolation:isolate}
.visual-grid{position:absolute;inset:30px -20px;background-image:linear-gradient(#a9caff09 1px,transparent 1px),linear-gradient(90deg,#a9caff09 1px,transparent 1px);background-size:35px 35px;mask-image:radial-gradient(ellipse,#000 30%,transparent 73%);z-index:-1}
.trust-orbit{position:absolute;border:1px solid #769ffb26;border-radius:50%;width:440px;height:245px;top:105px;left:50%;transform:translateX(-50%) rotate(-25deg);z-index:-1}.orbit-b{transform:translateX(-50%) rotate(35deg);height:340px;width:370px;top:65px;border-style:dashed}
.visual-topline,.visual-bottomline{display:flex;justify-content:space-between;font:9px Consolas,monospace;letter-spacing:1.4px;color:#677d9e;position:absolute;left:25px;right:15px;top:0}.visual-bottomline{top:auto;bottom:0;border-top:1px solid #ffffff12;padding-top:17px}
.trust-shield{position:absolute;width:235px;top:20px;left:calc(50% - 115px);filter:drop-shadow(0 0 45px #6591ff50);transform:rotate(10deg);animation:shield-float 7s ease-in-out infinite}
.domain-card{position:absolute;top:237px;left:50%;width:342px;transform:translateX(-50%) rotate(-5deg);background:linear-gradient(140deg,#fff,#e9f0fc);border:1px solid #fff;border-radius:12px;color:#173160;padding:20px 23px;box-shadow:0 30px 65px #02081766;z-index:2}
.domain-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.mini-lock{font:10px Consolas,monospace;letter-spacing:2px;color:#4369b7}.demo-label{font-size:9px;color:#8191ae}
.coverage-tabs{display:flex;gap:4px;margin-bottom:13px;background:#dce6f6;width:max-content;padding:3px;border-radius:5px}.coverage-tabs button{border:0;background:none;font-size:10px;color:#7a8aa5;padding:4px 13px;border-radius:4px}.coverage-tabs button.selected{background:white;color:#294c90;box-shadow:0 1px 4px #14285412}
.domain-card>strong{font:23px Consolas,monospace;letter-spacing:-1px}.domain-detail{display:flex;justify-content:space-between;border-top:1px solid #c8d5e970;margin-top:14px;padding-top:13px;font-size:9px;color:#7385a6}
.floating-chip{position:absolute;z-index:3;background:#1b2e50e8;border:1px solid #91b2ef38;border-radius:9px;display:flex;align-items:center;gap:12px;padding:14px 18px;box-shadow:0 15px 35px #040d2330;font-size:11px;color:#e0eaff}
.floating-chip>span{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#3d63ab40;font-size:20px;color:#a9c4ff}.floating-chip small{display:block;color:#8196bb;font-size:9px;margin-top:4px}.chip-top{right:-3px;top:95px}.chip-bottom{left:-5px;bottom:17px}
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff16;padding-block:27px 30px;gap:30px}.trust-strip>div{display:flex;gap:17px;align-items:center}.trust-strip>div>span{font:12px Consolas,monospace;color:#57729c;border:1px solid #ffffff1a;padding:9px;border-radius:50%}.trust-strip p{margin:0}.trust-strip strong{font-size:12px;font-weight:500;color:#d5deee}.trust-strip small{display:block;font-size:10px;color:#7286a8;margin-top:5px}
.site-section{padding-block:96px}.section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:43px}.section-title h2,.getting-started h2,.faq-section h2{font-size:36px;line-height:1.4;letter-spacing:-1px;margin:0}.section-title p:last-child{color:#8290a6;font-size:13px;line-height:1.9;margin-bottom:5px}.section-title .site-kicker{margin-bottom:15px;color:#5171b2}
.pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.pricing-card{padding:35px 38px;background:#f9faff;border:1px solid #e0e6f2;border-radius:12px;position:relative}.pricing-card.featured{background:#edf3ff;border-color:#c0d0f4}
.product-label{display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:1px;color:#7b8fac;margin-bottom:25px}.featured .product-label{color:#466fc0}
.pricing-card h3{font-size:26px;letter-spacing:-.5px;margin-bottom:10px}.pricing-card>p{font-size:13px;color:#7e8ba3}.product-price{display:flex;gap:6px;align-items:baseline;margin:24px 0}.product-price>span{font-size:22px}.product-price strong{font-size:49px;font-weight:550;letter-spacing:-2px;line-height:1.3}.product-price small{font-size:11px;color:#7e8ba3;margin-left:8px}
.domain-example{border-block:1px solid #cfdbed88;padding:18px 0}.domain-example>span{font:16px Consolas,monospace}.domain-example>small{display:block;font-size:10px;color:#8897ac;margin-top:7px}
.pricing-card ul{list-style:none;padding:0;margin:24px 0 28px;font-size:12px;color:#586c8a;line-height:2.6}.pricing-card li:before{content:'✓';color:#5c83cc;padding-right:12px}.pricing-card .site-button{width:100%;background:white;color:#315baa;border-color:#c5d2e9}.pricing-card.featured .site-button{background:#3564df;color:white;border-color:#3564df}.pricing-card .site-button:hover{background:#e5edfe}.pricing-card.featured .site-button:hover{background:#244fbd}
.pricing-note{text-align:center;font-size:11px;color:#8b97ab;margin:23px 0 37px}.provider-strip{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:17px 28px;padding-top:25px;border-top:1px solid #edf0f5}.provider-strip>span{font-size:10px;color:#9aa6b8}.provider-strip strong{font-size:12px;color:#687c9c;font-weight:500}
.catalog-empty{padding:40px;border:1px solid #e0e6f2;border-radius:12px;background:#f7f9fd;text-align:center}.catalog-empty p{color:#748097}
.delivery-section{background:#f3f6fb;border-block:1px solid #e7edf5}.delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.delivery-grid article{padding:30px;background:white;border-radius:10px;border:1px solid #e2e8f1}.delivery-symbol{display:flex;justify-content:space-between;align-items:center;color:#416fc3;font-size:34px;margin-bottom:27px}.delivery-symbol span{font:10px Consolas,monospace;color:#a3afc2}.protocol{font:10px Consolas,monospace;color:#7390bd;letter-spacing:1.5px}.delivery-grid h3{font-size:20px;margin:10px 0 14px}.delivery-grid p{color:#8290a4;font-size:13px;line-height:1.95;min-height:77px}.flow-sample{font:11px Consolas,'Microsoft YaHei',sans-serif;border-top:1px solid #edf1f6;padding-top:22px;color:#6b83a9;display:flex;justify-content:space-between}.flow-sample span{color:#aebcd0}
.delivery-foot{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:27px}.delivery-foot>span{font-size:13px;color:#536988}.delivery-foot p{font-size:11px;color:#8b98ac;margin:0}
.getting-started{display:grid;grid-template-columns:1fr 1fr;gap:80px}.getting-started>div>p:not(.site-kicker){font-size:14px;line-height:1.9;color:#8190a7;margin:23px 0}.onboarding-steps{list-style:none;margin:0;padding:0}.onboarding-steps li{display:flex;gap:25px;padding:25px 0;border-bottom:1px solid #e7edf5}.onboarding-steps li:first-child{padding-top:0}.onboarding-steps li>span{font:13px Consolas,monospace;display:grid;place-items:center;align-self:flex-start;width:42px;height:42px;border:1px solid #cddbf3;background:#f5f8fe;border-radius:50%;flex:none;color:#688acd}.onboarding-steps h3{font-size:17px;margin:0 0 7px}.onboarding-steps p{font-size:12px;color:#8b97aa;margin:0}
.faq-section{display:grid;grid-template-columns:1fr 1.4fr;gap:55px;padding-block:0 95px}.faq-list details{border-bottom:1px solid #e3e9f2}.faq-list summary{padding:20px 0;cursor:pointer;font-size:14px;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:#7890b5}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{font-size:13px;color:#7e8da5;line-height:1.9;margin-bottom:25px}
.closing-cta{padding:46px 55px;background:#102449;border-radius:12px;color:white;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden}.closing-cta .site-kicker{color:#829cca;font-size:9px}.closing-cta h2{font-size:34px;line-height:1.4;margin:0}.closing-cta>div:first-child,.closing-cta>a{z-index:1}.closing-orbit{position:absolute;right:16%;top:-100px;width:410px;height:410px;border-radius:50%;border:1px solid #628ce42b;box-shadow:0 0 0 45px #628ce408,0 0 0 90px #628ce407}.landing-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:45px}.landing-footer .brand span{font-size:19px;letter-spacing:0}.landing-footer .brand small{font-size:9px;color:#8e9db4;letter-spacing:1px}.landing-footer p,.landing-footer>a:last-child{font-size:11px;color:#8e9db4;margin:0}
.landing a:focus-visible,.landing button:focus-visible,.landing summary:focus-visible{outline:3px solid #a7bfff;outline-offset:5px}
.auth-home{display:inline-block;color:#5575aa;font-size:12px;margin-bottom:30px}
.auth-story{background:#102449}.auth-story .brand small,.story-main .eyebrow{color:#92aad0}.story-main p{color:#a5b6d3}.story-foot{color:#829cc6}.orbit-ring,.orbit-ring:after{border-color:#37517a}.orbit-label{background:#1d345a;border-color:#4d6893;color:#bfd2f4}.orbit img{box-shadow:0 20px 50px #07142e}.auth-story .brand img{border-color:#3b5580}
.sidebar nav button.selected{color:#3159ac;background:#edf2fc}.sidebar nav button:hover{background:#f4f7fd}.nav-count,.avatar,.domain-icon{background:#e8eefb;color:#5c79ad}.hero-card{background:#edf3fd;border-color:#dce5f6}.hero-card p{color:#7d8fae}.hero-card .el-button{border-color:#cddbf2;color:#4b6ba4}.pill{background:#dfe9fb;color:#6684b7}.balance-card{background:#142c54}.balance-card span,.balance-card p,.balance-note{color:#a7bade}
@keyframes shield-float{0%,100%{transform:translateY(0) rotate(10deg)}50%{transform:translateY(-10px) rotate(7deg)}}
@media(min-width:1600px){.landing-hero{min-height:670px}.hero-copy h1{font-size:72px}}
@media(max-width:1050px){.site-wrap{width:calc(100% - 56px)}.site-nav nav{gap:20px}.landing-hero{gap:15px}.hero-copy h1{font-size:52px}.hero-description{font-size:14px}.trust-visual{transform:scale(.87);transform-origin:center;min-width:0}.site-actions{gap:17px}.site-text-link{font-size:11px}.site-button{padding:15px 20px;gap:20px}.trust-strip{gap:20px}.trust-strip>div{gap:10px}.trust-strip strong{font-size:11px}.pricing-card{padding:30px}.delivery-grid article{padding:24px}.getting-started{gap:45px}}
@media(max-width:760px){.site-wrap{width:calc(100% - 40px)}.site-nav{height:80px;gap:12px}.site-nav nav{display:none}.site-nav .brand span{font-size:20px}.site-nav .brand small{font-size:6px;letter-spacing:1px}.site-nav .brand img{width:37px;height:37px}.nav-account{gap:16px;font-size:12px}.site-button.small{padding:9px 12px;font-size:11px}.landing-hero{grid-template-columns:1fr;padding:48px 0 30px;gap:30px}.hero-copy h1{font-size:53px;letter-spacing:-2px}.hero-description{font-size:14px}.hero-price>span{display:none}.trust-visual{height:440px;transform:none;max-width:500px;width:100%;margin:auto}.trust-shield{width:210px;left:calc(50% - 105px)}.domain-card{width:min(310px,85%);top:215px}.chip-top{right:0;top:77px;font-size:10px;padding:10px}.chip-bottom{left:0;bottom:12px;font-size:10px;padding:10px}.visual-topline{left:0;right:0;font-size:8px}.trust-orbit{width:95%}.orbit-b{width:85%}.trust-strip{grid-template-columns:1fr;padding:22px 0;gap:18px}.trust-strip>div{gap:15px}.trust-strip strong{font-size:12px}.trust-strip small{display:inline;margin-left:15px;font-size:10px}.trust-strip>div>span{font-size:10px;padding:7px}.site-section{padding-block:60px}.section-title{display:block;margin-bottom:28px}.section-title h2,.getting-started h2,.faq-section h2{font-size:28px}.section-title>p{margin-top:20px}.pricing-grid{grid-template-columns:1fr;gap:20px}.pricing-card{padding:27px}.pricing-card h3{font-size:25px}.product-price strong{font-size:44px}.pricing-note{line-height:1.9;text-align:left}.provider-strip{justify-content:flex-start;gap:16px 22px}.provider-strip>span{width:100%}.delivery-grid{grid-template-columns:1fr;gap:16px}.delivery-grid article{padding:27px}.delivery-symbol{margin-bottom:18px}.delivery-grid p{min-height:0}.delivery-foot{display:block}.delivery-foot p{margin-top:10px;line-height:1.8}.getting-started{grid-template-columns:1fr;gap:35px}.faq-section{grid-template-columns:1fr;gap:15px;padding-bottom:60px}.closing-cta{padding:32px;display:block}.closing-cta h2{font-size:29px;margin-bottom:25px}.closing-orbit{right:-170px}.landing-footer{flex-wrap:wrap;padding-block:32px;gap:20px}.landing-footer p{order:3;width:100%;border-top:1px solid #e8edf5;padding-top:20px}.hero-copy .site-kicker{font-size:10px}.site-actions{gap:19px}.trust-strip small{display:block;margin:2px 0 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.trust-shield{animation:none}.landing *{transition:none!important}}
/* Email authentication shares Element Plus controls with the workspace. */
.email-code-row{display:flex;gap:10px;width:100%;min-width:0}
.email-code-row .el-input{flex:1;min-width:0}
.email-code-row .el-button{flex-shrink:0;margin-left:0}
.code-error{margin-bottom:18px}
.email-reauth-dialog{max-width:calc(100vw - 32px)}
.local-captcha{min-height:160px}.local-captcha>p{font-size:13px;line-height:1.7}.captcha-hint{display:block;height:40px;max-width:100%;margin:0 auto 12px}.captcha-board{position:relative;width:100%;cursor:crosshair;touch-action:manipulation;user-select:none}.captcha-board>img{display:block;width:100%;height:100%;border-radius:8px;pointer-events:none}.captcha-board>span{position:absolute;display:grid;place-items:center;width:24px;height:24px;border:2px solid #fff;border-radius:50%;background:#285fc8;color:white;transform:translate(-50%,-50%);font-size:12px;pointer-events:none;box-shadow:0 1px 5px #0008}.local-captcha>small{display:block;margin:10px 0;color:#74839b}.captcha-actions{display:flex;justify-content:space-between;gap:6px;margin-top:16px}.captcha-actions>.el-button+.el-button{margin-left:0}
.reauth-actions{display:flex;justify-content:flex-end;gap:8px}
.email-reauth-dialog .muted{line-height:1.7;overflow-wrap:anywhere}
@media(max-width:360px){.hero-copy h1{font-size:44px}.hero-description{font-size:13px}}
.landing-footer .footer-contact{font-size:12px;color:#5575aa;white-space:nowrap}
.auth-page-links{display:flex;justify-content:space-between;gap:20px}
.contact-section{padding-bottom:95px}
.contact-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:48px;padding:44px 48px;border:1px solid #dde5f1;border-radius:18px;background:#fff;box-shadow:0 16px 60px #28467508}
.contact-label{display:inline-block;font-size:11px;color:#4169ac;background:#edf3ff;border-radius:5px;padding:5px 10px;margin-bottom:18px}
.contact-copy h3{font-size:32px;line-height:1.45;letter-spacing:-.8px;margin-bottom:17px}.contact-copy>p{font-size:13px;line-height:1.9;color:#74839b;margin-bottom:24px}.contact-copy>small{display:block;font-size:11px;color:#8b98ad;margin-top:12px}
.contact-action{font-size:12px;padding:13px 17px;gap:22px}.contact-qr{text-align:center}.contact-qr img{display:block;width:196px;height:196px;border-radius:8px}.contact-qr>p{font-size:12px;color:#74839b;margin:14px 0 0}
.contact-footnote{font-size:12px;line-height:1.8;color:#8895a9;margin-top:20px}
@media(max-width:760px){.landing .site-nav{height:auto;flex-wrap:wrap;padding-block:18px 14px}.landing .site-nav nav{display:flex;order:3;width:100%;justify-content:space-between;gap:12px;padding-top:13px;border-top:1px solid #ffffff12;font-size:11px}.contact-section{padding-bottom:60px}.contact-card{grid-template-columns:1fr;gap:28px;padding:26px}.contact-copy h3{font-size:26px}.contact-copy>p br{display:none}.contact-qr{justify-self:center}.contact-copy>small{margin-top:9px}.contact-footnote{font-size:11px}}

/* Keepy public product offer; pricing comes from the shared catalog. */
.keepy-product-section{margin-top:96px;padding-top:72px;border-top:1px solid #dce5f3}.keepy-faq{margin-top:28px}
@media(max-width:760px){.keepy-product-section{margin-top:60px;padding-top:48px}.keepy-faq{margin-top:20px}}
.keepy-product-section{padding-bottom:96px}.keepy-offer{display:grid;grid-template-columns:1fr 1.4fr;border:1px solid #dce5f3;border-radius:12px;overflow:hidden}.keepy-offer-price{padding:38px;background:#edf3ff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.keepy-offer-price .product-label{width:100%;margin-bottom:22px}.keepy-offer-price h3{font-size:28px;margin:0 0 12px}.keepy-offer-description{font-size:13px;line-height:1.9;color:#627798;margin:0}.keepy-offer-price .product-price{margin:22px 0 12px}.keepy-offer-term,.keepy-sale-notice{font-size:12px;line-height:1.9;color:#627798;margin:0 0 24px}.keepy-offer-price .site-button{width:100%;gap:18px}.keepy-offer-price .site-text-link{margin-top:20px}.keepy-offer-features{list-style:none;margin:0;padding:12px 36px;align-self:center}.keepy-offer-features li{display:flex;gap:20px;padding:23px 0;border-bottom:1px solid #e7edf5}.keepy-offer-features li:last-child{border-bottom:0}.keepy-offer-features li>span{font:12px Consolas,monospace;color:#6a89bc;padding-top:4px}.keepy-offer-features h3{font-size:17px;margin:0 0 9px}.keepy-offer-features p{font-size:13px;line-height:1.9;color:#74839b;margin:0}.keepy-product-note{font-size:12px;line-height:1.9;color:#74839b;margin:18px 0 0}
@media(max-width:760px){.keepy-product-section{padding-bottom:60px}.keepy-offer{grid-template-columns:1fr}.keepy-offer-price{padding:26px}.keepy-offer-price h3{font-size:25px}.keepy-offer-description br{display:none}.keepy-offer-features{padding:0 26px}.keepy-offer-features li{gap:14px}.keepy-offer-features h3{font-size:16px}.keepy-product-note{font-size:11px}}
