:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#19324d;background:#f5f9f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.app-shell{min-height:100vh;background:radial-gradient(circle at 85% 7%,#e8f5f0 0,transparent 29%),linear-gradient(180deg,#fbfdfd,#f2f8f6)}button,input,textarea{font:inherit}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:auto;padding:0 28px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#19324d}.brand-mark{display:flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:13px;color:#fff;font-weight:700;background:linear-gradient(135deg,#2d7c75,#174f55);box-shadow:0 8px 18px #2d7c7538}.brand strong{display:block;font-size:17px;letter-spacing:.06em}.brand small{display:block;margin-top:2px;color:#7b9099;font-size:11px}.secure-badge{color:#6b8588;font-size:12px}.access-page{max-width:1050px;min-height:calc(100vh - 76px);display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center;margin:auto;padding:40px 28px 100px}.eyebrow{color:#2d7c75;font-size:11px;font-weight:700;letter-spacing:.22em}.access-copy h1{margin:18px 0;font-size:58px;line-height:1.14;letter-spacing:-.05em}.access-copy h1 em{color:#2d7c75;font-style:normal}.access-copy p{max-width:560px;color:#6a8089;font-size:17px;line-height:1.9}.trust-row{display:flex;gap:22px;margin-top:30px;color:#547b75;font-size:13px}.access-card{position:relative;padding:42px;border:1px solid #dcebe6;border-radius:28px;background:#ffffffd9;box-shadow:0 24px 60px #1b5d5120}.card-icon{display:flex;width:48px;height:48px;align-items:center;justify-content:center;border-radius:16px;background:#e7f4ef;color:#2d7c75;font-size:23px}.access-card h2{margin:24px 0 8px;font-size:25px}.access-card p,.help-text{color:#80939a;font-size:13px}.access-card input,.modal input,.modal textarea{width:100%;border:1px solid #dce7e8;border-radius:12px;padding:14px 15px;outline:none;background:#fbfdfd}.access-card input{margin:20px 0 12px}.access-card input:focus,.modal input:focus,.modal textarea:focus{border-color:#2d7c75;box-shadow:0 0 0 3px #2d7c751c}.primary-btn,.secondary-btn,.outline-btn{border:0;border-radius:11px;padding:13px 19px;cursor:pointer;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:12px}.primary-btn{color:#fff;background:#2d7c75;box-shadow:0 8px 16px #2d7c7530}.primary-btn:hover{background:#246b66}.primary-btn:disabled{opacity:.55;cursor:not-allowed}.access-card .primary-btn{width:100%}.help-text{text-align:center;margin-top:22px}.error-text{margin-top:12px;color:#bf5959;font-size:13px}.dashboard-page{max-width:1180px;margin:auto;padding:50px 28px 70px}.welcome-row{display:flex;align-items:end;justify-content:space-between;gap:20px}.welcome-row h1{margin:13px 0 8px;font-size:34px;letter-spacing:-.04em}.welcome-row p{margin:0;color:#71858d}.outline-btn,.secondary-btn{border:1px solid #d7e5e4;background:#fff;color:#376a69}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:32px 0 18px}.metric-card{padding:25px;border:1px solid #e1ecea;border-radius:20px;background:#fff;box-shadow:0 10px 28px #1e596d0a}.metric-card strong{display:block;margin-top:12px;font-size:31px;color:#19324d}.metric-label{color:#6d838a;font-size:13px}.metric-hint{display:block;margin-top:9px;color:#9aaab0;font-size:12px}.balance-card{background:linear-gradient(135deg,#1f6863,#3a8c7e);border:0}.balance-card strong,.balance-card .metric-label,.balance-card .metric-hint{color:#fff}.balance-card .metric-hint{color:#d5eee7}.warning-card{border-color:#f0dfbe;background:#fffaf1}.action-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;margin:18px 0;border:1px solid #e1ecea;border-radius:18px;background:#fff}.action-bar strong{display:block}.action-bar span{display:block;color:#82969b;font-size:12px;margin-top:5px}.action-buttons{display:flex;gap:9px;flex-wrap:wrap}.compact{padding:11px 16px}.link-btn{font-size:13px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{padding:23px;border:1px solid #e1ecea;border-radius:20px;background:#fff;box-shadow:0 10px 28px #1e596d0a}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.panel h2{margin:0;font-size:18px}.panel-title p{margin:5px 0 0;color:#8b9da2;font-size:12px}.panel-count{color:#2d7c75;font-size:12px}.product-row,.bill-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #edf2f1}.product-icon{display:flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:12px;color:#2d7c75;background:#e9f5f1}.product-info,.bill-row>div:first-child{flex:1}.product-info strong,.bill-row strong{display:block;font-size:14px}.product-info small,.bill-row small{display:block;margin-top:5px;color:#8a9da2;font-size:12px}.status{display:inline-block;margin-top:6px;padding:4px 8px;border-radius:999px;font-size:11px}.status.active,.status.paid{color:#28776b;background:#e7f4ef}.status.suspended,.status.overdue{color:#b85252;background:#fff0f0}.status.pending{color:#a97832;background:#fff5df}.bill-right{text-align:right}.bill-right strong{color:#2d7c75}.empty{text-align:center;color:#9aabb0;padding:28px}.dashboard-footer{text-align:center;color:#9aaab0;font-size:12px;padding-top:30px}.dashboard-footer span{padding:0 8px}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#163d425c;z-index:10}.modal{position:relative;width:min(420px,100%);padding:30px;border-radius:22px;background:#fff;box-shadow:0 22px 60px #143c4438}.modal h2{margin:0 0 8px}.modal p{color:#81949a;font-size:13px;line-height:1.7}.modal label{display:block;margin:18px 0 7px;color:#526c74;font-size:13px;font-weight:600}.modal textarea{min-height:90px;resize:vertical}.amount-input{display:flex;align-items:center;gap:7px;color:#2d7c75;font-size:20px;font-weight:600}.amount-input input{font-size:22px}.full{width:100%;margin-top:22px}.close{position:absolute;right:16px;top:12px;border:0;background:none;color:#8b9da2;font-size:26px;cursor:pointer}@media(max-width:760px){.topbar{padding:0 18px}.access-page{display:block;padding:45px 20px}.access-copy h1{font-size:42px}.access-card{margin-top:45px;padding:28px}.dashboard-page{padding:35px 18px}.welcome-row{align-items:start;flex-direction:column}.metric-grid,.content-grid{grid-template-columns:1fr}.action-bar{align-items:stretch;flex-direction:column}.action-buttons>*{flex:1}.secure-badge{display:none}}.landing-hero{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;padding:85px 28px 100px}.hero-copy h1{margin:18px 0;font-size:58px;line-height:1.13;letter-spacing:-.05em;color:#19324d}.hero-copy h1 em{color:#2d7c75;font-style:normal}.hero-copy p{max-width:590px;color:#6b8088;font-size:17px;line-height:1.9}.hero-actions{display:flex;gap:12px;margin-top:30px}.hero-trust{display:flex;gap:24px;margin-top:24px;color:#5f837e;font-size:13px}.hero-visual{min-height:390px;display:flex;align-items:center;justify-content:center;position:relative}.visual-glow{position:absolute;width:340px;height:340px;border-radius:50%;background:#ccefe4;filter:blur(3px)}.visual-card{position:relative;width:330px;padding:34px;border:1px solid #ffffffaa;border-radius:28px;background:#ffffffd9;box-shadow:0 24px 65px #236b5d2e;transform:rotate(3deg)}.visual-label{color:#6d8d90;font-size:12px;letter-spacing:.12em}.visual-card strong{display:block;margin:28px 0;color:#19324d;font-size:32px;line-height:1.35}.visual-card b{color:#2d7c75}.visual-lines{display:grid;gap:9px}.visual-lines i{height:7px;border-radius:9px;background:#e5f2ee}.visual-lines i:nth-child(1){width:80%;background:#c6e8de}.visual-lines i:nth-child(2){width:62%}.visual-lines i:nth-child(3){width:44%;background:#f4dfb7}.section{max-width:1180px;margin:auto;padding:15px 28px 95px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.section h2,.about-copy h2{margin:14px 0 8px;color:#19324d;font-size:34px;letter-spacing:-.04em}.section-heading p{margin:0;color:#7a8f96}.text-btn{border:0;background:none;color:#2d7c75;cursor:pointer;font-weight:600}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.product-card{padding:25px;border:1px solid #deebe7;border-radius:20px;background:#fff;box-shadow:0 12px 30px #1e596d0b;transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-4px);box-shadow:0 18px 35px #1e596d18}.product-top{display:flex;align-items:center;justify-content:space-between}.product-symbol{display:flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:13px;color:#2d7c75;background:#e8f4f0}.product-code{color:#99a9ae;font-size:11px}.product-card h3{margin:20px 0 10px;color:#19324d;font-size:20px}.product-card p{min-height:55px;color:#778b92;line-height:1.7;font-size:13px}.price{display:flex;align-items:baseline;gap:5px;margin:22px 0}.price strong{color:#2d7c75;font-size:29px}.price span{color:#8ea1a5;font-size:13px}.product-btn{width:100%;padding:12px;border:1px solid #cde2dc;border-radius:11px;color:#2d7c75;background:#f4fbf8;cursor:pointer;font-weight:600}.product-btn:hover{background:#e5f4ef}.empty-public{text-align:center;padding:50px;color:#8a9ca2}.about-section{max-width:1180px;margin:0 auto 80px;display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:48px 50px;border-radius:26px;background:#1f6863;color:#fff}.about-copy h2{color:#fff}.about-copy p{color:#d4ece6;line-height:1.9}.service-points{display:grid;gap:14px}.service-points div{padding:17px 20px;border:1px solid #ffffff2d;border-radius:15px;background:#ffffff12}.service-points strong,.service-points span{display:block}.service-points span{margin-top:5px;color:#c2e2dc;font-size:13px}.wide{max-width:520px}.modal-register{display:block;margin:18px auto 0}.selected-products{display:flex;align-items:center;justify-content:space-between;margin:18px 0;color:#6f858b;font-size:13px}.success-modal{text-align:center}.success-icon{display:flex;width:52px;height:52px;align-items:center;justify-content:center;margin:0 auto 18px;border-radius:50%;color:#fff;background:#2d7c75;font-size:28px}.success-modal .secondary-btn{margin-top:10px}.full{width:100%}@media(max-width:760px){.nav-links a{display:none}.landing-hero{display:block;padding:55px 20px 65px}.hero-copy h1{font-size:42px}.hero-visual{min-height:300px;margin-top:25px}.section{padding:10px 20px 65px}.section-heading{display:block}.section-heading .text-btn{display:block;margin-top:15px}.product-grid{grid-template-columns:1fr}.about-section{display:block;margin:0 20px 50px;padding:30px 25px}.service-points{margin-top:28px}.hero-actions{flex-wrap:wrap}.hero-actions>*{flex:1}.hero-trust{flex-wrap:wrap;gap:10px}}.nav-links{display:flex;align-items:center;gap:28px}.nav-links a{position:relative;color:#47636f;font-size:14px;font-weight:600;text-decoration:none;transition:color .18s ease}.nav-links a:hover,.nav-links a.router-link-active{color:#2d7c75}.nav-links a.router-link-active:after{position:absolute;left:0;right:0;bottom:-10px;height:2px;border-radius:2px;background:#2d7c75;content:""}.nav-login-btn{width:auto;padding:8px 20px;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;transition:all .18s ease}.nav-login-btn:hover{border-color:#2d7c75;background:#eef7f4}@media(max-width:760px){.topbar{height:auto;flex-wrap:wrap;gap:10px;padding:16px 18px}.nav-links{gap:16px;flex-wrap:wrap}}.home-footer{display:flex;max-width:1180px;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 auto;padding:34px 28px 64px;border-top:1px solid #e3efeb;color:#6b8588;font-size:13px}.home-footer a{color:#2d7c75;font-weight:600;text-decoration:none}.about-page{max-width:1080px;margin:0 auto;padding:46px 28px 76px}.about-hero{padding:40px 44px;border-radius:24px;color:#eef9f4;background:linear-gradient(135deg,#0f4143,#1a625d);box-shadow:0 18px 40px #11494824}.about-hero .eyebrow{color:#e7c37c}.about-hero h1{max-width:720px;margin:16px 0 12px;font-size:34px;line-height:1.3;font-weight:700}.about-hero p{max-width:640px;color:#ebf9f3bd;font-size:15px;line-height:1.8}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:20px;margin-top:24px;align-items:start}.about-panel{padding:30px 32px;border:1px solid #dcebe6;border-radius:22px;background:#fff;box-shadow:0 12px 30px #1b5d5114}.panel-head h2{margin:8px 0 0;color:#19324d;font-size:22px}.about-list{display:grid;gap:18px;margin:20px 0 0;padding:0;list-style:none}.about-list li{padding-bottom:16px;border-bottom:1px solid #eef5f2}.about-list li:last-child{border-bottom:0;padding-bottom:0}.about-list strong{display:block;margin-bottom:5px;color:#1f524e;font-size:15px}.about-list span{color:#7b9099;font-size:13px;line-height:1.75}.contact-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #eef5f2;font-size:14px}.contact-row span{color:#7b9099}.contact-row a{color:#2d7c75;font-weight:600;text-decoration:none}.contact-tip{margin:16px 0 0;color:#7b9099;font-size:13px;line-height:1.7}.about-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:22px;padding:34px 40px;border-radius:22px;color:#eef9f4;background:linear-gradient(135deg,#174f55,#2d7c75);box-shadow:0 16px 36px #174f5529}.about-cta .eyebrow{color:#e7c37c}.about-cta h2{margin:8px 0 6px;font-size:24px}.about-cta p{margin:0;color:#ebf9f3b3;font-size:13px}.cta-actions{display:flex;gap:12px;flex-wrap:wrap}.cta-actions a{text-decoration:none}.about-cta .secondary-btn{border:0;color:#174f55;background:#fff}@media(max-width:860px){.about-grid{grid-template-columns:1fr}.about-hero{padding:30px 26px}.about-cta{padding:28px 24px}}.product-card-link{cursor:pointer}.product-thumb{overflow:hidden;height:150px;margin:-25px -25px 16px;background:#eef7f4}.product-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.product-card-link:hover .product-thumb img{transform:scale(1.04)}.detail-page{max-width:1080px;margin:0 auto;padding:46px 28px 76px}.detail-hero{padding:40px 44px;border-radius:24px;color:#eef9f4;background:linear-gradient(135deg,#0f4143,#1a625d);box-shadow:0 18px 40px #11494824}.detail-hero .eyebrow{color:#e7c37c}.detail-hero h1{max-width:720px;margin:16px 0 12px;font-size:34px;line-height:1.3;font-weight:700}.detail-subtitle{max-width:640px;margin:0;color:#ebf9f3c7;font-size:15px;line-height:1.8}.detail-price{display:flex;align-items:baseline;gap:8px;margin:22px 0 0}.detail-price strong{color:#f4dfb7;font-size:34px;font-weight:700}.detail-price span{color:#ebf9f3b3;font-size:15px}.detail-price em{margin-left:10px;color:#ebf9f399;font-size:13px;font-style:normal}.detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.detail-actions .secondary-btn{border:0;color:#174f55;background:#fff}.detail-missing{padding:80px 20px;text-align:center}.detail-missing h2{margin:0 0 10px;color:#19324d;font-size:22px}.detail-missing p{margin:0 0 24px;color:#7b9099;font-size:14px}.detail-shots{margin-top:26px}.shot-main{overflow:hidden;border:1px solid #dcebe6;border-radius:20px;background:#fff;box-shadow:0 12px 30px #1b5d5114}.shot-main img{display:block;width:100%;max-height:520px;object-fit:contain;background:#f5f9f8}.shot-thumbs{display:flex;gap:10px;overflow-x:auto;margin-top:12px;padding-bottom:4px}.shot-thumbs button{flex:0 0 auto;width:112px;height:70px;overflow:hidden;padding:0;border:2px solid transparent;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .18s ease}.shot-thumbs button.active{border-color:#2d7c75}.shot-thumbs img{width:100%;height:100%;object-fit:cover}.detail-block{margin-top:46px}.detail-block-head{margin-bottom:18px}.detail-block-head h2{margin:8px 0 0;color:#19324d;font-size:24px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.feature-card{padding:20px 22px;border:1px solid #dcebe6;border-radius:18px;background:#fff;box-shadow:0 10px 24px #1b5d510f}.feature-card h3{margin:0 0 8px;color:#1f524e;font-size:15px}.feature-card p{margin:0;color:#7b9099;font-size:13px;line-height:1.75}.detail-copy{padding:26px 30px;border:1px solid #dcebe6;border-radius:20px;background:#fff}.detail-copy p{margin:0 0 14px;color:#47636f;font-size:14px;line-height:1.9}.detail-copy p:last-child{margin-bottom:0}.billing-note{margin:0;padding:20px 24px;border:1px solid #e1d3ac;border-radius:18px;color:#8a6a2a;background:#fff9ea;font-size:14px;line-height:1.85}.faq-list{display:grid;gap:10px}.faq-item{overflow:hidden;border:1px solid #dcebe6;border-radius:16px;background:#fff}.faq-item button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px;border:0;color:#19324d;background:transparent;font-size:14px;font-weight:600;text-align:left;cursor:pointer}.faq-item button b{color:#2d7c75;font-size:18px;font-weight:700}.faq-item p{margin:0;padding:0 20px 18px;color:#7b9099;font-size:13px;line-height:1.85}.detail-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:52px;padding:34px 40px;border-radius:22px;color:#eef9f4;background:linear-gradient(135deg,#174f55,#2d7c75);box-shadow:0 16px 36px #174f5529}.detail-cta .eyebrow{color:#e7c37c}.detail-cta h2{margin:8px 0 6px;font-size:24px}.detail-cta p{margin:0;color:#ebf9f3b8;font-size:13px}.detail-cta .secondary-btn{border:0;color:#174f55;background:#fff}@media(max-width:860px){.detail-hero{padding:30px 26px}.detail-hero h1{font-size:26px}.detail-price strong{font-size:28px}.detail-cta{padding:28px 24px}.detail-copy{padding:22px 20px}}.pay-qr{margin:6px 0 18px;padding:12px;border:1px solid #dcebe6;border-radius:16px;text-align:center;background:#fff}.pay-qr img{display:block;width:100%;max-width:240px;margin:0 auto}.pay-link{display:block;margin-bottom:10px;text-align:center;text-decoration:none}.center-invalid-page{display:flex;min-height:70vh;align-items:center;justify-content:center;padding:40px 20px}.center-invalid-card{width:min(460px,100%);padding:40px 36px;border:1px solid #dcebe6;border-radius:24px;text-align:center;background:#fff;box-shadow:0 18px 44px #1b5d511a}.center-invalid-card h2{margin:12px 0 10px;color:#19324d;font-size:24px}.center-invalid-card p{margin:0 0 24px;color:#7b9099;font-size:14px;line-height:1.7}
