:root{color:#17212b;background:#fff;font-family:PingFang SC,Microsoft YaHei,Arial,sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}button,textarea,input{font:inherit}.portal-shell{background:var(--bg,#fff);text-align:left;min-height:100vh;padding:0;display:flex}.portal-outlet{flex:1;min-width:0;position:relative}.portal-outlet-fallback{background:var(--bg,#fff);min-height:100vh;padding:36px}.portal-outlet-fallback__bar,.portal-outlet-fallback__block,.portal-outlet-fallback__line{background:var(--border,#e4e8eb);border-radius:4px;animation:1.4s ease-in-out infinite portal-fallback-pulse}.portal-outlet-fallback__bar{width:min(280px,45%);height:26px;margin-bottom:30px}.portal-outlet-fallback__block{width:100%;max-width:760px;height:180px;margin-bottom:18px}.portal-outlet-fallback__line{width:70%;max-width:520px;height:14px}@keyframes portal-fallback-pulse{50%{opacity:.45}}.portal-shell h1{margin:0;font-size:28px}.portal-shell__eyebrow{color:#0f6254;margin:0 0 12px;font-size:13px;font-weight:700}.portal-shell__summary{color:#667581;margin:12px 0 0}
:root{--primary:#1677ff;--primary-hover:#0958d9;--primary-soft:#e8f3ff;--primary-soft-2:#d6e8ff;--primary-deep:#155eef;--bg:#f4f7fb;--bg-sidebar:#fff;--surface:#fff;--border:#e5eaf2;--border-light:#eef2f7;--text:#182844;--text-secondary:#5e6f89;--text-muted:#8a9bb2;--text-disabled:#c5cedb;--success:#00a870;--success-bg:#e8f8f2;--warning:#ed7b2f;--warning-bg:#fff7e8;--danger:#e34d59;--danger-bg:#fdecee;--info:#1677ff;--info-bg:#e8f3ff;--accent-gold:#f5a623;--accent-gold-bg:#fff8e6;--accent-orange:#ff7d00;--shadow-sm:0 1px 2px #183c780a;--shadow:0 2px 8px #183c780f;--shadow-md:0 8px 24px #183c7814;--shadow-input:0 12px 32px #2a508c1a;--radius-sm:6px;--radius:10px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--sidebar-w:280px;--space:8px;--font:"PingFang SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html{font-size:14px}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;line-height:1.5}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-hover);text-decoration:underline}img{max-width:100%}.app-shell{background:var(--bg);min-height:100vh;display:flex}.app-sidebar{width:var(--sidebar-w);background:var(--bg-sidebar);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.app-sidebar .brand{color:var(--text);align-items:center;gap:10px;padding:4px 8px 16px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.app-sidebar .brand:hover{color:var(--text);text-decoration:none}.brand-mark{color:#fff;background:linear-gradient(#fff 0%,#eef5ff 100%);border:1px solid #1677ff24;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex;overflow:hidden;box-shadow:0 2px 8px #1677ff1a}.brand-mark img{object-fit:cover;width:100%;height:100%;display:block}.sidebar-new{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:6px;margin:0 4px 16px;padding:10px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .15s,color .15s;display:flex}.sidebar-new:hover{border-color:var(--primary);color:var(--primary);text-decoration:none}.sidebar-new__icon{color:var(--primary);flex:none}.sidebar-nav{flex-direction:column;gap:2px;display:flex}.sidebar-nav a{border-radius:var(--radius);color:var(--text-secondary);align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex}.sidebar-nav a:hover{color:var(--text);background:#00000008;text-decoration:none}.sidebar-nav a.active{background:var(--primary-soft);color:var(--primary-deep);font-weight:600}.sidebar-nav a .nav-ico{text-align:center;opacity:.85;flex-shrink:0;width:18px;font-size:14px}.sidebar-nav a .nav-badge{border-radius:var(--radius-pill);background:var(--primary);color:#fff;justify-content:center;align-items:center;min-width:20px;height:18px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:600;display:inline-flex}.sidebar-section{border-top:1px solid var(--border);margin-top:20px;padding-top:12px}.sidebar-section-title{color:var(--text-muted);justify-content:space-between;align-items:center;padding:4px 12px 8px;font-size:12px;font-weight:500;display:flex}.sidebar-history{flex-direction:column;gap:2px;display:flex}.sidebar-history-item{border-radius:var(--radius);align-items:center;min-width:0;display:flex;position:relative}.sidebar-history-item:hover,.sidebar-history-item:focus-within{background:#00000008}.sidebar-history-item__link{border-radius:var(--radius);min-width:0;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;padding:8px 4px 8px 12px;font-size:12px;text-decoration:none;display:block;overflow:hidden}.sidebar-history-item__link:hover{color:var(--text);text-decoration:none}.sidebar-history-item__more{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;margin-right:4px;padding:0;font-size:18px;line-height:1}.sidebar-history-item__more:hover,.sidebar-history-item__more:focus-visible,.sidebar-history-item.is-menu-open .sidebar-history-item__more{background:var(--surface);color:var(--primary);outline:none}.sidebar-history-item__menu{z-index:50;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:116px;box-shadow:var(--shadow-md);padding:4px;position:absolute;top:calc(100% + 3px);right:4px}.sidebar-history-item__menu[hidden]{display:none}.sidebar-history-item__menu button{width:100%;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:7px 9px;font-size:12px;display:block}.sidebar-history-item__menu button:hover,.sidebar-history-item__menu button:focus-visible{background:var(--primary-soft);color:var(--primary);outline:none}.sidebar-history-item__menu .is-danger:hover,.sidebar-history-item__menu .is-danger:focus-visible{background:var(--danger-bg);color:var(--danger)}.sidebar-promo{border-radius:var(--radius-md);color:var(--text-secondary);background:linear-gradient(135deg,#e8f3ff 0%,#f0f6ff 100%);border:1px solid #1677ff1f;margin:16px 4px;padding:14px;font-size:12px;line-height:1.45;position:relative}.sidebar-promo strong{color:var(--primary-deep);margin-bottom:4px;font-size:13px;display:block}.sidebar-promo a{color:var(--primary);font-weight:500;text-decoration:none}.sidebar-promo a:hover{text-decoration:underline}.sidebar-footer{border-top:1px solid var(--border);align-items:center;gap:10px;margin-top:auto;padding:12px 8px 4px;display:flex}.sidebar-footer .avatar{background:var(--primary-soft);width:32px;height:32px;color:var(--primary-deep);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;text-decoration:none;display:flex}.sidebar-footer .meta{flex:1;min-width:0}.sidebar-footer .meta .name{color:var(--text);font-size:13px;font-weight:500}.sidebar-footer .meta .sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.app-main{flex:1;min-width:0;max-width:1100px;padding:28px 32px 48px}.app-main.wide{max-width:1280px}.app-nav{display:none}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-header h1{letter-spacing:-.02em;color:var(--text);margin:0 0 6px;font-size:24px;font-weight:700}.page-header .sub{color:var(--text-muted);margin:0;font-size:13px}.page{max-width:none;margin:0;padding:0}.page-wide{max-width:none}.grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.layout-side{grid-template-columns:240px 1fr;gap:20px;display:grid}.layout-main-aside{grid-template-columns:1fr 280px;gap:20px;display:grid}@media (max-width:960px){.app-shell{flex-direction:column}.app-sidebar{border-right:none;border-bottom:1px solid var(--border);width:100%;height:auto;position:relative}.grid-2,.grid-3,.grid-4,.layout-side,.layout-main-aside{grid-template-columns:1fr}.app-main{padding:20px 16px 40px}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:20px 22px}.card+.card{margin-top:16px}.card-title{justify-content:space-between;align-items:center;gap:8px;margin:0 0 14px;font-size:15px;font-weight:600;display:flex}.card-muted{opacity:.55}.section-title{color:var(--text);margin:0 0 12px;font-size:15px;font-weight:600}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 18px}.stat-card.highlight{background:var(--primary-soft);border-color:var(--primary-soft-2)}.stat-card .stat-label{color:var(--text-muted);margin-bottom:6px;font-size:12px}.stat-card .stat-value{color:var(--text);font-size:28px;font-weight:700;line-height:1.2}.stat-card .stat-sub{color:var(--text-muted);margin-top:4px;font-size:12px}.workbench-quick-section{padding:20px 22px}.workbench-quick-section .card-title{margin-bottom:16px}.workbench-quick-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.workbench-quick-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0;min-height:96px;box-shadow:var(--shadow-sm);color:var(--text);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;column-gap:10px;padding:14px 12px;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;display:grid}.workbench-quick-card:hover{color:var(--text);background:var(--primary-soft);border-color:var(--primary-soft-2);text-decoration:none;transform:translateY(-2px);box-shadow:0 8px 18px #1677ff1f}.workbench-quick-card:active{transform:translateY(0)}.workbench-quick-card:focus-visible{outline-offset:2px;outline:3px solid #1677ff38}.workbench-quick-card__icon{border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.workbench-quick-card__icon svg{width:19px;height:19px}.workbench-quick-card__icon--blue{color:#1677ff;background:#e8f3ff}.workbench-quick-card__icon--purple{color:#7c5cfc;background:#f3eeff}.workbench-quick-card__icon--green{color:#00a870;background:#e8f8f2}.workbench-quick-card__icon--orange{color:#ed7b2f;background:#fff3e8}.workbench-quick-card__icon--pink{color:#eb2f96;background:#ffeef6}.workbench-quick-card__content{flex-direction:column;gap:3px;min-width:0;display:flex}.workbench-quick-card__label{font-size:14px;font-weight:600;line-height:1.45}.workbench-quick-card__desc{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.workbench-quick-card__arrow{color:var(--text-muted);font-size:22px;font-weight:300;line-height:1}@media (max-width:1240px){.workbench-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.workbench-quick-grid{grid-template-columns:1fr}}.btn{border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;line-height:1.4;text-decoration:none;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.btn:hover{text-decoration:none}.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff}.btn-ghost{background:var(--surface);border-color:var(--border);color:var(--text-secondary)}.btn-ghost:hover{border-color:var(--primary);color:var(--primary);background:var(--surface)}.btn-outline-primary{border-color:var(--primary);color:var(--primary);background:0 0}.btn-outline-primary:hover{background:var(--primary-soft);color:var(--primary-deep)}.btn-outline-danger{border-color:var(--danger);color:var(--danger);background:0 0}.btn-outline-danger:hover{background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.btn-danger{background:var(--danger-bg);color:var(--danger);border-color:#0000}.btn-sm{padding:5px 12px;font-size:12px}.btn-lg{border-radius:10px;padding:12px 28px;font-size:15px}.btn-block{width:100%}.btn-group{flex-wrap:wrap;gap:8px;display:flex}.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:16px}.form-label{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.form-hint{color:var(--text-muted);margin-top:4px;font-size:12px}.input,.select,.textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .12s,box-shadow .12s}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #0d9b9426}.textarea{resize:vertical;min-height:100px}.search-bar{align-items:stretch;gap:8px;display:flex}.search-bar .input{flex:1}.search-pill{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-input);border-radius:20px;align-items:flex-end;gap:8px;padding:12px 16px;display:flex}.search-pill .input{box-shadow:none;background:0 0;border:none;padding:8px 4px}.search-pill .input:focus{box-shadow:none}.filters{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.chip{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;align-items:center;gap:4px;padding:5px 12px;font-size:12px;text-decoration:none;transition:all .12s;display:inline-flex}.chip:hover{border-color:var(--primary);color:var(--primary);text-decoration:none}.chip.active{border-color:var(--primary);background:var(--primary);color:#fff}.chip.active:hover{color:#fff;background:var(--primary-hover)}.tabs-underline{border-bottom:1px solid var(--border);gap:24px;margin-bottom:16px;display:flex}.tabs-underline a{color:var(--text-secondary);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 2px 12px;font-size:14px;font-weight:500;text-decoration:none}.tabs-underline a:hover{color:var(--text);text-decoration:none}.tabs-underline a.active{color:var(--primary);border-bottom-color:var(--primary)}.tabs-underline .count{border-radius:var(--radius-pill);background:var(--danger);color:#fff;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:4px;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.tag{background:var(--border-light);color:var(--text-secondary);border-radius:4px;align-items:center;padding:2px 8px;font-size:12px;display:inline-flex}.tag-primary{background:var(--primary-soft);color:var(--primary-deep)}.tag-success{background:var(--success-bg);color:var(--success)}.tag-warning{background:var(--warning-bg);color:var(--warning)}.tag-danger{background:var(--danger-bg);color:var(--danger)}.tag-info{background:var(--info-bg);color:var(--info)}.tag-gold{background:var(--accent-gold-bg);color:#b78103}.badge-new{background:var(--info-bg);color:var(--info);border-radius:var(--radius-pill);margin-left:6px;padding:1px 6px;font-size:11px}.score-pill{border-radius:var(--radius-pill);border:1px solid var(--primary);color:var(--primary);align-items:center;gap:2px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-flex}.result-item{border-bottom:1px solid var(--border-light);padding:18px 0}.result-item:last-child{border-bottom:none}.result-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:12px;padding:18px 20px;transition:border-color .12s}.result-card:hover{border-color:var(--primary-soft-2)}.result-item h3,.result-card h3{margin:0 0 6px;font-size:16px;font-weight:600}.result-item h3 a,.result-card h3 a{color:var(--text);text-decoration:none}.result-item h3 a:hover,.result-card h3 a:hover{color:var(--primary)}.result-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;font-size:12px;display:flex}.result-summary{color:var(--text-secondary);margin:0 0 12px;font-size:13px}.list-row{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.list-row:last-child{border-bottom:none}.list-row .title{color:var(--text);font-weight:500;text-decoration:none}.list-row .title:hover{color:var(--primary)}.list-row .meta{color:var(--text-muted);font-size:12px}.settings-row{border-bottom:1px solid var(--border-light);color:inherit;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;text-decoration:none;display:flex}.settings-row:last-child{border-bottom:none}.settings-row:hover{text-decoration:none}.settings-row .label{color:var(--text-secondary);font-size:13px}.settings-row .value{color:var(--text);align-items:center;gap:8px;font-size:13px;display:flex}.settings-row .chevron{color:var(--text-disabled)}.cite{background:var(--primary-soft);min-width:18px;height:18px;color:var(--primary-deep);vertical-align:super;border-radius:4px;justify-content:center;align-items:center;margin-left:2px;padding:0 4px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.cite:hover{background:var(--primary);color:#fff;text-decoration:none}.cite-list{margin:0;padding:0;list-style:none}.cite-list li{border-bottom:1px solid var(--border-light);color:var(--text-secondary);padding:8px 0;font-size:13px}.cite-list li:last-child{border-bottom:none}.insight-block{background:var(--bg);border-radius:var(--radius);border-left:3px solid var(--primary);margin-bottom:12px;padding:14px 16px}.insight-block h4{color:var(--text-muted);text-transform:none;margin:0 0 8px;font-size:12px;font-weight:600}.insight-block p,.insight-block ul{margin:0;font-size:14px}.insight-block ul{padding-left:18px}.quota-bar{margin-bottom:12px}.quota-bar .label{color:var(--text-secondary);justify-content:space-between;margin-bottom:6px;font-size:12px;display:flex}.quota-track{background:var(--border-light);border-radius:3px;height:6px;overflow:hidden}.quota-fill{background:var(--primary);border-radius:3px;height:100%}.quota-fill.warn{background:var(--warning)}.quota-fill.danger{background:var(--danger)}.quota-chip{color:var(--text-secondary);background:var(--bg);border-radius:var(--radius-pill);white-space:nowrap;padding:4px 10px;font-size:12px}.state-box{text-align:center;background:var(--border-light);border-radius:var(--radius-md);border:none;padding:64px 24px}.state-box .icon{background:var(--surface);border:1px dashed var(--border);width:56px;height:56px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;font-size:22px;display:flex}.state-box h2{margin:0 0 8px;font-size:16px;font-weight:600}.state-box p{color:var(--text-muted);max-width:400px;margin:0 auto 20px;font-size:13px}.loading-box{text-align:center;padding:80px 24px}.spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.progress-steps{color:var(--text-muted);flex-wrap:wrap;justify-content:center;gap:20px;margin-top:24px;font-size:13px;display:flex}.progress-steps .done{color:var(--success)}.progress-steps .current{color:var(--primary);font-weight:600}.banner{border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:10px 16px;font-size:13px;display:flex}.banner-info{background:var(--primary-soft);color:var(--primary-deep)}.banner-warn{background:var(--warning-bg);color:var(--warning)}.banner-danger{background:var(--danger-bg);color:var(--danger)}.banner-success{background:var(--success-bg);color:var(--success)}.modal-backdrop{z-index:200;background:#1d212973;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.modal-backdrop.open{display:flex}.modal{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-md);padding:28px;position:relative}.modal h3{margin:0 0 8px;font-size:20px;font-weight:700}.modal .modal-desc{color:var(--text-muted);margin:0 0 20px;font-size:13px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:20px;line-height:1;position:absolute;top:16px;right:16px}.app-confirm-dialog-backdrop{z-index:300;background:#1d212973;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.app-confirm-dialog{border-radius:var(--radius-lg);background:var(--surface);width:min(420px,100%);box-shadow:var(--shadow-md);padding:28px;position:relative}.app-confirm-dialog h2{color:var(--text);margin:0 32px 8px 0;font-size:20px;font-weight:700;line-height:1.4}.app-confirm-dialog>p{color:var(--text-muted);margin:0;font-size:13px;line-height:1.6}.app-confirm-dialog__close{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid;position:absolute;top:16px;right:16px}.app-confirm-dialog__close:hover,.app-confirm-dialog__close:focus-visible{background:var(--bg);color:var(--text);outline:none}.app-confirm-dialog__error{color:var(--danger)!important;margin-top:12px!important}.app-confirm-dialog footer{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.app-confirm-dialog footer button{border:1px solid var(--border);background:var(--surface);min-height:32px;color:var(--text-secondary);cursor:pointer;font:500 13px var(--font);border-radius:6px;padding:0 12px}.app-confirm-dialog__confirm--primary{border-color:var(--primary)!important;background:var(--primary)!important;color:#fff!important}.app-confirm-dialog__confirm--danger{border-color:var(--danger)!important;background:var(--danger)!important;color:#fff!important}.app-confirm-dialog__alternate{color:var(--danger)!important;border-color:#f0bdbd!important}.app-confirm-dialog__alternate:hover:not(:disabled),.app-confirm-dialog__alternate:focus-visible:not(:disabled){border-color:var(--danger)!important;color:var(--danger)!important;background:#fff3f3!important}.app-confirm-dialog footer button:hover:not(:disabled),.app-confirm-dialog footer button:focus-visible:not(:disabled){border-color:var(--primary);color:var(--primary-deep);outline:none}.app-confirm-dialog__confirm--primary:hover:not(:disabled),.app-confirm-dialog__confirm--primary:focus-visible:not(:disabled){background:var(--primary-hover)!important;color:#fff!important}.app-confirm-dialog__confirm--danger:hover:not(:disabled),.app-confirm-dialog__confirm--danger:focus-visible:not(:disabled){color:#fff!important;background:#c53d48!important}.app-confirm-dialog button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.app-confirm-dialog-backdrop{padding:16px}.app-confirm-dialog{padding:24px 20px}}.seg-control{background:var(--bg);border-radius:var(--radius);margin-bottom:20px;padding:3px;display:flex}.seg-control button,.seg-control a{text-align:center;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:8px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none}.seg-control .active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.landing-body{background:var(--bg);min-height:100vh}.landing-wrap{text-align:center;max-width:880px;margin:0 auto;padding:48px 24px 80px}.landing-eyebrow{color:var(--text-muted);margin-bottom:12px;font-size:13px}.landing-title{letter-spacing:-.02em;color:var(--text);margin:0 0 12px;font-size:32px;font-weight:700;line-height:1.35}.landing-desc{color:var(--text-muted);margin:0 0 28px;font-size:15px}.landing-cards{text-align:left;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px;display:grid}.landing-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;min-height:260px;padding:22px;display:flex}.landing-card h3{align-items:center;gap:8px;margin:0 0 8px;font-size:16px;display:flex}.landing-card p{color:var(--text-muted);margin:0 0 16px;font-size:13px}.landing-card .mock-ui{background:var(--bg);border-radius:var(--radius);flex:1;padding:14px}.feature-grid{text-align:left;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:28px 0;display:grid}.feature-tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:inherit;padding:14px;text-decoration:none;transition:border-color .12s,box-shadow .12s}.feature-tile:hover{border-color:var(--primary);box-shadow:var(--shadow);color:inherit;text-decoration:none}.feature-tile .ico{background:var(--primary-soft);width:28px;height:28px;color:var(--primary);border-radius:8px;justify-content:center;align-items:center;margin-bottom:10px;font-size:14px;display:flex}.feature-tile h4{margin:0 0 4px;font-size:13px;font-weight:600}.feature-tile p{color:var(--text-muted);margin:0;font-size:11px;line-height:1.4}.sample-chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.sample-chips a{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text-secondary);padding:6px 12px;font-size:12px;text-decoration:none}.sample-chips a:hover{border-color:var(--primary);color:var(--primary)}.landing-topbar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 32px;display:flex}@media (max-width:720px){.landing-cards{grid-template-columns:1fr}.landing-title{font-size:26px}}.auth-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-md);padding:32px}.auth-card h1{margin:0 0 4px;font-size:22px;font-weight:700}.auth-card .sub{color:var(--text-muted);margin:0 0 24px;font-size:13px}.auth-footer{text-align:center;color:var(--text-secondary);margin-top:20px;font-size:13px}.checkbox-row{color:var(--text-secondary);align-items:flex-start;gap:8px;font-size:13px;display:flex}.checkbox-row input{accent-color:var(--primary);margin-top:3px}.map-page{max-width:900px;margin:40px auto;padding:0 24px 60px}.map-page h1{margin:0 0 8px;font-size:24px;font-weight:700}.map-group{margin-top:28px}.map-group h2{color:var(--text-muted);border-bottom:1px solid var(--border);margin:0 0 12px;padding-bottom:8px;font-size:13px;font-weight:600}.map-list{margin:0;padding:0;list-style:none}.map-list li{border-bottom:1px dashed var(--border);align-items:baseline;gap:12px;padding:8px 0;display:flex}.map-list .code{color:var(--text-muted);min-width:220px;font-family:Consolas,SF Mono,monospace;font-size:12px}.map-list a{font-weight:500}.sticky-actions{background:var(--surface);border-top:1px solid var(--border);justify-content:flex-end;gap:8px;margin-top:24px;padding:12px 0 0;display:flex;position:sticky;bottom:0}.divider{background:var(--border);height:1px;margin:16px 0}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.mt-16{margin-top:16px}.mb-16{margin-bottom:16px}.flex-between{justify-content:space-between;align-items:center;gap:12px;display:flex}.template-card{cursor:pointer;color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:block}.template-card:hover{border-color:var(--primary);box-shadow:var(--shadow);color:inherit;text-decoration:none}.template-card.selected{border-color:var(--primary);background:var(--primary-soft)}.opp-card{color:inherit;text-decoration:none;transition:border-color .15s;display:block}.opp-card:hover{border-color:var(--primary);color:inherit;text-decoration:none}.opp-card h3{margin:0 0 8px;font-size:15px}.demo-note{color:var(--text-muted);border:1px dashed var(--border);border-radius:4px;padding:2px 6px;font-size:11px;font-weight:400;display:inline-block}.avatar{background:var(--primary-soft);width:32px;height:32px;color:var(--primary-deep);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;text-decoration:none;display:flex}body.chat-layout{overflow:hidden auto}.shell-chat{min-height:100vh;overflow:visible}.shell-chat .app-sidebar{height:100vh}.app-main-chat{height:auto;min-height:100vh;display:block;overflow:visible;max-width:none!important;padding:0!important}body.market-chat-layout .app-main-chat{padding:0 0 160px!important}.app-main-chat>.chat-thread{min-height:0;overflow:visible}.chat-stage{flex-direction:column;flex:1;padding:32px 24px 16px;display:flex;overflow-y:auto}.chat-stage-inner{width:100%;max-width:780px;margin:0 auto}.chat-home{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;max-width:780px;margin:0 auto;padding:40px 24px 24px;display:flex}.chat-home h1{letter-spacing:-.02em;margin:0 0 8px;font-size:28px;font-weight:700}.chat-home .sub{color:var(--text-muted);margin:0 0 28px;font-size:14px}.chat-thread{width:100%;max-width:780px;margin:0 auto;padding:32px 24px 16px}.chat-thread--demo{max-width:1080px;padding-bottom:32px}.chat-thread--demo+.chat-composer-wrap .chat-composer{max-width:1080px}.chat-msg{align-items:flex-start;gap:12px;margin-bottom:24px;display:flex}.chat-msg.user{flex-direction:row-reverse}.chat-msg .bubble{border-radius:12px;max-width:100%;padding:12px 16px;font-size:14px;line-height:1.6}.chat-msg.user .bubble{background:var(--primary);color:#fff;border-bottom-right-radius:4px}.chat-thread--demo .chat-msg.user{width:100%}.chat-msg.user .avatar-sm--user{background:var(--primary-soft);color:var(--primary-deep)}.chat-msg.assistant .avatar-sm--assistant{background:var(--surface);box-shadow:var(--shadow-sm);padding:0;overflow:hidden}.chat-msg.assistant .avatar-sm--assistant img{object-fit:cover;width:100%;height:100%;display:block}.chat-msg.assistant .bubble{background:var(--surface);border:1px solid var(--border);color:var(--text);box-shadow:var(--shadow-sm);text-align:left;border-bottom-left-radius:4px;width:100%}.chat-msg .avatar-sm{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:600;display:flex}.chat-msg.user .avatar-sm{background:var(--primary-soft);color:var(--primary-deep)}.chat-msg.assistant .avatar-sm{color:#fff;background:linear-gradient(135deg,#53a7ff,#1677ff)}.chat-msg.assistant .avatar-sm--assistant{background:var(--surface);color:inherit}.chat-block-title{color:var(--text-muted);align-items:center;gap:6px;margin:0 0 10px;font-size:12px;font-weight:600;display:flex}.chat-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.chat-composer-wrap{bottom:0;right:0;left:var(--sidebar-w);z-index:10;background:linear-gradient(180deg, transparent, var(--bg) 30%);padding:12px 24px 20px;position:fixed}.chat-composer{background:var(--surface);border:1px solid var(--border);max-width:780px;box-shadow:var(--shadow-input);border-radius:20px;margin:0 auto;padding:12px 14px 10px}.composer-toolbar{border-bottom:1px solid var(--border-light);flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:8px;padding-bottom:8px;display:flex}.composer-ai-btn{border-radius:var(--radius-pill);color:#fff;cursor:pointer;background:#2b2f36;border:none;align-items:center;gap:4px;padding:5px 12px;font-family:inherit;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.composer-ai-btn:hover{color:#fff;background:#1d2129;text-decoration:none}body.market-chat-layout .chat-composer .composer-toolbar{gap:8px}body.market-chat-layout .skill-picker__trigger,body.market-chat-layout .chat-attach-trigger{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);width:auto;height:32px;box-shadow:none;color:var(--text-secondary);padding:0 10px;font-size:12px}body.market-chat-layout .skill-picker__trigger{align-items:center;gap:6px;display:inline-flex}body.market-chat-layout .skill-picker__trigger:hover,body.market-chat-layout .skill-picker__trigger.is-open,body.market-chat-layout .chat-attach-trigger:hover,body.market-chat-layout .chat-attach-trigger:focus-visible{border-color:var(--primary-soft-2);background:var(--primary-soft);color:var(--primary-deep)}body.market-chat-layout .skill-picker__trigger svg,body.market-chat-layout .chat-attach-trigger svg{width:15px;height:15px}body.market-chat-layout .chat-attach-trigger{align-items:center;gap:6px;display:inline-flex}body.market-chat-layout .skill-picker__panel{top:auto;bottom:calc(100% + 8px)}body.market-chat-layout .attach-chips{max-width:100%;margin:0 0 8px}.composer-skill{border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:4px;padding:5px 10px;font-family:inherit;font-size:12px;text-decoration:none;display:inline-flex}.composer-skill:hover,.composer-skill.active{background:var(--primary-soft);color:var(--primary-deep);border-color:var(--primary-soft-2);text-decoration:none}.composer-tools{align-items:center;gap:2px;margin-left:auto;display:flex}.composer-tool{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:14px;display:flex}.composer-tool:hover{background:var(--bg);color:var(--text)}.composer-input-row{align-items:flex-end;gap:8px;display:flex}.composer-input{resize:none;min-height:48px;max-height:144px;color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:8px 4px;font-family:inherit;font-size:16px;line-height:1.8}.composer-input::placeholder{color:var(--text-muted)}.composer-send{color:#fff;cursor:pointer;background:linear-gradient(#53a7ff,#1677ff);border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;text-decoration:none;transition:all .18s;display:flex;box-shadow:0 6px 16px #1677ff47}.composer-send svg{width:16px;height:16px}.composer-send:hover{color:#fff;background:linear-gradient(#53a7ff,#1677ff);text-decoration:none;transform:translateY(-1px);box-shadow:0 8px 20px #1677ff59}.composer-hint{text-align:center;color:var(--text-disabled);margin-top:8px;font-size:11px}.inline-result{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);margin-bottom:8px;padding:12px}.inline-result:last-child{margin-bottom:0}.inline-result h4{margin:0 0 4px;font-size:14px}.inline-result h4 a{color:var(--text);text-decoration:none}.inline-result h4 a:hover{color:var(--primary)}.report-preview{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);text-align:left;padding:16px}.report-preview h3{margin:0 0 8px;font-size:15px}.step-tag{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary-deep);align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.step-tag--light{color:#fff;background:#fff3}.chat-demo-answer{padding-bottom:50px;display:flex;position:relative}.chat-demo-answer:after{display:none}.chat-demo-answer:hover .chat-answer-actions,.chat-demo-answer:focus-within .chat-answer-actions,.chat-answer-actions:hover,.chat-answer-actions:focus-within{opacity:1;pointer-events:auto;transform:translateY(0)}.chat-thread--demo.is-demo-enhanced .chat-demo-answer{display:none}.chat-thread--demo.is-demo-enhanced .chat-demo-answer.is-visible{display:flex!important}.chat-demo-progress{gap:10px;margin:0;padding:0;list-style:none;display:grid}.chat-demo-progress li{color:var(--text-muted);align-items:flex-start;gap:10px;transition:color .2s;display:flex}.chat-thread--demo.is-demo-enhanced .chat-demo-progress li:not(.is-current):not(.is-complete){display:none}.chat-demo-progress__content{min-width:0;padding-top:1px}.chat-demo-progress__title{font-size:13px;font-weight:600;line-height:1.55;display:block}.chat-demo-progress__details{color:var(--text-muted);word-break:break-all;gap:3px;margin-top:4px;font-size:11px;font-weight:400;line-height:1.5;display:grid}.chat-demo-progress__details span{display:block}.chat-thread--demo.is-demo-enhanced .chat-demo-progress__details [data-thinking-detail]{opacity:0;transition:opacity .35s,transform .35s;display:none;transform:translateY(4px)}.chat-thread--demo.is-demo-enhanced .chat-demo-progress__details [data-thinking-detail].is-pending{display:block}.chat-thread--demo.is-demo-enhanced .chat-demo-progress__details [data-thinking-detail].is-visible{opacity:1;transform:translateY(0)}.chat-demo-progress__mark{border:1px solid var(--border);background:var(--bg);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:inline-flex}.chat-demo-progress .is-current,.chat-demo-progress .is-complete{color:var(--text)}.chat-demo-progress .is-current .chat-demo-progress__mark{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-deep)}.chat-demo-progress .is-complete .chat-demo-progress__mark{border-color:var(--primary-deep);background:var(--primary-deep);color:#fff}.chat-thinking-summary{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin-top:10px;padding:0;font-size:12px;line-height:1.5;display:none}.chat-thinking-summary svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px;transition:transform .2s}.chat-thinking-summary:hover,.chat-thinking-summary:focus-visible{color:var(--primary-deep);outline:none}.chat-demo-answer.is-thinking-complete.is-collapsed .chat-demo-progress{display:none}.chat-demo-answer.is-thinking-complete .chat-thinking-summary{margin:-2px 0 12px;display:inline-flex}.chat-demo-answer.is-thinking-complete:not(.is-collapsed) .chat-thinking-summary svg{transform:rotate(180deg)}.chat-demo-answer.is-thinking-complete .chat-demo-progress{border-bottom:1px solid var(--border-light);margin:0 0 14px;padding:10px 0 14px}.chat-answer-actions{z-index:3;opacity:0;pointer-events:auto;align-items:center;gap:4px;transition:opacity .18s,transform .18s;display:flex;position:absolute;bottom:8px;left:auto;right:16px;transform:translateY(-4px)}.chat-answer-action{width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;padding:0;transition:background .18s,color .18s;display:inline-flex}.chat-answer-action:hover,.chat-answer-action:focus-visible{background:var(--primary-soft);color:var(--primary-deep);outline:none}.chat-answer-action.is-active{color:var(--primary-deep)}.chat-answer-action svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.chat-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.chat-insight-grid section{border:1px solid var(--border-light);border-radius:var(--radius);background:var(--bg);padding:12px}.chat-insight-grid h4{margin:0 0 5px;font-size:13px}.chat-insight-grid p{color:var(--text-secondary);margin:0;font-size:13px}.chat-insight-text{margin:0}.chat-insight-text p{color:var(--text-secondary);margin:0 0 12px}.chat-insight-text p:last-child{margin-bottom:0}.chat-insight-text strong{color:var(--text);margin-bottom:3px;font-size:14px;display:inline-block}.chat-analysis-content{color:#000;font-size:16px;line-height:1.8}.chat-analysis-content p{margin:0 0 12px}.chat-analysis-content h3{color:var(--text);margin:24px 0 10px;font-size:18px;line-height:1.5}.chat-analysis-content strong{color:var(--text);font-weight:700}.chat-analysis-content ul{margin:0 0 12px;padding-left:20px}.chat-analysis-content li{margin:5px 0}.chat-analysis-content ul ul{margin:5px 0 0}.chat-followups{border-top:1px solid var(--border-light);margin-top:16px;padding-top:14px}.chat-followups__list{gap:8px;display:grid}.chat-followups__item{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;padding:10px 12px;font-size:13px;line-height:1.5;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s,color .18s}.chat-followups__item:hover,.chat-followups__item:focus-visible{border-color:var(--primary);background:linear-gradient(90deg, var(--primary-soft), #f7fbff);color:var(--primary-deep);animation:.7s ease-in-out infinite alternate chat-followup-pulse;transform:translate(6px)scale(1.01);box-shadow:0 7px 18px #1677ff29}.chat-followups__item:hover:before,.chat-followups__item:focus-visible:before{animation:.5s ease-in-out infinite alternate chat-followup-star;display:inline-block}.chat-followups__item:active{transform:translate(3px)scale(.99)}@keyframes chat-followup-pulse{0%{box-shadow:0 5px 14px #1677ff1f}to{box-shadow:0 9px 22px #1677ff38}}@keyframes chat-followup-star{0%{transform:rotate(0)scale(1)}to{transform:rotate(18deg)scale(1.18)}}.chat-followups__item:before{content:"✦";color:var(--primary);margin-right:8px}.chat-followups__item:focus-visible{outline:3px solid var(--primary-soft-2);outline-offset:2px}@media (max-width:960px){.chat-composer-wrap{left:0}}@media (max-width:640px){.chat-thread{padding:20px 16px 12px}.chat-insight-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.chat-demo-progress li{transition:none}}.chat-share-group{border-radius:var(--radius-md);border:1px solid #0000;margin:0 -12px;padding:12px;transition:border-color .16s,background .16s;position:relative}.chat-share-group__selector{border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);color:var(--text-secondary);font:inherit;cursor:pointer;align-items:center;gap:8px;margin:0 0 10px;padding:6px 10px;font-size:12px;display:none}.chat-share-group__checkbox{border:1.5px solid var(--text-muted);border-radius:5px;flex-shrink:0;place-items:center;width:16px;height:16px;display:inline-grid}.chat-share-group__checkbox:after{content:"✓";color:#fff;opacity:0;font-size:11px;font-weight:700}body.is-share-selecting .chat-composer-wrap,body.is-share-selecting .chat-answer-actions{display:none}body.is-share-selecting .app-main-chat{padding-bottom:120px!important}body.is-share-selecting .chat-share-group{border-color:var(--border);background:#ffffffb8}body.is-share-selecting .chat-share-group__selector{display:inline-flex}body.is-share-selecting .chat-share-group__selector:focus-visible{outline:3px solid var(--primary-soft-2);outline-offset:2px}body.is-share-selecting .chat-share-group.is-share-selected{border-color:var(--primary);background:var(--primary-soft)}.chat-share-group.is-share-selected .chat-share-group__selector{border-color:var(--primary);color:var(--primary-deep)}.chat-share-group.is-share-selected .chat-share-group__checkbox{border-color:var(--primary);background:var(--primary)}.chat-share-group.is-share-selected .chat-share-group__checkbox:after{opacity:1}.chat-share-selection-bar[hidden],.chat-share-link-modal[hidden]{display:none}.chat-share-selection-bar{z-index:30;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow);background:#fffffffa;align-items:center;gap:16px;padding:12px 14px 12px 18px;display:flex;position:fixed;bottom:24px;right:24px}.chat-share-selection-bar__status{color:var(--text-secondary);white-space:nowrap;margin:0;font-size:13px}.chat-share-selection-bar__actions{gap:8px;display:flex}.chat-share-link-modal .modal{width:min(440px,100vw - 32px)}.chat-share-link-modal__label{color:var(--text-secondary);margin:18px 0 6px;font-size:12px;font-weight:600;display:block}.chat-share-link-modal__copy-row{gap:8px;display:flex}.chat-share-link-modal__copy-row .input{background:var(--bg);flex:1;min-width:0;font-size:12px}.chat-share-link-modal__copy-row .btn{flex-shrink:0}body.is-share-modal-open{overflow:hidden}@media (max-width:960px){.chat-share-selection-bar{bottom:16px;right:16px}}@media (max-width:640px){.chat-share-selection-bar{justify-content:space-between;gap:10px;bottom:12px;left:12px;right:12px}.chat-share-selection-bar__status{white-space:normal}.chat-share-link-modal__copy-row{flex-direction:column}.chat-share-link-modal__copy-row .btn{width:100%}}.guide-steps{flex-wrap:wrap;gap:12px;margin:24px 0;display:flex}.guide-step{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex:1;min-width:140px;padding:16px}.guide-step.active{border-color:var(--primary);background:var(--primary-soft)}.guide-step .num{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-bottom:8px;font-size:13px;font-weight:600;display:inline-flex}.guide-step h4{margin:0 0 4px;font-size:14px}.guide-step p{color:var(--text-muted);margin:0;font-size:12px}.points-chip{border-radius:var(--radius-pill);background:var(--accent-gold-bg);color:#b36b00;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.ref-doc-chip{border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary-deep);align-items:center;gap:6px;margin:4px 4px 0 0;padding:4px 10px;font-size:12px;display:inline-flex}.upload-zone{border:1.5px dashed var(--border);border-radius:var(--radius-md);text-align:center;background:var(--bg);padding:40px 24px}.upload-zone:hover{border-color:var(--primary);background:var(--primary-soft)}.plan-compare{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:900px){.plan-compare{grid-template-columns:1fr}}.plan-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:20px}.plan-card.featured{border-color:var(--primary);box-shadow:var(--shadow);position:relative}.plan-card .price{margin:8px 0;font-size:24px;font-weight:700}.plan-card ul{color:var(--text-secondary);margin:12px 0 0;padding-left:18px;font-size:13px}.chart-bars{align-items:flex-end;gap:8px;height:120px;padding-top:8px;display:flex}.chart-bars .bar{background:var(--primary-soft-2);border-radius:4px 4px 0 0;flex:1;min-height:8px;position:relative}.chart-bars .bar span{text-align:center;color:var(--text-muted);font-size:10px;position:absolute;bottom:-18px;left:0;right:0}.admin-shell{min-height:100vh;display:flex}.admin-sidebar{color:#c9cdd4;background:#1d2129;flex-direction:column;flex-shrink:0;width:220px;padding:16px 0;display:flex}.admin-sidebar .brand{color:#fff;align-items:center;gap:8px;padding:8px 20px 20px;font-weight:600;text-decoration:none;display:flex}.admin-sidebar .brand:hover{color:#fff;text-decoration:none}.admin-sidebar nav a{color:#c9cdd4;padding:10px 20px;font-size:13px;text-decoration:none;display:block}.admin-sidebar nav a:hover,.admin-sidebar nav a.active{color:#fff;background:#0d9b9433;text-decoration:none}.admin-sidebar .nav-group-title{color:#86909c;text-transform:uppercase;letter-spacing:.5px;padding:16px 20px 6px;font-size:11px}.admin-main{background:var(--bg);flex:1;min-width:0}.admin-topbar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.admin-content{padding:24px}.admin-table{border-collapse:collapse;background:var(--surface);border-radius:var(--radius-md);width:100%;font-size:13px;overflow:hidden}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border-light);padding:12px 14px}.admin-table th{background:var(--bg);color:var(--text-secondary);font-size:12px;font-weight:600}.admin-table tr:hover td{background:var(--primary-soft)}.manage-shell{background:var(--bg);min-height:100vh;display:flex}.manage-sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;flex-shrink:0;width:232px;min-height:100vh;padding:16px 12px;display:flex}.manage-sidebar .brand{color:var(--text);align-items:center;gap:10px;margin:0 6px 22px;padding:4px 8px 16px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.manage-sidebar .brand:hover{color:var(--text);text-decoration:none}.manage-sidebar__label{color:var(--text-muted);padding:0 10px 8px;font-size:12px}.manage-sidebar__nav{flex-direction:column;gap:4px;display:flex}.manage-sidebar__nav a{border-radius:var(--radius);color:var(--text-secondary);align-items:center;gap:9px;padding:10px;font-size:14px;text-decoration:none;display:flex}.manage-sidebar__nav a:hover,.manage-sidebar__nav a.active{background:var(--primary-soft);color:var(--primary);font-weight:600;text-decoration:none}.manage-sidebar__footer{border-top:1px solid var(--border-light);margin-top:auto;padding:16px 10px 4px;font-size:13px}.manage-sidebar__footer a{color:var(--text-muted);text-decoration:none}.manage-sidebar__footer a:hover{color:var(--primary)}.manage-main{flex:1;min-width:0}.manage-topbar{border-bottom:1px solid var(--border);background:var(--surface);min-height:57px;color:var(--text-secondary);justify-content:space-between;align-items:center;padding:0 28px;font-size:14px;display:flex}.manage-content{padding:28px}.manage-invite-summary{grid-template-columns:minmax(175px,.62fr) minmax(0,2fr);align-items:stretch;gap:16px;display:grid}.manage-invite-summary>.card{height:162px}.manage-invite-card{background:linear-gradient(135deg,#f8fbff 0%,#edf5ff 100%);border-color:#cfe2ff;justify-content:space-between;align-items:center;gap:24px;min-width:0;padding:24px 28px;display:flex}.manage-invite-card__eyebrow{color:var(--text-muted);margin:0 0 7px;font-size:13px}.manage-invite-card__code{color:var(--primary-deep);letter-spacing:1px;margin-bottom:10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:28px;font-weight:700}.manage-invite-card__reward{border-radius:var(--radius);background:#fff9eb;border:1px solid #f3d9a4;flex-direction:column;justify-content:center;align-self:end;min-width:0;margin-top:0;padding:20px 22px;display:flex;height:162px!important}.manage-invite-card__reward-label{color:#8c640d;font-size:12px}.manage-invite-card__reward-value{color:#c78814;font-variant-numeric:tabular-nums;margin:3px 0 2px;font-size:28px;line-height:1.15}.manage-invite-card__reward-value span{margin-left:3px;font-size:13px;font-weight:500}.manage-invite-card__reward-note{color:#a57924;font-size:14px}.manage-invite-points{color:#b97908;font-variant-numeric:tabular-nums;background:#fff6df;border-radius:4px;padding:3px 7px;font-size:12px;font-weight:600;display:inline-flex}.manage-tabs{border-bottom:1px solid var(--border-light);gap:22px;margin-bottom:16px;display:flex}.manage-tabs button{color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;padding:9px 2px 11px;font-size:14px;position:relative}.manage-tabs button.active{color:var(--primary);font-weight:600}.manage-tabs button.active:after{background:var(--primary);content:"";height:2px;position:absolute;bottom:-1px;left:0;right:0}.manage-tabs span{color:var(--text-muted);margin-left:4px;font-size:12px}.manage-table-scroll{overflow-x:auto}.manage-invite-card__actions,.manage-invite-actions{flex-wrap:wrap;gap:8px;display:flex}.manage-invite-card__actions{justify-content:flex-end}.manage-invite-config-card{flex-wrap:wrap;align-items:center;gap:16px 28px;padding:20px;display:flex}.manage-invite-config-card>:first-child{flex:280px}.manage-invite-config-card__controls{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.manage-invite-config-field{color:var(--text);flex-direction:column;gap:6px;font-size:13px;font-weight:500;display:flex}.manage-invite-config-input{align-items:center;gap:8px;display:flex}.manage-invite-config-input .input{font-variant-numeric:tabular-nums;width:112px}.manage-invite-config-input em{color:var(--text-secondary);font-size:13px;font-style:normal;font-weight:400}.manage-invite-config-error{min-height:15px;color:var(--danger);flex-basis:100%;font-size:12px}.manage-invite-table{min-width:790px}.manage-invite-code,.manage-invite-number{white-space:nowrap;font-variant-numeric:tabular-nums}.manage-invite-code{color:var(--primary-deep);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:600}.manage-invite-number{text-align:right!important}.manage-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:300px;display:flex}.manage-empty-state__icon{background:var(--primary-soft);width:48px;height:48px;color:var(--primary);border-radius:14px;justify-content:center;align-items:center;margin-bottom:12px;font-size:24px;display:inline-flex}.manage-empty-state h2{margin:0 0 8px;font-size:18px}.manage-empty-state p{color:var(--text-muted);margin:0}.manage-user-filter-card,.manage-user-table-card{padding:20px}.manage-user-filter-card__header,.manage-user-table-card__header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.manage-user-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.manage-user-filter-field{min-width:0;color:var(--text);flex-direction:column;gap:6px;font-size:13px;font-weight:500;display:flex}.manage-user-filter-field .input,.manage-user-filter-field .select{min-width:0}.manage-user-date-range{color:var(--text-muted);align-items:center;gap:7px;font-size:12px;font-weight:400;display:flex}.manage-user-date-range .input{min-width:0;padding-left:8px;padding-right:8px}.manage-user-filter-error{min-height:15px;color:var(--danger);font-size:12px;font-weight:400}.manage-user-filter-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.manage-user-count{color:var(--text-muted);font-size:13px}.manage-user-count strong{color:var(--primary);font-variant-numeric:tabular-nums}.manage-user-table-scroll{overflow-x:auto}.manage-user-table{min-width:940px}.manage-user-phone,.manage-user-number,.manage-user-amount{font-variant-numeric:tabular-nums;white-space:nowrap}.manage-user-number,.manage-user-amount{text-align:right!important}.manage-user-empty{color:var(--text-muted);text-align:center!important;padding:34px!important}.tag-muted{color:#7b8490;background:#f1f3f5}body.manage-user-detail-open{overflow:hidden}.manage-user-detail-modal{width:min(880px,100vw - 48px);max-width:880px;max-height:calc(100vh - 48px);overflow-y:auto}.manage-user-detail-section{border-top:1px solid var(--border-light);padding:18px 0}.manage-user-detail-section:first-child{border-top:0;padding-top:4px}.manage-user-detail-section h4{margin:0 0 13px;font-size:14px}.manage-user-detail-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 22px;margin:0;display:grid}.manage-user-detail-facts dt,.manage-user-detail-inviter>span,.manage-user-detail-invited>span{color:var(--text-muted);margin-bottom:4px;font-size:12px}.manage-user-detail-facts dd{color:var(--text);font-variant-numeric:tabular-nums;margin:0;font-size:13px}.manage-user-detail-payment{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:10px 20px;font-size:13px;display:flex}.manage-user-detail-payment strong{color:var(--primary-deep);font-variant-numeric:tabular-nums;font-size:16px}.manage-user-detail-table-scroll{overflow-x:auto}.manage-user-detail-table{border-collapse:collapse;width:100%;min-width:540px;font-size:13px}.manage-user-detail-table th,.manage-user-detail-table td{border-bottom:1px solid var(--border-light);text-align:left;padding:9px 10px}.manage-user-detail-table th{color:var(--text-muted);font-size:12px;font-weight:600}.manage-user-points--positive,.manage-user-points--negative{font-variant-numeric:tabular-nums;font-weight:600}.manage-user-points--positive{color:var(--success)}.manage-user-points--negative{color:var(--danger)}.manage-user-detail-inviter,.manage-user-detail-invited{flex-direction:column;gap:5px;display:flex}.manage-user-detail-invited{margin-top:14px}.manage-user-detail-inviter strong{font-size:13px}.manage-user-detail-invited-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.manage-user-detail-invited-list li{border-radius:var(--radius);background:var(--bg);justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.manage-user-detail-invited-list strong{font-size:13px}.manage-user-detail-invited-list span{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:12px}.manage-user-detail-empty,.manage-user-detail-empty-inline{color:var(--text-muted);font-size:13px;font-weight:400}.manage-user-detail-empty{margin:0}@media (max-width:1000px){.manage-user-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.manage-shell{display:block}.manage-sidebar{border-right:0;border-bottom:1px solid var(--border);width:auto;min-height:0}.manage-sidebar .brand,.manage-sidebar__label,.manage-sidebar__footer{display:none}.manage-sidebar__nav{flex-direction:row}.manage-sidebar__nav a{flex:1;justify-content:center}.manage-content{padding:18px}.manage-topbar{padding:0 18px}.manage-user-filter-card,.manage-user-table-card{padding:16px}.manage-user-filter-card__header,.manage-user-table-card__header{flex-direction:column;align-items:flex-start;gap:5px}.manage-user-filter-grid{grid-template-columns:1fr;gap:12px}.manage-user-filter-actions .btn{flex:1}.manage-user-detail-modal{width:min(100%,100vw - 24px);max-height:calc(100vh - 24px);padding:20px}.manage-user-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.manage-user-detail-invited-list li{flex-direction:column;align-items:flex-start;gap:4px}.manage-invite-summary{grid-template-columns:1fr}.manage-invite-card{flex-direction:column;align-items:flex-start}.manage-invite-card__actions{justify-content:flex-start}.manage-invite-config-card{align-items:stretch;padding:16px}.manage-invite-config-card__controls{align-items:stretch}.manage-invite-config-card__controls .btn{flex:1}}
