body.auth-pending .app-shell,body.auth-locked .app-shell{visibility:hidden}
.auth-gate{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:18px;overflow-y:auto;overscroll-behavior:contain;background:#edf1f2}
.auth-gate[hidden]{display:none}
.auth-panel{width:min(420px,100%);padding:28px 30px 25px;border:1px solid #d4dfe3;border-radius:8px;background:#fff;box-shadow:0 20px 55px rgba(25,50,74,.13)}
.auth-brand{display:flex;align-items:center;gap:11px;padding-bottom:18px;border-bottom:1px solid #e0e6e8}
.auth-brand>span{width:34px;height:34px;display:grid;place-items:center;border:1px solid #c8a05b;border-radius:7px;background:#fffaf0;color:#a77225;font:18px serif}
.auth-brand strong,.auth-brand small{display:block}.auth-brand strong{font-size:15px}.auth-brand small{margin-top:2px;color:#829097;font-size:9px}
.auth-panel h1{margin:20px 0 14px;font-size:19px;letter-spacing:0}
.auth-tabs{height:36px;display:grid;grid-template-columns:1fr 1fr;padding:3px;border-radius:6px;background:#edf2f4}
.auth-tabs button{border:0;border-radius:4px;background:transparent;color:#73838b;font:600 11px "Segoe UI","Microsoft YaHei",sans-serif;cursor:pointer}
.auth-tabs button.active{background:#fff;color:#254e5e;box-shadow:0 1px 4px rgba(31,62,75,.12)}
.auth-form{margin-top:17px}.auth-form[hidden]{display:none}
.auth-form label{display:block;margin-bottom:13px;color:#657780;font-size:10px;font-weight:600}
.auth-form input{display:block;width:100%;height:38px;margin-top:6px;padding:0 10px;border:1px solid #d4dfe3;border-radius:5px;background:#fff;color:#19324a;font:12px "Segoe UI","Microsoft YaHei",sans-serif;outline:0}
.auth-form input:focus{border-color:#6f98a5;box-shadow:0 0 0 2px #e2eef1}
.auth-submit{width:100%;height:39px;margin-top:4px}
.auth-submit:disabled{cursor:wait;opacity:.58}
.local-experience{width:100%;height:39px;margin-top:17px}
.local-experience[hidden]{display:none}
.auth-message{min-height:18px;margin-top:12px;color:#a54a39;font-size:10px;line-height:1.6;text-align:center}
.account-btn{height:34px;max-width:190px;display:flex;align-items:center;gap:7px;padding:0 8px;border:1px solid #d7e0e4;border-radius:6px;background:#fff;color:#50656f;cursor:pointer}
.account-btn[hidden]{display:none}
.account-avatar{width:22px;height:22px;flex:0 0 22px;display:grid;place-items:center;border-radius:50%;background:#315866;color:#fff;font-size:10px;font-weight:700}
.account-name{max-width:70px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600}
.account-btn em{padding:2px 5px;border-radius:3px;background:#edf3f4;color:#5b747e;font-size:8px;font-style:normal;white-space:nowrap}
.account-btn.pro em{background:#e8f3ed;color:#2e684b}
.account-modal{display:none;position:fixed;inset:0;z-index:36;align-items:center;justify-content:center;padding:16px;background:rgba(23,43,55,.48)}
.account-modal.open{display:flex}
.account-dialog{width:min(720px,100%);max-height:min(720px,100%);overflow:auto;border-radius:8px;background:#fff;box-shadow:0 24px 72px rgba(22,42,54,.28)}
.account-dialog-head{height:68px;padding:15px 20px 10px;border-bottom:1px solid #dbe3e9;display:flex;align-items:flex-start;justify-content:space-between}
.account-dialog-head h2{margin:5px 0 0;font-size:19px;line-height:1;letter-spacing:0}
.account-overview{min-height:82px;display:flex;align-items:center;gap:13px;padding:16px 22px;border-bottom:1px solid #e0e6e8}
.account-large-avatar{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#315866;color:#fff;font-size:16px;font-weight:700}
.account-overview>div{min-width:0;flex:1}.account-overview strong,.account-overview span{display:block}.account-overview strong{font-size:13px}.account-overview div span{margin-top:3px;color:#819097;font-size:9px}
.account-overview em{padding:4px 7px;border-radius:3px;background:#edf3f4;color:#57717b;font-size:9px;font-style:normal}
.account-overview em.pro{background:#e8f3ed;color:#2e684b}
.account-plan-status{padding:11px 22px;background:#f7fafb;color:#647982;font-size:10px}
.plan-compare{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px 22px}
.plan-compare section{min-width:0;padding:15px;border:1px solid #dce4e6;border-radius:6px}
.plan-compare section.pro{border-color:#8aa7b0;background:#f8fbfb}
.plan-compare section>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #e0e6e8}
.plan-compare section strong{font-size:12px}.plan-compare section span{color:#819097;font-size:9px}
.plan-compare ul{min-height:80px;margin:12px 0 0;padding-left:17px;color:#64767e;font-size:9px;line-height:1.9}
.billing-status{min-height:26px;padding:7px 22px 5px;color:#9a5e36;font-size:10px;line-height:1.5;text-align:left}
.billing-status a{color:#246f68;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.billing-status a:focus-visible{outline:2px solid #c58d35;outline-offset:2px}
.checkout-qr-panel{margin:0 22px 14px;border:1px solid #bfd1cf;border-radius:6px;background:#f7fbfa;box-shadow:0 8px 24px rgba(28,64,67,.1)}
.checkout-qr-panel[hidden]{display:none}
.checkout-qr-head{min-height:54px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #d5e2df}
.checkout-qr-heading{min-width:0;display:flex;align-items:center;gap:10px}.checkout-qr-heading>div{min-width:0}.checkout-qr-heading strong,.checkout-qr-heading span{display:block}.checkout-qr-heading strong{color:#244b50;font-size:12px}.checkout-qr-heading span{margin-top:2px;color:#73878a;font-size:9px}
.checkout-qr-icon{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:5px;color:#17655d;background:#dcefeb}.checkout-qr-icon svg{width:17px;height:17px}
.checkout-qr-body{display:grid;grid-template-columns:224px minmax(0,1fr);align-items:center;gap:18px;padding:16px}
.checkout-qr-image-frame{width:224px;height:224px;display:grid;place-items:center;border:1px solid #d4dfdd;border-radius:5px;background:#fff;overflow:hidden}.checkout-qr-image-frame img{width:224px;height:224px;display:block;object-fit:contain;image-rendering:pixelated}
.checkout-qr-details{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.checkout-qr-details>span{color:#7b8d90;font-size:9px}.checkout-qr-details>strong{max-width:100%;margin-top:4px;color:#243f47;font-size:15px;overflow-wrap:anywhere}.checkout-qr-details>em{margin-top:7px;color:#9b6a1c;font-size:12px;font-style:normal;font-weight:700}.checkout-qr-details>small{margin-top:12px;color:#6d8184;font-size:10px;line-height:1.65}.checkout-qr-details>a{height:34px;margin-top:15px;text-decoration:none}.checkout-qr-details>a[hidden]{display:none}
.redeem-code-form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(260px,1.35fr);column-gap:14px;align-items:center;margin-top:8px;padding:14px 22px;border-top:1px solid #e1e7e9;border-bottom:1px solid #e1e7e9;background:#f8fafb}.redeem-code-copy{display:flex;align-items:center;gap:9px;min-width:0}.redeem-code-copy>svg{width:18px;height:18px;flex:0 0 18px;color:#315866}.redeem-code-copy label,.redeem-code-copy span{display:block}.redeem-code-copy label{color:#304b59;font-size:11px;font-weight:700}.redeem-code-copy span{margin-top:2px;color:#87969d;font-size:9px}.redeem-code-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.redeem-code-control input{width:100%;height:34px;min-width:0;padding:0 9px;border:1px solid #d4dfe3;border-radius:5px;background:#fff;color:#19324a;font:11px ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;outline:0}.redeem-code-control input:focus{border-color:#6f98a5;box-shadow:0 0 0 2px #e2eef1}.redeem-code-control input[aria-invalid=true]{border-color:#bd766b;box-shadow:0 0 0 2px #f8e8e5}.redeem-code-control button{height:34px}.redeem-code-status{grid-column:2;min-height:16px;padding-top:4px;color:#a54a39;font-size:9px}.redeem-code-status[data-kind=success]{color:#2e684b}.redeem-code-status[data-kind=info]{color:#71848c}
.account-actions{display:flex;justify-content:flex-end;padding:14px 22px 18px}.account-actions button{height:34px}
@media(max-width:700px){.account-name{display:none}.account-btn{padding:0 5px}.auth-panel{padding:23px 20px}.plan-compare{grid-template-columns:1fr}.plan-compare ul{min-height:0}.account-dialog{max-height:100%}.redeem-code-form{grid-template-columns:1fr;row-gap:10px;padding:14px 16px}.redeem-code-status{grid-column:1}.auth-gate .primary-btn span,.auth-gate .outline-btn span,.account-modal .primary-btn span,.account-modal .outline-btn span{display:inline}}
@media(max-width:700px){.auth-form input,.redeem-code-control input{font-size:16px}}
@media(max-height:620px){.auth-gate{place-items:start center}}

.auth-panel{width:min(460px,100%)}
.auth-form label small{display:block;margin-top:5px;color:#87969d;font-size:9px;font-weight:400;line-height:1.45}
.auth-form-link{display:flex;justify-content:flex-end;margin:-5px 0 8px}
.text-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:0;border:0;background:transparent;color:#315866;font:600 10px "Segoe UI","Microsoft YaHei",sans-serif;cursor:pointer}
.text-button:hover{text-decoration:underline}.text-button:focus-visible{outline:2px solid #8fb0ba;outline-offset:3px;border-radius:3px}
.text-button svg{width:14px;height:14px}
.verification-field{margin-bottom:13px;color:#657780;font-size:10px;font-weight:600}
.verification-field[hidden]{display:none}
.verification-field>label{display:block;margin-bottom:6px}
.verification-field>div{display:grid;grid-template-columns:minmax(0,1fr) 106px;gap:7px}
.verification-field input{height:38px;margin:0}
.verification-send{height:38px;padding:0 8px;white-space:nowrap}
.verification-send:disabled{cursor:default;opacity:.58}
.password-rules{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;margin:-7px 0 12px;padding-left:17px;color:#7b8c93;font-size:9px;line-height:1.4}
.auth-back{width:100%;margin-top:8px}
.auth-message[data-kind=success]{color:#2e684b}.auth-message[data-kind=info]{color:#5a7380}

.account-dialog{max-height:min(820px,calc(100% - 24px))}
.promotion-form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(260px,1.35fr);column-gap:14px;align-items:center;padding:14px 22px;border-top:1px solid #e1e7e9;background:#fff}
.promotion-copy{display:flex;align-items:center;gap:9px;min-width:0}.promotion-copy>svg{width:18px;height:18px;flex:0 0 18px;color:#315866}
.promotion-copy label,.promotion-copy span{display:block}.promotion-copy label{color:#304b59;font-size:11px;font-weight:700}.promotion-copy span{margin-top:2px;color:#87969d;font-size:9px}
.promotion-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.promotion-control input{width:100%;height:34px;min-width:0;padding:0 9px;border:1px solid #d4dfe3;border-radius:5px;background:#fff;color:#19324a;font:11px ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;outline:0}.promotion-control input:focus{border-color:#6f98a5;box-shadow:0 0 0 2px #e2eef1}.promotion-control input[aria-invalid=true]{border-color:#bd766b;box-shadow:0 0 0 2px #f8e8e5}.promotion-control button{height:34px}
.promotion-quote{grid-column:2;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:19px;padding-top:5px}.promotion-quote[hidden]{display:none}.promotion-quote span{color:#8a979f;font-size:9px;text-decoration:line-through}.promotion-quote strong{color:#2e684b;font-size:11px}
.promotion-status{grid-column:2;min-height:16px;padding-top:3px;color:#a54a39;font-size:9px;text-align:right}.promotion-status[data-kind=success]{color:#2e684b}.promotion-status[data-kind=info]{color:#71848c}

.account-utility{display:grid;grid-template-columns:1fr 1.25fr;border-bottom:1px solid #e1e7e9;background:#fbfcfc}
.tutorial-entry,.support-entry{display:flex;align-items:flex-start;gap:12px;min-width:0;padding:16px 22px}.tutorial-entry{border-right:1px solid #e1e7e9}.tutorial-entry>svg{width:20px;height:20px;flex:0 0 20px;color:#315866}.tutorial-entry>div{min-width:0}.tutorial-entry strong,.tutorial-entry span,.support-entry strong,.support-entry span{display:block}.tutorial-entry strong,.support-entry strong{color:#304b59;font-size:11px}.tutorial-entry span,.support-entry span{margin-top:4px;color:#7b8c93;font-size:9px;line-height:1.55}.tutorial-entry button{height:32px;margin-top:11px}
.support-entry{align-items:center}.support-entry img{width:132px;height:132px;flex:0 0 132px;object-fit:contain;border:1px solid #dce4e6;border-radius:6px;background:#fff}.support-entry>div{min-width:0;flex:1}.support-entry code{display:block;margin-top:5px;color:#19324a;font:600 11px ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.support-entry button{height:32px;margin-top:10px}.support-entry small{display:block;min-height:14px;margin-top:4px;color:#2e684b;font-size:9px}

.tutorial-modal{display:none;position:fixed;inset:0;z-index:70;pointer-events:none}.tutorial-modal.open{display:block}.tutorial-spotlight{position:fixed;z-index:70;border:2px solid #f2bd62;border-radius:8px;box-shadow:0 0 0 9999px rgba(14,31,43,.68);pointer-events:none;transition:top .18s,left .18s,width .18s,height .18s}.tutorial-dialog{position:fixed;z-index:71;width:min(380px,calc(100vw - 32px));min-height:310px;padding:18px 20px 16px;border:1px solid #d6e0e4;border-radius:8px;background:#fff;box-shadow:0 24px 72px rgba(12,29,40,.34);pointer-events:auto;outline:0}.tutorial-dialog:focus-visible{box-shadow:0 0 0 3px #aac4cd,0 24px 72px rgba(12,29,40,.34)}
.tutorial-head{height:30px;display:flex;align-items:flex-start;justify-content:space-between}.tutorial-head>span{color:#7d8d95;font-size:10px;font-weight:700}.tutorial-close{width:30px;height:30px;margin-top:-7px;margin-right:-7px;display:grid;place-items:center;border:0;border-radius:5px;background:transparent;color:#87959d;cursor:pointer}.tutorial-close:hover{background:#edf2f4;color:#19324a}.tutorial-close svg{width:17px;height:17px}
.tutorial-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#e8f1f4;color:#315866}.tutorial-icon svg{width:21px;height:21px}.tutorial-dialog h2{margin:15px 0 7px;color:#19324a;font-size:18px;letter-spacing:0}.tutorial-dialog p{min-height:52px;margin:0;color:#60737c;font-size:11px;line-height:1.7}
.tutorial-progress{height:20px;display:flex;align-items:center;gap:6px;margin-top:9px}.tutorial-progress span{width:7px;height:7px;border-radius:50%;background:#d3dde1}.tutorial-progress span.active{width:20px;border-radius:4px;background:#315866}
.tutorial-actions{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;margin-top:9px}.tutorial-actions .outline-btn,.tutorial-actions .primary-btn{height:34px;padding:0 10px}.tutorial-actions button:disabled{cursor:default;opacity:.42}

@media(max-width:700px){
  .password-rules{grid-template-columns:1fr}
  .verification-field>div{grid-template-columns:minmax(0,1fr) 102px}
  .promotion-form{grid-template-columns:1fr;row-gap:9px;padding:14px 16px}.promotion-quote,.promotion-status{grid-column:1;text-align:left;justify-content:flex-start}
  .account-utility{grid-template-columns:1fr}.tutorial-entry{border-right:0;border-bottom:1px solid #e1e7e9}.tutorial-entry,.support-entry{padding:15px 16px}
  .support-entry img{width:112px;height:112px;flex-basis:112px}
  .tutorial-dialog{min-height:296px;padding:16px}.tutorial-dialog h2{font-size:17px}.tutorial-actions{grid-template-columns:auto 1fr auto auto;gap:6px}.tutorial-actions .outline-btn,.tutorial-actions .primary-btn{padding:0 8px}
}
@media(max-width:700px){.promotion-control input,.verification-field input{font-size:16px}}
.feature-products{margin:0 22px 14px;padding:14px 16px;border:1px solid #dbe3e9;border-radius:6px;background:#f8fafb}
.feature-products-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;color:#536873;font-size:12px}
.feature-products-head span{color:#9b6a1c;font-weight:700;white-space:nowrap}
.feature-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.feature-product-card{min-width:0;min-height:168px;padding:12px;border:1px solid #dbe3e9;border-radius:5px;background:#fff;display:flex;flex-direction:column;gap:7px;transition:border-color .15s,box-shadow .15s}
.feature-product-card.active{border-color:#6d967e;box-shadow:inset 3px 0 0 #4f7d64}
.feature-product-card.purchased{border-color:#4f7d64;background:#f3faf6;box-shadow:inset 3px 0 0 #4f7d64}
.feature-product-card.selected{border-color:#315866;box-shadow:0 0 0 2px #dce9ed}
.feature-product-card strong{color:#19324a;font-size:13px;overflow-wrap:anywhere}
.feature-product-price{color:#9b6a1c;font-size:12px;font-style:normal;font-weight:700}
.feature-product-card small{min-height:30px;color:#7b8991;line-height:1.5;overflow-wrap:anywhere}
.feature-product-card button{width:100%;min-height:42px;height:auto;margin-top:auto;padding:7px 9px;font-size:11px}
.feature-product-status{color:#4c7b60;font-size:10px}
.feature-product-card:not(.active) .feature-product-status{color:#7b8991}
.feature-product-card button[disabled]{cursor:wait;opacity:.62}
.feature-product-card.purchased button[disabled]{cursor:default;border-color:#8db49b;color:#315f46;background:#e4f2e9;opacity:1}
.feature-product-card.selected .feature-select-button{border-color:#6e9e93;color:#1f625b;background:#e9f5f1;box-shadow:inset 0 0 0 1px #c4ddd7}
.payment-method-picker{min-width:0;margin:0 22px 14px;padding:0;border:0}
.payment-method-picker[hidden]{display:none}
.payment-method-picker legend{margin-bottom:7px;color:#536873;font-size:11px;font-weight:700}
.payment-method-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:3px;border:1px solid #d5e0e3;border-radius:6px;background:#edf2f4}
.payment-method-options[data-count="1"]{grid-template-columns:1fr}
.payment-method-options label{min-width:0;cursor:pointer}
.payment-method-options label[hidden]{display:none}
.payment-method-options input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
.payment-method-options span{min-height:44px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 10px;border:1px solid transparent;border-radius:4px;color:#627780;background:transparent;font-size:11px;font-weight:700}
.payment-method-options svg{width:16px;height:16px;flex:0 0 16px}
.payment-method-options input:checked+span{border-color:#9eb8c0;color:#214e5d;background:#fff;box-shadow:0 1px 4px rgba(31,62,75,.11)}
.payment-method-options input:focus-visible+span{outline:2px solid #d7a84d;outline-offset:1px}
.payment-method-picker:disabled label{cursor:default;opacity:.58}
.checkout-action{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.72fr);align-items:center;gap:16px;margin:0 22px 0;padding:15px 16px;border:1px solid #315866;border-radius:6px;background:#19324a;color:#fff}
.checkout-action[data-ready=true]{border-color:#2f8077;box-shadow:inset 3px 0 0 #62d6c4,0 8px 20px rgba(25,50,74,.13)}
.checkout-action[data-permanent=true]{border-color:#527b65;background:#244537;box-shadow:inset 3px 0 0 #7fc69d,0 8px 20px rgba(25,50,74,.1)}
.checkout-action-summary{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:4px 9px}
.checkout-action-summary>span{color:#a9bdc4;font-size:9px;font-weight:700}
.checkout-action-summary>strong{min-width:0;color:#fff;font-size:14px;overflow-wrap:anywhere}
.checkout-action-summary>em{color:#f0c36c;font-size:12px;font-style:normal;font-weight:700;white-space:nowrap}
.checkout-action-summary>small{grid-column:1/-1;color:#c5d2d5;font-size:10px;line-height:1.5;overflow-wrap:anywhere}
.checkout-pay-button{width:100%;min-height:48px;height:auto;margin:0;padding:8px 14px;font-size:14px}
.account-modal .checkout-pay-button span{display:inline}
.checkout-pay-button:disabled{cursor:wait;opacity:.62}
body.tech-workspace .account-dialog .checkout-pay-button{color:#0e2221;background:var(--tech-cyan);border-color:var(--tech-cyan);box-shadow:0 0 0 1px rgba(98,214,196,.2),0 8px 18px rgba(5,20,20,.24)}
body.tech-workspace .account-dialog .checkout-pay-button:hover{background:#7be2d2;border-color:#7be2d2}
@media(max-width:700px){.feature-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.feature-products{margin:0 16px 12px;padding:12px}.feature-product-card{min-height:154px}}
@media(max-width:620px){.payment-method-picker{margin:0 16px 12px}.checkout-action{grid-template-columns:1fr;gap:11px;margin:0 16px;padding:13px}.checkout-pay-button{min-height:48px}}
@media(max-width:480px){.feature-products-head{align-items:flex-start;flex-direction:column;gap:4px}.feature-products-head span{white-space:normal;line-height:1.45}.feature-product-grid{grid-template-columns:1fr}}
@media(max-width:620px){.checkout-qr-panel{margin:0 16px 14px}.checkout-qr-body{grid-template-columns:1fr;justify-items:center;gap:13px;padding:14px}.checkout-qr-details{width:min(224px,100%);align-items:center;text-align:center}.checkout-qr-image-frame,.checkout-qr-image-frame img{width:min(224px,100%);height:auto;aspect-ratio:1}.checkout-qr-details>a{width:100%;justify-content:center}}
