:root{--bg: #F7F8FA;--surface: #fff;--surface2: #F0F2F5;--border: #E2E5EA;--border2: #C8CDD6;--text: #1A1D23;--text2: #5A6172;--text3: #9BA3B0;--blue: #0C3566;--blue2: #1A5BA8;--blue3: #E8F0FB;--red: #A32D2D;--red-bg: #FCEBEB;--red-border: #F7C1C1;--orange: #854F0B;--orange-bg: #FAEEDA;--orange-border: #FAC775;--green: #27500A;--green-bg: #EAF3DE;--green-border: #C0DD97;--radius: 8px;--radius-lg: 12px;--color-primary: var(--blue);--color-primary-hover: var(--blue2);--color-primary-light: var(--blue3);--color-success: var(--green);--color-warning: var(--orange);--color-danger: #E24B4A;--color-critical: var(--red);--color-bg: var(--bg);--color-surface: var(--surface);--color-border: var(--border);--color-text: var(--text);--color-text-secondary: var(--text2);--color-text-muted: var(--text3);--shadow: none;--shadow-lg: 0 4px 16px rgba(0, 0, 0, .08);--font: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font);font-size:14px;color:var(--text);background:var(--bg);line-height:1.6}a{color:var(--blue2);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit}table{border-collapse:collapse;width:100%}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-body{display:flex;flex:1;min-height:0}.topbar{background:var(--blue);height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;flex-shrink:0}.topbar-brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:15px;font-weight:600}.topbar-icon{width:28px;height:28px;background:var(--blue2);border-radius:7px;display:flex;align-items:center;justify-content:center;color:#fff}.topbar-right{display:flex;align-items:center;gap:12px}.topbar-meta,.topbar-user{font-size:12px;color:#b5d4f4}.btn-topbar{font-size:12px;padding:4px 10px;border:1px solid #378ADD;border-radius:6px;background:none;color:#b5d4f4;cursor:pointer}.btn-topbar:hover{background:rgba(255,255,255,.08)}.sidebar{width:168px;background:var(--surface);border-right:1px solid var(--border);padding:12px 8px;flex-shrink:0;display:flex;flex-direction:column}.sidebar-nav{flex:1}.sidebar-nav a{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:var(--radius);cursor:pointer;font-size:13px;color:var(--text2);margin-bottom:2px;transition:background .15s;text-decoration:none}.sidebar-nav a:hover{background:var(--surface2);text-decoration:none}.sidebar-nav a.active{background:var(--blue3);color:var(--blue);font-weight:600}.sidebar-nav a.disabled{opacity:.45;pointer-events:auto;cursor:not-allowed}.sidebar-nav a.disabled:hover{background:transparent}.sidebar-nav a svg{width:16px;height:16px;flex-shrink:0}.sidebar-footer{padding:12px 10px;font-size:11px;color:var(--text3);border-top:1px solid var(--border);line-height:1.5}.page-content{flex:1;padding:20px;min-width:0;overflow-y:auto}.page-title{font-size:16px;font-weight:600;margin-bottom:16px;color:var(--text)}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#0C2340 0%,#0C3566 60%,#185FA5 100%);position:relative;padding:24px}.login-back{position:absolute;top:20px;left:24px;font-size:14px;color:#b5d4f4;text-decoration:none}.login-back:hover{color:#fff;text-decoration:none}.login-plan-hint{background:var(--blue3);border:1px solid #B5D4F4;border-radius:var(--radius);padding:10px 14px;font-size:13px;color:var(--blue);margin-bottom:16px;line-height:1.5}.login-card{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:380px;box-shadow:0 20px 60px #0003}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:24px}.login-brand-icon{width:42px;height:42px;background:var(--blue);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff}.login-brand-icon svg{width:24px;height:24px;color:#fff}.login-brand-name{font-size:18px;font-weight:700;color:var(--text)}.login-brand-sub{font-size:12px;color:var(--text2)}.login-card .form-group label{font-size:12px;color:var(--text2);font-weight:400}.login-card .form-control{height:40px;border-color:var(--border2)}.login-card .btn-primary{width:100%;height:42px;margin-top:4px;font-size:15px;font-weight:600}.login-hint{font-size:12px;color:var(--text3);text-align:center;margin-top:12px}.login-switch{font-size:13px;color:var(--text2);text-align:center;margin-top:16px}.login-switch a{color:var(--blue);font-weight:500;text-decoration:none}.login-switch a:hover{text-decoration:underline}.disclaimer{background:var(--orange-bg);border:1px solid var(--orange-border);border-radius:var(--radius);padding:12px 14px;font-size:12px;color:var(--orange);margin-top:16px;line-height:1.6}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.stat-card{background:var(--surface2);border-radius:var(--radius);padding:12px 14px;border:none;box-shadow:none}.stat-card .label{font-size:11px;color:var(--text2);margin-bottom:4px}.stat-card .value{font-size:24px;font-weight:700}.stat-card.critical .value{color:var(--red)}.stat-card.warning .value{color:var(--orange)}.stat-card.success .value{color:var(--green)}.upload-zone{border:2px dashed var(--border2);border-radius:var(--radius-lg);padding:40px 20px;text-align:center;cursor:pointer;transition:all .15s;background:var(--surface)}.upload-zone:hover,.upload-zone.dragover{border-color:var(--blue2);background:var(--blue3)}.upload-icon{width:44px;height:44px;color:var(--text3);margin-bottom:12px}.upload-title{font-size:15px;font-weight:600;margin-bottom:6px}.upload-sub{font-size:13px;color:var(--text2)}.fmt-wrap{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:12px}.fmt{font-size:11px;padding:3px 9px;border-radius:5px;background:var(--surface2);color:var(--text2);border:1px solid var(--border)}.fmt-disabled{opacity:.45;text-decoration:line-through}.mapping-table select{width:100%}.report-preview{background:var(--surface);padding:32px;border-radius:var(--radius-lg);border:1px solid var(--border);max-width:800px;margin:0 auto}.report-footer{margin-top:32px;padding-top:16px;border-top:1px solid var(--border);font-size:11px;color:var(--text3);text-align:center}@media (max-width: 900px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.sidebar{display:none}.page-content{padding:16px}.stats-grid{grid-template-columns:1fr 1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 20px;border-radius:var(--radius);border:1px solid transparent;font-size:14px;font-weight:500;transition:all .15s;white-space:nowrap}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover:not(:disabled){background:var(--blue2)}.btn-secondary{background:var(--surface);color:var(--text2);border-color:var(--border2)}.btn-secondary:hover{border-color:var(--blue2);color:var(--blue)}.btn-outline{height:34px;padding:0 14px;border:1px solid var(--border2);border-radius:var(--radius);background:none;color:var(--text2);cursor:pointer;font-size:13px;display:inline-flex;align-items:center;gap:6px}.btn-outline:hover{border-color:var(--blue2);color:var(--blue)}.btn-danger{background:var(--red);color:#fff}.btn-sm{height:30px;padding:0 12px;font-size:12px}.btn:disabled{opacity:.4;cursor:not-allowed}.form-group{margin-bottom:14px}.form-group label{display:block;margin-bottom:5px;font-weight:500;font-size:12px;color:var(--text2)}.form-control{width:100%;padding:7px 10px;border:1px solid var(--border2);border-radius:var(--radius);background:var(--surface);color:var(--text);transition:border-color .15s}.form-control:focus{outline:none;border-color:var(--blue2);box-shadow:0 0 0 3px var(--blue3)}.card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:none}.card-header{padding:14px 16px;border-bottom:1px solid var(--border);font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:8px}.card-body{padding:16px}.card-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;margin-bottom:16px}.section-hd{font-size:13px;font-weight:600;color:var(--text);margin-bottom:10px;display:flex;align-items:center;gap:6px}.data-table{width:100%;font-size:12px}.data-table th,.data-table td{padding:7px 10px;text-align:left;border-bottom:1px solid var(--border)}.data-table th{background:transparent;font-weight:500;color:var(--text3);white-space:nowrap}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--surface2)}.data-table tr.row-critical td{background:#FFF5F5}.data-table tr.row-warning td{background:#FFFBF0}.amount-out{color:var(--red);font-weight:600}.amount-in{color:var(--green);font-weight:600}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot.critical{background:#E24B4A}.dot.warning{background:#EF9F27}.dot.normal{background:#B4B2A9}.badge{display:inline-block;padding:2px 7px;border-radius:4px;font-size:11px;font-weight:600}.badge-critical{background:var(--red-bg);color:var(--red)}.badge-warning{background:var(--orange-bg);color:var(--orange)}.badge-normal{background:var(--green-bg);color:#3b6d11}.badge-info{background:var(--blue3);color:var(--blue)}.alert-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.alert-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;display:flex;align-items:flex-start;gap:10px;border-left:3px solid}.alert-item.critical{border-left-color:#e24b4a}.alert-item.warning{border-left-color:#ef9f27}.alert-title{font-size:13px;font-weight:600}.alert-detail{font-size:12px;color:var(--text2);margin-top:2px;line-height:1.5}.risk-banner{border-radius:var(--radius-lg);padding:14px 18px;margin-bottom:16px;display:flex;align-items:center;gap:14px;border:1px solid}.risk-banner.high{background:var(--red-bg);border-color:var(--red-border)}.risk-banner.mid{background:var(--orange-bg);border-color:var(--orange-border)}.risk-banner.low{background:var(--green-bg);border-color:var(--green-border)}.rule-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;align-items:center;gap:12px;margin-bottom:8px}.rule-nm{font-size:13px;font-weight:600}.rule-dc{font-size:12px;color:var(--text2);margin-top:2px}.add-rule{display:flex;align-items:center;gap:6px;padding:10px 14px;border:2px dashed var(--border2);border-radius:var(--radius);background:none;color:var(--text2);cursor:pointer;font-size:13px;width:100%;margin-top:4px}.add-rule:hover{border-color:var(--blue2);color:var(--blue)}.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px}.toast{padding:10px 18px;border-radius:var(--radius);background:#1A1D23;color:#fff;box-shadow:0 4px 16px #0003;animation:slideUp .3s ease;max-width:360px;font-size:13px}.toast.success{background:var(--green);color:#fff}.toast.error{background:var(--red);color:#fff}.toast.warning{background:var(--orange);color:#fff}@keyframes slideUp{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);width:90%;max-width:480px;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-header{padding:18px 22px 0;display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:15px}.modal-body{padding:18px 22px}.modal-footer{padding:0 22px 18px;display:flex;justify-content:flex-end;gap:8px}.modal-close{background:none;border:none;font-size:20px;color:var(--text3);padding:4px}.empty-state{text-align:center;padding:40px 20px;color:var(--text3);font-size:13px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.empty-state .icon{font-size:36px;margin-bottom:12px;opacity:.6}.empty-box{text-align:center;padding:40px 20px;color:var(--text3);font-size:13px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.filter-bar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;align-items:center}.filter-bar select{padding:6px 10px;border:1px solid var(--border2);border-radius:6px;background:var(--surface);font-size:12px;color:var(--text2)}.filter-btn{height:30px;padding:0 12px;border:1px solid var(--border2);border-radius:6px;background:none;color:var(--text2);cursor:pointer;font-size:12px}.filter-btn:hover{border-color:var(--blue2);color:var(--blue)}.filter-btn.active{background:var(--blue);color:#fff;border-color:var(--blue)}.loading{display:flex;align-items:center;justify-content:center;padding:32px;color:var(--text2);font-size:13px}.spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite;margin-right:10px}@keyframes spin{to{transform:rotate(360deg)}}.tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:16px}.tab{padding:9px 16px;border:none;background:none;color:var(--text2);border-bottom:2px solid transparent;margin-bottom:-1px;font-size:13px}.tab.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}.progress-bar{height:4px;background:var(--border);border-radius:2px;overflow:hidden;margin-top:12px}.progress-bar .fill{height:100%;background:var(--blue);transition:width .3s}.preview-tbl{width:100%;border-collapse:collapse;font-size:11px;margin-top:10px}.preview-tbl th,.preview-tbl td{padding:5px 8px;border:1px solid var(--border);text-align:left;white-space:nowrap;overflow:hidden;max-width:120px;text-overflow:ellipsis}.preview-tbl th{background:var(--surface2);font-weight:600;color:var(--text2)}.col-map-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.col-map-row label{font-size:12px;color:var(--text2)}.col-map-row select{border:1px solid var(--border2);border-radius:var(--radius);padding:6px 10px;font-size:13px;color:var(--text);width:100%}.rule-type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.rule-type-card{border:1.5px solid var(--border);border-radius:var(--radius);padding:16px;cursor:pointer;transition:all .15s;background:var(--surface)}.rule-type-card:hover{border-color:var(--blue);background:color-mix(in srgb,var(--blue) 5%,var(--surface));box-shadow:0 2px 8px #0000000f}.rule-type-icon{font-size:24px;margin-bottom:8px}.rule-type-name{font-weight:600;font-size:14px;color:var(--text);margin-bottom:4px}.rule-type-desc{font-size:12px;color:var(--text3);line-height:1.4}.rule-tpl-hint{background:color-mix(in srgb,var(--blue) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--blue) 20%,transparent);border-radius:var(--radius);padding:10px 14px;font-size:13px;color:var(--text2);margin-bottom:16px}.radio-group{display:flex;gap:20px;align-items:center}.radio-label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text);cursor:pointer}.radio-label input[type=radio]{accent-color:var(--blue)}.usage-page{width:100%}.usage-tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--border);padding-bottom:0}.usage-tab{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border:none;background:none;color:var(--text3);font-size:13px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}.usage-tab svg{opacity:.5;transition:opacity .15s}.usage-tab:hover{color:var(--text2)}.usage-tab.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}.usage-tab.active svg{opacity:1}.u-loading{display:flex;align-items:center;justify-content:center;padding:60px 20px;color:var(--text3);font-size:13px;gap:10px}.u-overview{display:flex;flex-direction:column;gap:16px}.u-plan-card{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 24px}.u-plan-left{display:flex;align-items:center;gap:14px}.u-plan-icon{width:44px;height:44px;border-radius:12px;background:var(--blue3);color:var(--blue2);display:flex;align-items:center;justify-content:center;flex-shrink:0}.u-plan-label{font-size:12px;color:var(--text3);margin-bottom:2px}.u-plan-name{font-size:20px;font-weight:700;color:var(--text);letter-spacing:-.01em}.u-plan-upgrade{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:var(--radius);border:1px solid var(--border2);background:var(--surface);color:var(--text2);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.u-plan-upgrade:hover{border-color:var(--blue2);color:var(--blue);background:var(--blue3)}.u-meters{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.u-meter{margin-bottom:20px}.u-meter-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.u-meter-label{font-size:13px;font-weight:500;color:var(--text2)}.u-meter-value{font-size:22px;font-weight:700;color:var(--text);letter-spacing:-.02em}.u-meter-limit{font-size:14px;font-weight:400;color:var(--text3)}.u-meter-bar{height:8px;background:var(--surface2);border-radius:4px;overflow:hidden}.u-meter-fill{height:100%;border-radius:4px;transition:width .6s ease;min-width:4px}.u-meter-warn{margin-top:8px;font-size:12px;color:var(--red);display:flex;align-items:center;gap:4px}.u-kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border-radius:var(--radius);overflow:hidden}.u-kpi{background:var(--surface);padding:16px 20px;text-align:center}.u-meters .u-kpi-row{border-top:1px solid var(--border);margin:0 -24px -24px;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.u-meters .u-kpi:first-child{border-radius:0 0 0 var(--radius-lg)}.u-meters .u-kpi:last-child{border-radius:0 0 var(--radius-lg) 0}.u-kpi-num{font-size:24px;font-weight:700;color:var(--text);letter-spacing:-.02em;line-height:1.2}.u-kpi-sub{font-size:14px;font-weight:400;color:var(--text3)}.u-kpi-label{font-size:12px;color:var(--text3);margin-top:4px}.u-chart-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.u-chart-head{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--border)}.u-chart-title{font-size:13px;font-weight:600;color:var(--text)}.u-chart-total{font-size:12px;color:var(--text3);background:var(--surface2);padding:3px 10px;border-radius:999px}.u-chart{padding:20px 24px 16px}.u-bar-wrap{display:flex;align-items:flex-end;gap:3px;height:140px}.u-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;cursor:default}.u-bar-count{font-size:0;color:var(--text3);margin-bottom:4px;opacity:0;transition:opacity .15s}.u-bar-count.visible{font-size:10px}.u-bar-col:hover .u-bar-count.visible{opacity:1}.u-bar{width:100%;max-width:24px;background:var(--blue3);border-radius:3px 3px 0 0;min-height:2px;transition:background .15s}.u-bar-col:hover .u-bar,.u-bar.today{background:var(--blue2)}.u-bar-label{font-size:9px;color:var(--text3);margin-top:6px;white-space:nowrap;transform:rotate(-50deg);transform-origin:center}.u-history .u-kpi-row{border:1px solid var(--border);border-radius:var(--radius-lg)}.u-history .u-kpi:first-child{border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.u-history .u-kpi:last-child{border-radius:0 var(--radius-lg) var(--radius-lg) 0}.u-table-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:4px 16px 16px}.u-pagination{margin-top:16px;text-align:center}@media (max-width: 640px){.u-plan-card{flex-direction:column;align-items:flex-start;gap:16px}.u-kpi-row{grid-template-columns:1fr}}.billing-page{max-width:1120px;margin:0 auto;padding:8px 0 32px}.billing-header{text-align:center;margin-bottom:32px}.billing-title{font-size:28px;font-weight:700;color:var(--text);margin-bottom:20px;letter-spacing:-.02em}.billing-toggle{display:inline-flex;background:var(--surface2);border-radius:999px;padding:3px;gap:2px}.billing-toggle-btn{border:none;background:none;padding:7px 20px;border-radius:999px;font-size:13px;font-weight:500;color:var(--text2);cursor:pointer;transition:all .15s}.billing-toggle-btn.active{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #00000014}.billing-promos{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px}.billing-promo{display:inline-block;font-size:12px;font-weight:500;color:var(--green);background:var(--green-bg);border:1px solid var(--green-border);border-radius:999px;padding:4px 12px}.billing-promo-save{color:var(--blue);background:var(--blue3);border-color:color-mix(in srgb,var(--blue) 20%,transparent)}.billing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:stretch}@media (max-width: 1024px){.billing-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.billing-grid{grid-template-columns:1fr}}.billing-card{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px 20px 20px;transition:border-color .15s,box-shadow .15s}.billing-card-current{border-color:var(--text);box-shadow:0 0 0 1px var(--text)}.billing-card-highlight{border-color:var(--border2)}.billing-badge-current,.billing-badge-trial{position:absolute;top:14px;right:14px;font-size:11px;font-weight:500;padding:2px 8px;border-radius:999px}.billing-badge-current{color:var(--text2);background:var(--surface2)}.billing-badge-trial{color:var(--green);background:var(--green-bg);border:1px solid var(--green-border)}.billing-card-name{font-size:15px;font-weight:600;color:var(--text);margin-bottom:12px;padding-right:72px}.billing-card-price{display:flex;align-items:baseline;gap:2px;margin-bottom:4px}.billing-price{font-size:32px;font-weight:700;color:var(--text);letter-spacing:-.03em;line-height:1}.billing-period{font-size:14px;color:var(--text3)}.billing-price-original{font-size:12px;color:var(--text3);text-decoration:line-through;margin-bottom:2px}.billing-price-note{font-size:12px;color:var(--text3);margin-bottom:8px}.billing-card-desc{font-size:13px;color:var(--text2);line-height:1.5;margin:12px 0 16px;min-height:40px}.billing-features{list-style:none;flex:1;margin-bottom:20px}.billing-feature{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--text2);line-height:1.5;margin-bottom:8px}.billing-check{width:16px;height:16px;flex-shrink:0;margin-top:2px;color:var(--text3)}.billing-cta{width:100%;height:38px;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;border:1px solid transparent}.billing-cta-primary{background:var(--text);color:#fff;border-color:var(--text)}.billing-cta-primary:hover{background:#333}.billing-cta-outline{background:var(--surface);color:var(--text);border-color:var(--border2)}.billing-cta-outline:hover{border-color:var(--text)}.billing-cta-current,.billing-cta-muted{background:var(--surface2);color:var(--text3);border-color:var(--border);cursor:not-allowed}.billing-footer{text-align:center;font-size:12px;color:var(--text3);line-height:1.7;margin-top:28px;max-width:560px;margin-left:auto;margin-right:auto}.guide-page{width:100%}.guide-intro{color:var(--text2);font-size:13px;line-height:1.7;margin-bottom:20px}.guide-quickstart-hint{font-size:13px;color:var(--text2);line-height:1.7;margin-bottom:16px}.guide-flow-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}@media (max-width: 1100px){.guide-flow-steps{grid-template-columns:repeat(3,1fr)}}@media (max-width: 720px){.guide-flow-steps{grid-template-columns:1fr}}.guide-flow-step{display:flex;gap:10px;padding:14px;background:var(--surface2);border-radius:var(--radius);border:1px solid var(--border)}.guide-flow-num{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--blue);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.guide-flow-title{font-size:13px;font-weight:600;margin-bottom:6px}.guide-flow-desc{font-size:12px;color:var(--text2);line-height:1.65;margin:0 0 8px}.guide-flow-desc a{color:var(--blue2);text-decoration:none}.guide-flow-desc a:hover{text-decoration:underline}.guide-flow-link{font-size:12px;color:var(--blue2);text-decoration:none;font-weight:500}.guide-flow-link:hover{text-decoration:underline}.guide-section-title{font-size:15px;font-weight:600;margin-bottom:12px}.guide-table-wrap{overflow-x:auto}.guide-table{width:100%;border-collapse:collapse;font-size:13px}.guide-table th,.guide-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border)}.guide-table th{color:var(--text2);font-weight:500;background:var(--surface2)}.guide-table tbody tr:hover{background:var(--surface2)}.guide-status{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.guide-status-supported{background:#e8f5e9;color:#2e7d32}.guide-status-partial{background:#fff3e0;color:#e65100}.guide-status-unsupported{background:var(--surface2);color:var(--text3)}.guide-status-note{display:block;font-size:11px;color:var(--text3);margin-top:2px}.guide-format-ok{color:#2e7d32;font-weight:600}.guide-format-no{color:var(--text3)}.guide-overview-hint{margin-top:14px;font-size:12px;color:var(--text3);line-height:1.6}.guide-bank-list{display:flex;flex-direction:column;gap:10px}.guide-bank-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.guide-bank-summary{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.guide-bank-summary::-webkit-details-marker{display:none}.guide-bank-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.guide-bank-name{font-weight:600;font-size:14px}.guide-bank-badges{display:flex;gap:8px;flex-wrap:wrap}.guide-type-badge{font-size:11px;padding:2px 8px;border-radius:4px;background:var(--surface2);color:var(--text2)}.guide-chevron{flex-shrink:0;color:var(--text3);transition:transform .2s}.guide-bank-card[open] .guide-chevron{transform:rotate(180deg)}.guide-bank-body{padding:0 16px 16px;border-top:1px solid var(--border)}.guide-tip{margin:12px 0;padding:10px 12px;background:#fff8e1;border-radius:var(--radius);font-size:12px;color:#795548;line-height:1.6}.guide-export-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:12px}@media (max-width: 720px){.guide-export-grid{grid-template-columns:1fr}}.guide-format-section{background:var(--surface2);border-radius:var(--radius);padding:14px}.guide-format-title{font-size:13px;font-weight:600;margin-bottom:12px;color:var(--blue2)}.guide-export-block+.guide-export-block{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border)}.guide-export-label{font-size:12px;font-weight:600;color:var(--text2);margin-bottom:8px}.guide-steps{padding-left:18px;line-height:1.9;font-size:13px;margin:0}.guide-note{margin-top:8px;font-size:12px;color:var(--text3);line-height:1.6}.guide-empty{font-size:12px;color:var(--text3)}.guide-footer-note{margin-top:24px}.landing-page{min-height:100vh;background:var(--bg)}.landing-container{max-width:1080px;margin:0 auto;padding:0 24px}.landing-nav{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:60px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.landing-nav-brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:var(--text);text-decoration:none}.landing-nav-brand:hover{text-decoration:none}.landing-nav-icon{width:32px;height:32px;background:var(--blue);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff}.landing-nav-icon svg{color:#fff}.landing-nav-links{display:flex;align-items:center;gap:8px}.landing-nav-link{padding:8px 14px;font-size:14px;color:var(--text2);text-decoration:none;border-radius:var(--radius);transition:background .15s,color .15s}.landing-nav-link:hover{background:var(--surface2);color:var(--text);text-decoration:none}.landing-nav-cta{margin-left:8px;padding:8px 18px!important;font-size:14px!important}.landing-hero{background:linear-gradient(160deg,#0C2340 0%,#0C3566 45%,#185FA5 100%);padding:80px 24px 100px;text-align:center;position:relative;overflow:hidden}.landing-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 50% at 50% 0%,rgba(255,255,255,.08) 0%,transparent 70%),radial-gradient(circle at 80% 80%,rgba(26,91,168,.3) 0%,transparent 50%);pointer-events:none}.landing-hero-inner{position:relative;max-width:720px;margin:0 auto}.landing-hero-badge{display:inline-block;padding:6px 16px;border-radius:20px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);color:#b5d4f4;font-size:13px;margin-bottom:24px}.landing-hero-title{font-size:48px;font-weight:800;color:#fff;line-height:1.2;margin-bottom:20px;letter-spacing:-.02em}.landing-hero-title span{background:linear-gradient(90deg,#7EC8FF,#B5D4F4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-hero-desc{font-size:17px;color:#b5d4f4;line-height:1.7;margin-bottom:36px;max-width:580px;margin-left:auto;margin-right:auto}.landing-hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:40px}.landing-hero-actions .btn-lg{padding:12px 28px;font-size:16px;font-weight:600;border-radius:10px}.landing-hero-actions .btn-secondary{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:#fff}.landing-hero-actions .btn-secondary:hover{background:rgba(255,255,255,.18)}.landing-hero-trust{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;font-size:13px;color:#8bb8e8}.landing-hero-trust span{display:flex;align-items:center;gap:6px}.landing-hero-trust svg{opacity:.8}.landing-section{padding:72px 0}.landing-section-alt{background:var(--surface)}.landing-section-head{text-align:center;margin-bottom:48px}.landing-section-head h2{font-size:32px;font-weight:700;color:var(--text);margin-bottom:12px}.landing-section-head p{font-size:16px;color:var(--text2)}.landing-features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.landing-feature-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 24px;transition:border-color .2s,box-shadow .2s}.landing-section-alt .landing-feature-card{background:var(--bg)}.landing-feature-card:hover{border-color:var(--blue2);box-shadow:var(--shadow-lg)}.landing-feature-icon{width:44px;height:44px;background:var(--blue3);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--blue);margin-bottom:16px}.landing-feature-card h3{font-size:16px;font-weight:600;margin-bottom:8px;color:var(--text)}.landing-feature-card p{font-size:14px;color:var(--text2);line-height:1.65}.landing-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.landing-step{text-align:center;padding:0 16px}.landing-step-num{font-size:40px;font-weight:800;color:var(--blue3);line-height:1;margin-bottom:16px;letter-spacing:-.02em}.landing-step h3{font-size:18px;font-weight:600;margin-bottom:8px}.landing-step p{font-size:14px;color:var(--text2);line-height:1.65}.landing-privacy{background:var(--blue);padding:56px 0}.landing-privacy-inner{display:flex;align-items:flex-start;gap:28px}.landing-privacy-icon{flex-shrink:0;width:64px;height:64px;background:rgba(255,255,255,.12);border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff}.landing-privacy h2{font-size:24px;font-weight:700;color:#fff;margin-bottom:12px}.landing-privacy p{font-size:15px;color:#b5d4f4;line-height:1.75}.landing-pricing-header{margin-bottom:32px}.landing-plans-loading,.landing-plans-error{grid-column:1 / -1;text-align:center;padding:40px;color:var(--text2)}.landing-plan-cta{display:block;text-align:center;text-decoration:none}.landing-plan-cta:hover{text-decoration:none}.landing-cta{background:linear-gradient(135deg,var(--blue3) 0%,#fff 100%);padding:72px 0}.landing-cta-inner{text-align:center}.landing-cta h2{font-size:28px;font-weight:700;margin-bottom:12px}.landing-cta p{font-size:16px;color:var(--text2);margin-bottom:28px}.landing-footer{background:var(--surface);border-top:1px solid var(--border);padding:40px 0}.landing-footer-inner{text-align:center}.landing-footer-brand{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;margin-bottom:16px}.landing-footer-disclaimer{font-size:12px;color:var(--text3);max-width:520px;margin:0 auto 12px;line-height:1.6}.landing-footer-copy{font-size:12px;color:var(--text3)}@media (max-width: 900px){.landing-features{grid-template-columns:repeat(2,1fr)}.landing-steps{grid-template-columns:1fr;gap:40px}.landing-hero-title{font-size:36px}}@media (max-width: 640px){.landing-nav{padding:0 16px}.landing-nav-links .landing-nav-link:not(:last-child){display:none}.landing-features{grid-template-columns:1fr}.landing-hero{padding:56px 20px 72px}.landing-hero-title{font-size:28px}.landing-hero-desc{font-size:15px}.landing-section-head h2{font-size:24px}.landing-privacy-inner{flex-direction:column;align-items:center;text-align:center}}
