.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card{width:100%;max-width:400px;padding:40px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.login-logo{display:flex;align-items:center;gap:10px;margin-bottom:4px}.login-logo .logo-text{font-size:24px;font-weight:600;color:var(--text-primary)}.login-logo .accent{color:var(--color-primary)}.internal-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:3px 8px;border-radius:6px;background:var(--color-primary);color:#fff}.login-subtitle{font-size:13px;color:var(--text-secondary);margin-bottom:24px}.login-error{padding:10px 14px;background:#ff3b3014;border:1px solid rgba(255,59,48,.2);border-radius:var(--radius-sm);color:var(--color-danger);font-size:13px;margin-bottom:16px}.login-card .form-group{margin-bottom:16px}.login-card .form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:13px;color:var(--text-primary)}.login-card .form-group input{width:100%;padding:10px 14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;background:var(--bg-input);color:var(--text-primary);transition:all var(--transition-fast);box-sizing:border-box}.login-card .form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.login-card .form-group input::placeholder{color:var(--text-muted)}.login-btn{width:100%;padding:10px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);margin-top:4px}.login-btn:hover:not(:disabled){background:var(--color-primary-hover)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.internal-page{padding:24px;max-width:1400px}.internal-error{padding:16px;background:#ff3b3014;border:1px solid rgba(255,59,48,.2);border-radius:var(--radius-sm);color:var(--color-danger);font-size:14px}.internal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.internal-header h1{font-size:22px;font-weight:600;color:var(--text-primary)}.internal-subtitle{font-size:13px;color:var(--text-secondary);margin-top:2px}.internal-toolbar{display:flex;gap:10px;margin-bottom:12px}.search-box{flex:1;position:relative;max-width:400px}.search-box .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:13px}.search-box input{width:100%;padding:9px 12px 9px 34px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;background:var(--bg-input);color:var(--text-primary);transition:all var(--transition-fast)}.search-box input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.search-box input::placeholder{color:var(--text-muted)}.filter-btn{display:flex;align-items:center;gap:6px;padding:9px 14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all var(--transition-fast)}.filter-btn:hover,.filter-btn.active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.filter-bar{display:flex;gap:12px;margin-bottom:16px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:12px;font-weight:500;color:var(--text-secondary);white-space:nowrap}.filter-group select{padding:6px 10px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;background:var(--bg-input);color:var(--text-primary);cursor:pointer}.filter-group select:focus{outline:none;border-color:var(--color-primary)}.customer-table-wrapper{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.customer-table{width:100%;border-collapse:collapse;font-size:13px}.customer-table thead{background:var(--bg-hover)}.customer-table th{padding:10px 14px;text-align:left;font-weight:500;font-size:12px;color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap;-webkit-user-select:none;user-select:none}.customer-table th.sortable{cursor:pointer}.customer-table th.sortable:hover{color:var(--text-primary)}.customer-table th svg{margin-left:4px;vertical-align:middle}.customer-row{cursor:pointer;transition:background var(--transition-fast)}.customer-row:hover{background:var(--bg-hover)}.customer-row td{padding:10px 14px;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.customer-row:last-child td{border-bottom:none}.org-cell{display:flex;align-items:center;gap:10px}.org-avatar{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--bg-hover);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:13px;flex-shrink:0}.org-name{font-weight:500;color:var(--text-primary)}.org-id{font-size:11px;color:var(--text-muted);font-family:monospace}.plan-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;white-space:nowrap}.plan-free{background:var(--bg-hover);color:var(--text-secondary)}.plan-pro{background:#007aff1a;color:#007aff}.plan-business{background:#af52de1a;color:var(--color-purple)}.plan-enterprise{background:#f5a6231a;color:var(--color-warning)}.plan-design_partner,.plan-early_adopter{background:#34c7591a;color:var(--color-success)}.mrr-cell{font-weight:600;font-variant-numeric:tabular-nums}.billing-interval{display:block;font-size:10px;font-weight:400;color:var(--text-muted);text-transform:lowercase}.usage-cell{display:flex;flex-direction:column;gap:4px}.usage-cell span{font-variant-numeric:tabular-nums;font-size:12px}.usage-bar-mini{width:60px;height:4px;background:var(--bg-hover);border-radius:2px;overflow:hidden}.usage-fill{height:100%;background:var(--color-primary);border-radius:2px;transition:width var(--transition-normal)}.usage-fill.warning{background:var(--color-warning)}.usage-fill.danger{background:var(--color-danger)}.health-dot{display:inline-flex;align-items:center;gap:4px;font-size:11px}.health-dot:before{content:"";width:8px;height:8px;border-radius:50%}.health-dot.healthy:before{background:var(--color-success)}.health-dot.warning:before{background:var(--color-warning)}.health-dot.critical:before{background:var(--color-danger)}.health-dot.critical{color:var(--color-danger)}.date-cell{font-size:12px;color:var(--text-secondary);white-space:nowrap}.empty-table{padding:40px;text-align:center;color:var(--text-secondary);font-size:14px}@media(max-width:768px){.internal-page{padding:16px}.customer-table-wrapper{overflow-x:auto}.filter-bar{flex-direction:column;gap:8px}}.payment-link-widget{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px}.payment-link-widget h3{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:16px}.payment-link-widget h3 svg{color:var(--text-secondary)}.pl-generate{margin-bottom:16px}.pl-form-row{display:flex;gap:8px;margin-bottom:8px}.pl-form-row select{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;background:var(--bg-input);color:var(--text-primary);cursor:pointer}.pl-form-row select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.pl-custom-amount{position:relative;width:120px}.pl-dollar-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:11px}.pl-custom-amount input{width:100%;padding:8px 12px 8px 26px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;background:var(--bg-input);color:var(--text-primary);box-sizing:border-box}.pl-custom-amount input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.pl-generate-btn{width:100%;padding:8px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pl-generate-btn:hover:not(:disabled){background:var(--color-primary-hover)}.pl-generate-btn:disabled{opacity:.5;cursor:not-allowed}.pl-error{margin-top:8px;padding:6px 10px;background:#ff3b3014;border-radius:6px;color:var(--color-danger);font-size:12px}.pl-links-list{display:flex;flex-direction:column;gap:8px}.pl-link-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary)}.pl-link-item.status-paid{border-color:#34c7594d;background:#34c7590a}.pl-link-item.status-expired{opacity:.6}.pl-link-info{flex:1;min-width:0}.pl-link-plan{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.pl-link-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pl-status-badge{font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:4px}.pl-status-badge.created{background:#007aff1a;color:#007aff}.pl-status-badge.paid{background:#34c7591a;color:var(--color-success)}.pl-status-badge.expired{background:var(--bg-hover);color:var(--text-muted)}.pl-link-date{font-size:11px;color:var(--text-muted)}.pl-link-email{font-size:11px;color:var(--text-secondary)}.pl-copy-btn{background:none;border:1px solid var(--border-color);border-radius:6px;padding:6px 8px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;flex-shrink:0}.pl-copy-btn:hover{color:var(--color-primary);border-color:var(--color-primary)}.pl-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding-top:4px}.pl-pagination span{font-size:12px;color:var(--text-muted)}.pl-pagination button{background:none;border:none;color:var(--text-secondary);font-size:12px;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:color var(--transition-fast)}.pl-pagination button:hover:not(:disabled){color:var(--color-primary)}.pl-pagination button:disabled{color:var(--text-muted);opacity:.4;cursor:default}.pl-empty{text-align:center;color:var(--text-muted);font-size:13px;padding:16px}.customer-detail .back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all var(--transition-fast);margin-bottom:16px}.customer-detail .back-btn:hover{color:var(--text-primary);border-color:var(--border-hover)}.customer-header-card{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:16px}.customer-header-left{display:flex;align-items:center;gap:14px}.customer-header-avatar{width:44px;height:44px;border-radius:var(--radius-md);background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.customer-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.customer-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.customer-meta-text{font-size:12px;color:var(--text-secondary)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600}.status-active{background:#34c7591a;color:var(--color-success)}.status-past_due{background:#ff3b301a;color:var(--color-danger)}.status-canceled{background:var(--bg-hover);color:var(--text-secondary)}.status-canceling{background:#f5a6231a;color:var(--color-warning)}.customer-header-right{text-align:right}.header-stat-value{font-size:20px;font-weight:700;color:var(--text-primary)}.header-stat-label{font-size:12px;color:var(--text-secondary)}.actions-bar{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);font-size:13px;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;white-space:nowrap}.action-btn:hover{border-color:var(--border-hover);background:var(--bg-hover)}.action-btn.primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.action-btn.primary:hover{background:var(--color-primary-hover)}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn-sm{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-card);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all var(--transition-fast)}.action-btn-sm:hover{color:var(--color-primary);border-color:var(--color-primary)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px}.detail-card h3{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:16px}.detail-card h3 svg{color:var(--text-secondary)}.card-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-header-row h3{margin-bottom:0}.detail-rows{display:flex;flex-direction:column;gap:10px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.detail-key{font-size:13px;color:var(--text-secondary)}.detail-val{font-size:13px;color:var(--text-primary);font-weight:500;text-align:right}.detail-val.mono{font-family:monospace;font-size:12px;display:flex;align-items:center;gap:6px}.copy-inline{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;font-size:11px;transition:color var(--transition-fast)}.copy-inline:hover{color:var(--color-primary)}.usage-display{margin-bottom:20px}.usage-big-number{font-size:36px;font-weight:700;color:var(--text-primary);line-height:1.1}.usage-limit{font-size:18px;color:var(--text-secondary);font-weight:400}.usage-label{font-size:13px;color:var(--text-secondary);margin-top:2px;margin-bottom:10px}.usage-bar{height:6px;background:var(--bg-hover);border-radius:3px;overflow:hidden;margin-top:4px}.usage-bar-fill{height:100%;background:var(--color-primary);border-radius:3px;transition:width var(--transition-normal)}.usage-bar-fill.warning{background:var(--color-warning)}.usage-bar-fill.danger{background:var(--color-danger)}.upsell-signal{margin-top:8px;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:500;background:#f5a62314;color:var(--color-warning)}.upsell-signal.danger{background:#ff3b3014;color:var(--color-danger)}.usage-chart{border-top:1px solid var(--border-color);padding-top:16px}.chart-label{font-size:12px;color:var(--text-secondary);margin-bottom:12px}.chart-bars{display:flex;align-items:flex-end;gap:8px;height:100px}.chart-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.chart-bar-wrapper{width:100%;height:80px;display:flex;align-items:flex-end}.chart-bar{width:100%;background:var(--color-primary);border-radius:3px 3px 0 0;min-height:2px;transition:height var(--transition-normal)}.chart-bar-label{font-size:10px;color:var(--text-muted)}.chart-bar-value{font-size:10px;color:var(--text-secondary);font-weight:600}.team-list{display:flex;flex-direction:column;gap:8px}.team-row{display:flex;align-items:center;gap:10px;padding:8px 0}.team-avatar{width:30px;height:30px;border-radius:50%;background:var(--bg-hover);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.team-info{flex:1;min-width:0}.team-name{font-size:13px;font-weight:500;color:var(--text-primary)}.team-email{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-tag{padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600;background:var(--bg-hover);color:var(--text-secondary)}.role-admin{background:#af52de1a;color:var(--color-purple)}.role-owner{background:#007aff1a;color:#007aff}.invoice-list{display:flex;flex-direction:column;gap:8px}.invoice-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-color)}.invoice-row:last-child{border-bottom:none}.invoice-amount{font-size:14px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.invoice-status{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:uppercase}.invoice-status.paid{background:#34c7591a;color:var(--color-success)}.invoice-status.open{background:#f5a6231a;color:var(--color-warning)}.invoice-status.void,.invoice-status.draft{background:var(--bg-hover);color:var(--text-secondary)}.invoice-date{font-size:12px;color:var(--text-secondary)}.invoice-link{color:var(--text-muted);font-size:12px;padding:4px;transition:color var(--transition-fast)}.invoice-link:hover{color:var(--color-primary)}.signing-list{display:flex;flex-direction:column;gap:10px}.signing-row{padding:8px 0;border-bottom:1px solid var(--border-color)}.signing-row:last-child{border-bottom:none}.signing-status-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.signing-status{font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:capitalize}.signing-status.completed{background:#34c7591a;color:var(--color-success)}.signing-status.pending{background:#f5a6231a;color:var(--color-warning)}.signing-status.sent{background:#007aff1a;color:#007aff}.signing-status.voided{background:var(--bg-hover);color:var(--text-secondary)}.signing-date{font-size:12px;color:var(--text-secondary)}.signing-recipients{display:flex;gap:6px;flex-wrap:wrap}.signing-recipient{font-size:12px;color:var(--text-secondary);padding:1px 6px;background:var(--bg-hover);border-radius:4px}.note-form{margin-bottom:16px}.note-form textarea{width:100%;padding:10px 14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;font-family:inherit;background:var(--bg-input);color:var(--text-primary);resize:vertical;box-sizing:border-box}.note-form textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.note-form textarea::placeholder{color:var(--text-muted)}.note-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}.btn-cancel-sm,.btn-save-sm{padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-cancel-sm{background:none;border:1px solid var(--border-color);color:var(--text-secondary)}.btn-cancel-sm:hover{color:var(--text-primary);border-color:var(--border-hover)}.btn-save-sm{background:var(--color-primary);color:#fff;border:none}.btn-save-sm:hover:not(:disabled){background:var(--color-primary-hover)}.btn-save-sm:disabled{opacity:.5;cursor:not-allowed}.notes-list{display:flex;flex-direction:column;gap:12px}.note-item{padding:10px 0;border-bottom:1px solid var(--border-color)}.note-item:last-child{border-bottom:none}.note-header{display:flex;justify-content:space-between;margin-bottom:4px}.note-author{font-size:12px;font-weight:600;color:var(--text-primary)}.note-date{font-size:12px;color:var(--text-muted)}.note-content{font-size:13px;color:var(--text-primary);line-height:1.5;white-space:pre-wrap}.empty-section{padding:20px;text-align:center;color:var(--text-muted);font-size:13px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}.modal-content{background:var(--bg-card);border-radius:var(--radius-lg);padding:28px;width:100%;max-width:440px;box-shadow:var(--shadow-lg)}.modal-content h2{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.modal-subtitle{font-size:13px;color:var(--text-secondary);margin-bottom:20px}.modal-content .form-group{margin-bottom:14px}.modal-content .form-group label{display:block;font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:6px}.modal-content .form-group input{width:100%;padding:9px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;background:var(--bg-input);color:var(--text-primary);box-sizing:border-box}.modal-content .form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}.btn-cancel{padding:9px 18px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:none;color:var(--text-secondary);font-size:14px;cursor:pointer;transition:all var(--transition-fast)}.btn-cancel:hover{color:var(--text-primary);border-color:var(--border-hover)}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-submit{padding:9px 18px;border:none;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-submit:hover:not(:disabled){background:var(--color-primary-hover)}.btn-submit:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.customer-header-card{flex-direction:column;align-items:flex-start;gap:12px}.detail-grid{grid-template-columns:1fr}.actions-bar{flex-wrap:wrap}}.csv-import-modal{max-width:600px}.csv-import-modal h2{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:20px}.csv-upload-area{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 20px;border:2px dashed var(--border-color);border-radius:var(--radius-md);text-align:center}.csv-upload-icon{font-size:28px;color:var(--text-muted)}.csv-upload-area p{margin:0;color:var(--text-primary);font-size:14px}.csv-upload-hint{color:var(--text-muted)!important;font-size:12px!important}.csv-summary{display:flex;align-items:center;gap:16px;margin-bottom:16px;font-size:13px}.csv-summary-valid{color:var(--color-success);font-weight:600}.csv-summary-skipped{display:inline-flex;align-items:center;gap:4px;color:var(--color-warning)}.csv-preview-container{margin-bottom:20px;overflow-x:auto}.csv-preview-table{width:100%;border-collapse:collapse;font-size:13px;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.csv-preview-table th{padding:8px 12px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;text-align:left;background:var(--bg-hover);border-bottom:1px solid var(--border-color)}.csv-preview-table td{padding:8px 12px;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.csv-preview-table tbody tr:last-child td{border-bottom:none}.csv-row-invalid{background:#ff3b300d}.csv-row-duplicate{background:#ffb30014}.csv-missing{color:var(--color-error);font-style:italic;font-size:12px}.csv-preview-more{margin:8px 0 0;font-size:12px;color:var(--text-muted);text-align:center}.csv-result{display:flex;flex-direction:column;align-items:center;gap:12px;padding:30px 20px;text-align:center}.csv-result-icon{font-size:36px;color:var(--color-success)}.csv-result p{margin:0;font-size:15px;color:var(--text-primary);font-weight:500}.csv-result-skipped{color:var(--text-muted)!important;font-weight:400!important;font-size:13px!important}.csv-summary-duplicates{display:inline-flex;align-items:center;gap:4px;color:#e6a200}.csv-status-invalid{color:var(--color-error);font-size:12px;font-weight:500}.csv-status-duplicate{color:#e6a200;font-size:12px;font-weight:500;cursor:help}.csv-status-ok{color:var(--color-success);font-size:12px}.pipeline-page{max-width:none}.pipeline-page .internal-header{display:flex;align-items:center;justify-content:space-between}.pipeline-header-actions{display:flex;align-items:center;gap:10px}.view-toggle{display:inline-flex;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.view-toggle-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:var(--bg-card);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);font-size:13px}.view-toggle-btn:not(:last-child){border-right:1px solid var(--border-color)}.view-toggle-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.view-toggle-btn.active{color:var(--color-primary);background:var(--color-primary-light)}.list-filter-select{padding:7px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);font-size:13px;cursor:pointer}.list-filter-select:focus{outline:none;border-color:var(--color-primary)}.pipeline-import-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pipeline-import-btn:hover,.pipeline-export-btn:hover{background:var(--bg-hover);border-color:var(--border-hover)}.pipeline-export-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pipeline-add-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pipeline-add-btn:hover{background:var(--color-primary-hover)}.kanban-board{display:flex;gap:10px;overflow-x:auto;padding-bottom:16px;min-height:600px}.kanban-column{min-width:170px;max-width:200px;flex:1;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;transition:border-color var(--transition-fast)}.kanban-column.drag-over{border-color:var(--color-primary);background:var(--color-primary-light)}.column-header{padding:12px 14px;border-bottom:1px solid var(--border-color)}.column-title{font-size:12px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:6px}.column-count{background:var(--bg-hover);color:var(--text-secondary);padding:1px 6px;border-radius:10px;font-size:11px;font-weight:600}.column-cards{flex:1;padding:8px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;min-height:60px}.lead-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:10px 12px;cursor:pointer;transition:all var(--transition-fast)}.lead-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.lead-card.stale{border-left:3px solid var(--color-warning)}.lead-card-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.lead-card-icon{color:var(--text-muted);font-size:11px;flex-shrink:0}.lead-card-company{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lead-card-contact{font-size:12px;color:var(--text-secondary);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lead-card-footer{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.lead-card-days{font-size:11px;color:var(--text-muted)}.lead-card-days.stale{color:var(--color-warning);font-weight:600}.lead-card-source{font-size:10px;padding:1px 5px;border-radius:4px;background:var(--bg-hover);color:var(--text-secondary);text-transform:capitalize}.source-inbound{background:#34c7591a;color:var(--color-success)}.source-outbound{background:#007aff1a;color:#007aff}.source-referral{background:#af52de1a;color:var(--color-purple)}.source-demo_request{background:#f5a6231a;color:var(--color-warning)}.lead-card-assignee{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);font-size:9px;font-weight:700;flex-shrink:0;margin-left:auto}.lead-list-container{overflow-x:auto}.lead-list-table{width:100%;border-collapse:collapse;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.lead-list-table thead{background:var(--bg-hover)}.lead-list-table th{padding:10px 14px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;text-align:left;white-space:nowrap;border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none}.lead-list-table th.sortable{cursor:pointer}.lead-list-table th.sortable:hover{color:var(--text-primary)}.lead-list-table td{padding:10px 14px;font-size:13px;color:var(--text-primary);border-bottom:1px solid var(--border-color);white-space:nowrap}.lead-list-table tbody tr{cursor:pointer;transition:background var(--transition-fast)}.lead-list-table tbody tr:hover{background:var(--bg-hover)}.lead-list-table tbody tr:last-child td{border-bottom:none}.lead-list-table tbody tr.stale-row{border-left:3px solid var(--color-warning)}.lead-list-company{font-weight:600;display:flex;align-items:center;gap:8px}.lead-list-contact{color:var(--text-secondary)}.lead-list-assignee{display:inline-flex;align-items:center;gap:6px}.stale-text{color:var(--color-warning);font-weight:600}.text-muted{color:var(--text-muted);font-style:italic;font-size:12px}.lead-list-empty{text-align:center;color:var(--text-muted);padding:40px 14px!important;font-style:italic}.lead-modal{max-width:540px}.lead-modal h2{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lead-modal .form-group{margin-bottom:14px}.lead-modal .form-group label{display:block;font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:6px}.lead-modal .form-group input,.lead-modal .form-group select,.lead-modal .form-group textarea{width:100%;padding:9px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;font-family:inherit;background:var(--bg-input);color:var(--text-primary);box-sizing:border-box}.lead-modal .form-group input:focus,.lead-modal .form-group select:focus,.lead-modal .form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.lead-modal .form-group input::placeholder,.lead-modal .form-group textarea::placeholder{color:var(--text-muted)}.lead-modal .form-group textarea{resize:vertical}@media(max-width:768px){.kanban-board{padding-bottom:8px}.kanban-column{min-width:160px}.form-row{grid-template-columns:1fr;gap:0}.lead-modal{max-width:100%}.pipeline-header-actions{flex-wrap:wrap;gap:8px}.lead-list-table{font-size:12px}}.proposal-widget{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px}.proposal-widget h3{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:12px}.proposal-widget h3 svg{color:var(--text-secondary)}.pw-config-row{display:flex;gap:8px;margin-bottom:8px}.pw-plan-select{display:flex;gap:6px;flex:1}.pw-plan-option{flex:1;padding:6px 8px;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);cursor:pointer;transition:all var(--transition-fast);text-align:center;font-size:12px;font-weight:600;color:var(--text-primary)}.pw-plan-option:hover{border-color:var(--border-hover)}.pw-plan-option.active{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.pw-plan-price{font-weight:400;color:var(--text-secondary);font-size:11px}.pw-plan-option.active .pw-plan-price{color:var(--color-primary)}.pw-interval-toggle{display:flex;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.pw-interval-toggle button{padding:6px 10px;border:none;background:var(--bg-input);color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.pw-interval-toggle button.active{background:var(--color-primary);color:#fff}.pw-interval-toggle button:not(.active):hover{background:var(--bg-hover);color:var(--text-primary)}.pw-notes{width:100%;padding:6px 10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:12px;font-family:inherit;background:var(--bg-input);color:var(--text-primary);box-sizing:border-box;resize:vertical;margin-bottom:8px}.pw-notes:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.pw-notes::placeholder{color:var(--text-muted)}.pw-action-btns{display:flex;gap:6px}.pw-send-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:7px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pw-send-btn:hover:not(:disabled){background:var(--color-primary-hover)}.pw-send-btn:disabled{opacity:.5;cursor:not-allowed}.pw-link-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:7px;background:transparent;color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.pw-link-btn:hover:not(:disabled){background:var(--color-primary-light)}.pw-link-btn:disabled{opacity:.5;cursor:not-allowed}.pw-error{margin-top:8px;padding:6px 10px;background:#ff3b3014;border-radius:6px;color:var(--color-danger);font-size:12px}.pw-success{margin-top:8px;padding:8px;background:#34c75914;border:1px solid rgba(52,199,89,.2);border-radius:var(--radius-sm);color:var(--color-success);font-size:12px;font-weight:500}.pw-success-link{display:flex;align-items:center;gap:6px;margin-top:6px;padding:5px 6px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:6px}.pw-link-url{flex:1;font-size:11px;font-family:monospace;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pw-copy-btn{background:none;border:1px solid var(--border-color);border-radius:4px;padding:3px 5px;color:var(--text-secondary);cursor:pointer;font-size:11px;transition:all var(--transition-fast)}.pw-copy-btn:hover{color:var(--color-primary);border-color:var(--color-primary)}.pw-history{margin-top:12px;padding-top:10px;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:6px}.pw-history-item{padding:6px 8px;border:1px solid var(--border-color);border-radius:var(--radius-sm)}.pw-history-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pw-status{font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 5px;border-radius:4px}.pw-status.sent,.pw-status.pending,.pw-status.link_generated{background:#f5a6231a;color:var(--color-warning)}.pw-status.completed,.pw-status.signed{background:#34c7591a;color:var(--color-success)}.pw-status.voided,.pw-status.declined{background:#ff3b301a;color:var(--color-danger)}.pw-plan-tag{font-size:10px;color:var(--text-secondary);padding:1px 5px;background:var(--bg-hover);border-radius:4px}.pw-date{font-size:10px;color:var(--text-muted)}.pw-link-row{display:flex;align-items:center;gap:6px;margin-top:4px;padding:4px 6px;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:6px}.pw-empty{text-align:center;color:var(--text-muted);font-size:12px;padding:10px;margin-top:8px}@media(max-width:768px){.pw-config-row{flex-direction:column}}.lead-detail .back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all var(--transition-fast);margin-bottom:16px}.lead-detail .back-btn:hover{color:var(--text-primary);border-color:var(--border-hover)}.lead-header-card{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:20px}.lead-header-left{display:flex;align-items:center;gap:14px}.lead-header-avatar{width:44px;height:44px;border-radius:var(--radius-md);background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.lead-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.lead-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lead-meta-text{font-size:12px;color:var(--text-secondary)}.stage-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600;background:var(--bg-hover);color:var(--text-secondary)}.stage-new{background:#007aff1a;color:#007aff}.stage-contacted{background:#af52de1a;color:var(--color-purple)}.stage-demo_scheduled{background:#f5a6231a;color:var(--color-warning)}.stage-demo_given{background:#f5a62326;color:#e09200}.stage-proposal_sent{background:#34c7591a;color:var(--color-success)}.stage-closed_won{background:#34c75926;color:#1d8c3e}.stage-closed_lost{background:#ff3b301a;color:var(--color-danger)}.source-tag{display:inline-flex;align-items:center;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500;background:var(--bg-hover);color:var(--text-secondary);text-transform:capitalize}.assignee-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:500;background:var(--color-primary-light);color:var(--color-primary)}.lead-header-right{display:flex;align-items:center;gap:12px}.edit-actions{display:flex;gap:6px}.lead-actions-bar{display:flex;gap:8px;margin-bottom:16px}.action-btn.danger{color:var(--color-danger);border-color:#ff3b304d}.action-btn.danger:hover{background:#ff3b300f}.action-btn.danger:disabled{opacity:.5;cursor:not-allowed}.lead-detail-grid{columns:2;column-gap:16px}.lead-detail-grid>*{break-inside:avoid;margin-bottom:16px}.edit-form{display:flex;flex-direction:column;gap:12px}.edit-form .form-group{display:flex;flex-direction:column;gap:4px}.edit-form .form-group label{font-size:12px;font-weight:500;color:var(--text-secondary)}.edit-form .form-group input,.edit-form .form-group select{padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;background:var(--bg-input);color:var(--text-primary)}.edit-form .form-group input:focus,.edit-form .form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.assignment-section{display:flex;align-items:center;justify-content:space-between;gap:12px}.assignment-current{display:flex;align-items:center;gap:10px}.assignment-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.assignment-info{display:flex;flex-direction:column}.assignment-name{font-size:13px;font-weight:600;color:var(--text-primary)}.assignment-label{font-size:11px;color:var(--text-muted)}.assignment-select{padding:7px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);font-size:13px;cursor:pointer;min-width:140px}.assignment-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.assignment-readonly{font-size:11px;color:var(--text-muted);font-style:italic}.notes-row .detail-val{white-space:pre-wrap;text-align:left}.note-input-row{display:flex;gap:8px;margin-bottom:16px}.note-input-row input{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;background:var(--bg-input);color:var(--text-primary)}.note-input-row input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.note-input-row input::placeholder{color:var(--text-muted)}.activity-timeline{display:flex;flex-direction:column}.activity-item{display:flex;gap:12px;padding:10px 0;position:relative}.activity-item:not(:last-child):after{content:"";position:absolute;left:5px;top:26px;bottom:-2px;width:1px;background:var(--border-color)}.activity-dot{width:11px;height:11px;border-radius:50%;background:var(--border-color);margin-top:4px;flex-shrink:0}.activity-item.type-note .activity-dot{background:var(--color-primary)}.activity-item.type-stage_change .activity-dot{background:var(--color-warning)}.activity-item.type-created .activity-dot{background:var(--color-success)}.activity-item.type-assignment .activity-dot{background:var(--color-purple, #af52de)}.activity-content{flex:1;min-width:0}.activity-text{font-size:13px;color:var(--text-primary);line-height:1.4}.activity-meta{font-size:12px;color:var(--text-muted);margin-top:2px}.detail-card-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.detail-card-header-row h3{margin-bottom:0}.action-btn-sm{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.action-btn-sm:hover{border-color:var(--color-primary);color:var(--color-primary)}.screen-sessions-list{display:flex;flex-direction:column;gap:8px}.screen-session-item{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border-color);font-size:13px}.screen-session-item:last-child{border-bottom:none}.screen-session-dot{font-size:8px;flex-shrink:0}.screen-session-dot.active{color:var(--color-success)}.screen-session-dot.ended{color:var(--text-secondary)}.screen-session-date{color:var(--text-primary);flex:1}.screen-session-duration{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary)}.screen-session-active{font-size:11px;font-weight:600;color:var(--color-success)}@media(max-width:768px){.lead-header-card{flex-direction:column;align-items:flex-start;gap:12px}.lead-header-right{width:100%;justify-content:flex-end}.lead-detail-grid{columns:1}.assignment-section{flex-direction:column;align-items:flex-start}.assignment-select{width:100%}}.demo-page .internal-header{margin-bottom:20px}.demo-alert{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:16px}.demo-alert-error{background:#ff3b3014;border:1px solid rgba(255,59,48,.2);color:var(--color-danger)}.demo-alert-success{background:#34c75914;border:1px solid rgba(52,199,89,.2);color:var(--color-success)}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.demo-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px}.demo-card h3{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:16px}.demo-card-header{display:flex;align-items:center;gap:8px;margin-bottom:16px}.demo-card-header h3{margin-bottom:0}.demo-card-icon{color:var(--text-secondary)}.demo-status-indicator{display:flex;align-items:center;gap:8px;margin-bottom:16px}.demo-status-dot{width:10px;height:10px;border-radius:50%}.demo-status-dot.ready{background:var(--color-success)}.demo-status-dot.resetting{background:var(--color-warning);animation:pulse 1s infinite}.demo-status-dot.error{background:var(--color-danger)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.demo-status-text{font-size:14px;font-weight:600;color:var(--text-primary)}.demo-detail-rows{display:flex;flex-direction:column;gap:8px}.demo-detail-row{display:flex;justify-content:space-between;align-items:center}.demo-detail-key{font-size:13px;color:var(--text-secondary)}.demo-detail-val{font-size:13px;color:var(--text-primary);font-weight:500}.demo-detail-val.mono{font-family:monospace;font-size:12px}.demo-copy-btn{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 6px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all var(--transition-fast)}.demo-copy-btn:hover{color:var(--color-primary);background:var(--bg-hover)}.demo-actions{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.demo-action-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.demo-action-btn:hover:not(:disabled){border-color:var(--border-hover);background:var(--bg-hover)}.demo-action-btn.primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.demo-action-btn.primary:hover{background:var(--color-primary-hover)}.demo-action-btn:disabled{opacity:.5;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}.demo-help-text{font-size:12px;color:var(--text-secondary);line-height:1.5}.demo-help-text p{margin-bottom:6px}.demo-help-text strong{color:var(--text-primary)}.demo-data-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}.demo-data-list li{font-size:13px;color:var(--text-primary);padding-left:16px;position:relative}.demo-data-list li:before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;background:var(--color-primary)}@media(max-width:768px){.demo-grid{grid-template-columns:1fr}}.screenshare-page .internal-header{margin-bottom:20px}.screenshare-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.screenshare-description{font-size:13px;color:var(--text-secondary);line-height:1.6;margin-bottom:20px}.screenshare-empty{font-size:13px;color:var(--text-secondary)}.screenshare-start-card .demo-action-btn{width:100%}.screenshare-lead-selector{margin-bottom:16px}.screenshare-lead-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.screenshare-lead-icon{font-size:11px;color:var(--text-secondary)}.screenshare-lead-icon-sm{font-size:10px;color:var(--text-secondary);flex-shrink:0}.screenshare-lead-select{width:100%;padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-main);color:var(--text-primary);font-size:13px}.screenshare-lead-select:focus{outline:none;border-color:var(--color-primary)}.screenshare-live-lead{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);margin-bottom:12px}.screenshare-live-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.screenshare-live-badge{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--color-danger);letter-spacing:.5px}.live-dot{font-size:8px;animation:pulse 1.5s infinite}.screenshare-viewer-count{font-size:13px;color:var(--text-secondary);font-weight:500}.screenshare-preview{border-radius:var(--radius-sm);overflow:hidden;background:#000;margin-bottom:16px;aspect-ratio:16 / 9}.screenshare-preview video{width:100%;height:100%;object-fit:contain}.screenshare-resume-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;height:100%;min-height:120px;text-align:center;padding:16px}.screenshare-resume-overlay p{font-size:13px;color:var(--text-secondary);margin:0}.screenshare-resume-btn{font-size:13px}.screenshare-link-box{display:flex;gap:8px;margin-bottom:12px}.screenshare-link-box input{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-main);color:var(--text-primary);font-size:12px;font-family:monospace}.screenshare-copy-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background var(--transition-fast)}.screenshare-copy-btn:hover{background:var(--color-primary-hover)}.screenshare-stop-btn{width:100%;background:#ff3b3014!important;border-color:#ff3b304d!important;color:var(--color-danger)!important}.screenshare-stop-btn:hover:not(:disabled){background:#ff3b3026!important}.screenshare-past-list{display:flex;flex-direction:column;gap:8px}.screenshare-past-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--border-color)}.screenshare-past-item:last-child{border-bottom:none}.screenshare-past-info{display:flex;flex-direction:column;gap:2px;min-width:0}.screenshare-past-status{display:flex;align-items:center;gap:8px}.screenshare-past-date{font-size:13px;color:var(--text-primary)}.screenshare-past-lead{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screenshare-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color)}.screenshare-page-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);font-size:11px;cursor:pointer;transition:all var(--transition-fast)}.screenshare-page-btn:hover:not(:disabled){border-color:var(--border-hover);background:var(--bg-hover)}.screenshare-page-btn:disabled{opacity:.35;cursor:not-allowed}.screenshare-page-info{font-size:12px;color:var(--text-secondary);min-width:40px;text-align:center}.screenshare-past-duration{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary)}.screenshare-end-btn{display:flex;align-items:center;gap:4px;padding:3px 8px;border:1px solid rgba(255,59,48,.3);border-radius:var(--radius-sm);background:#ff3b300f;color:var(--color-danger);font-size:11px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.screenshare-end-btn:hover{background:#ff3b3024;border-color:#ff3b3080}.status-dot{font-size:8px}.status-dot.active,.status-dot.ready{color:var(--color-success)}.status-dot.ended{color:var(--text-secondary)}.status-dot.connecting,.status-dot.new{color:var(--color-warning);animation:pulse 1s infinite}.status-active{color:var(--color-success);font-weight:600}.screenshare-viewer-list{display:flex;flex-direction:column;gap:8px}.screenshare-viewer-item{display:flex;align-items:center;gap:8px;padding:8px 0;font-size:13px;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.screenshare-viewer-item:last-child{border-bottom:none}.screenshare-viewer-state{margin-left:auto;font-size:12px;color:var(--text-secondary)}@media(max-width:768px){.screenshare-grid{grid-template-columns:1fr}}.channel-sidebar{width:240px;flex-shrink:0;background:var(--bg-card);border-right:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.channel-sidebar-header{padding:16px 14px 8px;border-bottom:1px solid var(--border-color)}.channel-sidebar-title{font-size:15px;font-weight:600;color:var(--text-primary)}.channel-sidebar-body{flex:1;overflow-y:auto;padding:8px 0}.channel-section{margin-bottom:4px}.channel-section-header{display:flex;align-items:center;justify-content:space-between;padding:6px 14px 2px}.channel-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.channel-section-add{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 4px;border-radius:var(--radius-sm);font-size:14px;display:flex;align-items:center;transition:color var(--transition-fast),background var(--transition-fast)}.channel-section-add:hover{color:var(--text-primary);background:var(--bg-hover)}.channel-item{display:flex;align-items:center;gap:8px;padding:6px 14px;cursor:pointer;border-radius:0;border:none;background:none;width:100%;text-align:left;color:var(--text-secondary);font-size:13.5px;transition:background var(--transition-fast),color var(--transition-fast)}.channel-item:hover{background:var(--bg-hover);color:var(--text-primary)}.channel-item.active{background:var(--color-primary-light);color:var(--color-primary)}.channel-item-icon{font-size:12px;flex-shrink:0;color:var(--text-muted)}.channel-item.active .channel-item-icon{color:var(--color-primary)}.channel-item-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-item-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.presence-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted);opacity:.5;flex-shrink:0}.message-pane{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;background:var(--bg-primary)}.message-pane-header{padding:14px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-card);display:flex;align-items:center;gap:10px;flex-shrink:0}.message-pane-header-icon{color:var(--text-muted);font-size:14px}.message-pane-header-info{min-width:0}.message-pane-channel-name{font-size:14px;font-weight:600;color:var(--text-primary)}.message-pane-channel-desc{font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-list{flex:1;overflow-y:auto;padding:12px 0;display:flex;flex-direction:column}.load-older-btn{align-self:center;margin:8px 0 4px;padding:6px 16px;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all var(--transition-fast)}.load-older-btn:hover{background:var(--bg-input);color:var(--text-primary)}.messages-loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--text-muted);font-size:13px}.messages-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:8px;color:var(--text-muted);font-size:13px;padding:40px}.message-bubble{display:flex;gap:10px;padding:6px 20px;position:relative}.message-bubble:hover{background:var(--bg-hover)}.message-bubble:hover .message-actions{opacity:1}.message-bubble.own{flex-direction:row}.message-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0;align-self:flex-start;margin-top:2px}.message-content{flex:1;min-width:0}.message-header{display:flex;align-items:baseline;gap:8px;margin-bottom:2px}.message-sender{font-size:13px;font-weight:600;color:var(--text-primary)}.message-time{font-size:11px;color:var(--text-muted)}.message-edited-tag{font-size:11px;color:var(--text-muted);font-style:italic}.message-text{font-size:13.5px;color:var(--text-primary);line-height:1.5;white-space:pre-wrap;word-break:break-word}.message-deleted{font-size:13px;color:var(--text-muted);font-style:italic}.message-lead-link{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:3px 8px;background:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;border:none;transition:opacity var(--transition-fast)}.message-lead-link:hover{opacity:.8}.message-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.reaction-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:12px;font-size:12px;cursor:pointer;transition:all var(--transition-fast)}.reaction-chip:hover,.reaction-chip.reacted{background:var(--color-primary-light);border-color:var(--color-primary)}.reaction-count{font-size:11px;color:var(--text-secondary)}.message-actions{position:absolute;top:4px;right:20px;display:flex;gap:4px;opacity:0;transition:opacity var(--transition-fast);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:3px;box-shadow:var(--shadow-sm)}.message-action-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px 6px;border-radius:4px;font-size:12px;display:flex;align-items:center;transition:all var(--transition-fast)}.message-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.message-action-btn.danger:hover{color:var(--color-danger);background:#ff3b3014}.emoji-picker{display:flex;gap:4px;padding:4px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);position:absolute;top:32px;right:20px;z-index:100}.emoji-btn{background:none;border:none;font-size:16px;cursor:pointer;padding:4px;border-radius:4px;transition:background var(--transition-fast)}.emoji-btn:hover{background:var(--bg-hover)}.message-edit-area{display:flex;flex-direction:column;gap:6px;margin-top:2px}.message-edit-textarea{width:100%;padding:8px 10px;border:1px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);font-size:13.5px;font-family:inherit;line-height:1.5;resize:none;outline:none}.message-edit-actions{display:flex;gap:6px;font-size:12px;color:var(--text-muted)}.message-edit-actions button{background:none;border:none;cursor:pointer;font-size:12px;color:var(--color-primary);padding:2px 6px;border-radius:4px}.message-edit-actions button.cancel{color:var(--text-muted)}.message-edit-actions button:hover{text-decoration:underline}.message-composer{border-top:1px solid var(--border-color);padding:12px 16px;background:var(--bg-card);flex-shrink:0}.composer-box{display:flex;align-items:flex-end;gap:8px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:8px 12px;transition:border-color var(--transition-fast);position:relative}.composer-box:focus-within{border-color:var(--color-primary)}.composer-textarea{flex:1;border:none;background:none;color:var(--text-primary);font-size:13.5px;font-family:inherit;line-height:1.5;resize:none;outline:none;max-height:120px;overflow-y:auto;padding:0}.composer-textarea::placeholder{color:var(--text-muted)}.composer-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.composer-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:5px;border-radius:var(--radius-sm);font-size:14px;display:flex;align-items:center;transition:all var(--transition-fast)}.composer-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.composer-send-btn{background:var(--color-primary);border:none;color:#fff;cursor:pointer;padding:6px 8px;border-radius:var(--radius-sm);font-size:13px;display:flex;align-items:center;transition:background var(--transition-fast)}.composer-send-btn:hover:not(:disabled){background:var(--color-primary-hover)}.composer-send-btn:disabled{opacity:.4;cursor:not-allowed}.composer-linked-lead{display:flex;align-items:center;gap:6px;padding:4px 10px;background:var(--color-primary-light);border-radius:var(--radius-sm);font-size:12px;color:var(--color-primary);margin-bottom:6px}.composer-linked-lead button{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:12px;display:flex;align-items:center;padding:0;margin-left:2px}.composer-attachments{display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px 0}.composer-attachment-item{display:flex;align-items:center;gap:6px;padding:4px 8px;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary);position:relative}.composer-attachment-item.error{border-color:var(--color-danger);background:#ff3b300f}.composer-attachment-thumb{width:36px;height:36px;object-fit:cover;border-radius:4px}.composer-attachment-file-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-primary-light);color:var(--color-primary);border-radius:4px;font-size:10px;font-weight:700}.composer-attachment-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-attachment-size{color:var(--text-muted);font-size:11px}.composer-attachment-error{color:var(--color-danger);font-size:11px}.composer-attachment-progress{width:60px;height:4px;background:var(--bg-input);border-radius:2px;overflow:hidden}.composer-attachment-progress-bar{height:100%;background:var(--color-primary);transition:width .2s}.composer-attachment-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;font-size:10px;display:flex;align-items:center}.composer-attachment-remove:hover{color:var(--color-danger)}.message-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.message-attachment-image{max-width:280px;max-height:200px;border-radius:var(--radius-sm);cursor:pointer;object-fit:cover;border:1px solid var(--border-color);transition:opacity var(--transition-fast)}.message-attachment-image:hover{opacity:.85}.message-attachment-file{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--radius-sm);text-decoration:none;color:var(--text-secondary);font-size:12px;transition:background var(--transition-fast)}.message-attachment-file:hover{background:var(--bg-input)}.message-attachment-ext{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--color-primary-light);color:var(--color-primary);border-radius:4px;font-size:9px;font-weight:700}.message-attachment-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-attachment-size{color:var(--text-muted);font-size:11px}.message-attachment-dl-icon{color:var(--text-muted);font-size:10px}.image-lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;cursor:pointer}.image-lightbox-overlay img{max-width:90vw;max-height:90vh;border-radius:var(--radius-md);box-shadow:0 8px 32px #0006}.message-mention{background:var(--color-primary-light);color:var(--color-primary);padding:1px 4px;border-radius:3px;font-weight:600}.mention-dropdown{position:absolute;bottom:100%;left:0;right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:240px;overflow-y:auto;z-index:200;margin-bottom:4px}.mention-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;cursor:pointer;font-size:13px;color:var(--text-primary);text-align:left;transition:background var(--transition-fast)}.mention-dropdown-item:hover,.mention-dropdown-item.highlighted{background:var(--bg-hover)}.mention-dropdown-avatar{width:28px;height:28px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;flex-shrink:0}.mention-dropdown-name{font-weight:500}.mention-dropdown-email{color:var(--text-muted);font-size:12px}.notification-banner{display:flex;align-items:center;gap:10px;padding:8px 16px;background:var(--color-primary-light);border-bottom:1px solid var(--border-color);font-size:13px;color:var(--text-primary);flex-shrink:0}.notification-banner span{flex:1}.notification-banner-enable{padding:4px 12px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer}.notification-banner-enable:hover{background:var(--color-primary-hover)}.notification-banner-dismiss{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:12px;padding:4px 8px}.notification-banner-dismiss:hover{color:var(--text-primary)}.message-pane-header-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.header-action-btn{display:flex;align-items:center;gap:5px;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:5px 8px;border-radius:var(--radius-sm);font-size:13px;transition:all var(--transition-fast)}.header-action-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.header-action-label{font-size:11px}.search-panel{flex:1;display:flex;flex-direction:column;overflow:hidden}.search-panel-header{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--border-color)}.search-panel-icon{color:var(--text-muted);font-size:13px;flex-shrink:0}.search-panel-input{flex:1;border:none;background:none;color:var(--text-primary);font-size:14px;font-family:inherit;outline:none}.search-panel-input::placeholder{color:var(--text-muted)}.search-panel-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;font-size:13px;display:flex;align-items:center}.search-panel-close:hover{color:var(--text-primary)}.search-all-toggle{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:12px;color:var(--text-secondary);border-bottom:1px solid var(--border-color);cursor:pointer}.search-all-toggle input{cursor:pointer}.search-results{flex:1;overflow-y:auto;padding:4px 0}.search-loading,.search-empty{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--text-muted);font-size:13px}.search-result-item{display:flex;flex-direction:column;gap:2px;width:100%;padding:10px 16px;background:none;border:none;cursor:pointer;text-align:left;font-size:13px;color:var(--text-primary);transition:background var(--transition-fast);border-bottom:1px solid var(--border-color)}.search-result-item:hover{background:var(--bg-hover)}.search-result-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.search-result-channel{font-weight:600;color:var(--text-secondary)}.search-result-sender{font-weight:500;color:var(--text-secondary)}.search-result-time{margin-left:auto;font-size:11px}.search-result-text{font-size:13px;color:var(--text-primary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-highlight{background:#ffcc004d;border-radius:2px;padding:0 1px}.messaging-layout{display:flex;height:100vh;overflow:hidden}.messaging-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted)}.messaging-empty-icon{font-size:40px;color:var(--border-color)}.messaging-empty-state p{font-size:14px}.floating-widget{position:fixed;bottom:24px;right:24px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:0}.widget-fab{width:52px;height:52px;border-radius:50%;background:var(--color-primary);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:var(--shadow-lg);transition:background var(--transition-fast),transform var(--transition-fast);position:relative}.widget-fab:hover{background:var(--color-primary-hover);transform:scale(1.05)}.widget-fab-badge{position:absolute;top:-2px;right:-2px;background:var(--color-danger);color:#fff;font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--bg-card)}.widget-panel{width:320px;height:460px;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden;margin-bottom:10px;animation:widget-open .18s ease}@keyframes widget-open{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.widget-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border-color);flex-shrink:0;background:var(--bg-card)}.widget-header-title{font-size:14px;font-weight:600;color:var(--text-primary);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.widget-header-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px 6px;border-radius:var(--radius-sm);font-size:12px;display:flex;align-items:center;transition:all var(--transition-fast);white-space:nowrap}.widget-header-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.widget-channel-list{flex:1;overflow-y:auto;padding:8px 0}.widget-channel-item{display:flex;align-items:center;gap:8px;padding:9px 14px;cursor:pointer;border:none;background:none;width:100%;text-align:left;color:var(--text-secondary);font-size:13px;transition:background var(--transition-fast),color var(--transition-fast)}.widget-channel-item:hover{background:var(--bg-hover);color:var(--text-primary)}.widget-channel-item.active{background:var(--color-primary-light);color:var(--color-primary)}.widget-channel-icon{font-size:11px;color:var(--text-muted);flex-shrink:0}.widget-channel-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.widget-channel-meta{display:flex;align-items:center;gap:6px;flex-shrink:0}.widget-messages{flex:1;overflow-y:auto;padding:8px 0}.widget-message{padding:6px 14px}.widget-message-header{display:flex;align-items:baseline;gap:6px;margin-bottom:1px}.widget-message-sender{font-size:12px;font-weight:600;color:var(--text-primary)}.widget-message-time{font-size:10px;color:var(--text-muted)}.widget-message-text{font-size:12.5px;color:var(--text-primary);line-height:1.4;white-space:pre-wrap;word-break:break-word}.widget-message-deleted{font-size:12px;color:var(--text-muted);font-style:italic}.widget-loading,.widget-empty{display:flex;align-items:center;justify-content:center;padding:24px;color:var(--text-muted);font-size:12px}.internal-admin-page{max-width:760px;padding:32px 24px}.internal-admin-title{font-size:22px;font-weight:600;color:var(--text-primary);margin-bottom:20px}.internal-admin-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border-color);margin-bottom:24px}.internal-admin-tab{padding:8px 16px;font-size:14px;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast);margin-bottom:-1px}.internal-admin-tab:hover{color:var(--text-primary)}.internal-admin-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.internal-admin-section h3{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:12px}.invite-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.invite-email-input{flex:1;min-width:200px;padding:8px 12px;font-size:14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary)}.invite-email-input:focus{outline:none;border-color:var(--color-primary)}.invite-expiry-select{padding:8px 12px;font-size:14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);cursor:pointer}.invite-email-toggle{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary);cursor:pointer;white-space:nowrap}.invite-result{background:#34c75914;border:1px solid rgba(52,199,89,.25);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:16px;font-size:13px}.invite-link-result{display:flex;align-items:center;gap:8px;margin-top:8px}.invite-link-url{font-family:monospace;font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;background:var(--bg-hover);padding:4px 8px;border-radius:4px}.admin-list{display:flex;flex-direction:column;gap:1px;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.admin-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-card);gap:12px}.admin-row:not(:last-child){border-bottom:1px solid var(--border-color)}.admin-row-info{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-row-primary{font-size:14px;font-weight:500;color:var(--text-primary)}.admin-row-meta{font-size:12px;color:var(--text-secondary)}.admin-row-actions{display:flex;gap:6px;flex-shrink:0}.status-badge{display:inline-block;padding:1px 7px;border-radius:10px;font-size:11px;font-weight:500}.status-badge.status-active{background:#34c7591f;color:#1a7f3c}.status-badge.status-used{background:#86868b1f;color:var(--text-secondary)}.status-badge.status-expired{background:#f5a6231f;color:#b07a00}.status-badge.status-revoked{background:#ff3b301a;color:var(--color-danger)}.btn-sm{padding:6px 12px;font-size:13px;font-weight:500;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:opacity var(--transition-fast)}.btn-sm:disabled{opacity:.5;cursor:not-allowed}.btn-sm.btn-secondary{background:var(--bg-hover);color:var(--text-primary);border:1px solid var(--border-color)}.btn-sm.btn-secondary:hover{background:var(--border-color)}.btn-sm.btn-danger{background:#ff3b3014;color:var(--color-danger);border:1px solid rgba(255,59,48,.2)}.btn-sm.btn-danger:hover{background:#ff3b3026}.btn-primary.btn-danger-outline{background:#ff3b3014;color:var(--color-danger);border:1px solid rgba(255,59,48,.2);padding:10px 20px;font-size:14px;font-weight:500;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.btn-primary.btn-danger-outline:hover{background:#ff3b3026}.admin-meta{font-size:13px;color:var(--text-secondary);line-height:1.5}.admin-loading,.admin-empty{font-size:14px;color:var(--text-secondary);padding:16px 0}.admin-error{font-size:13px;color:var(--color-danger);margin-top:8px}.admin-success{font-size:13px;color:var(--color-success);margin-top:8px}.admin-reset-msg{margin-top:12px}.template-list{padding:24px;max-width:1200px;margin:0 auto}.template-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.template-list-header h2{font-size:24px;font-weight:600;color:var(--color-text, #1a1a2e);margin:0}.template-list-tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--color-border, #e2e8f0)}.tab-btn{padding:10px 20px;border:none;background:none;font-size:14px;font-weight:500;color:var(--color-text-secondary, #64748b);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tab-btn.active{color:var(--color-primary, #6c63ff);border-bottom-color:var(--color-primary, #6c63ff)}.tab-btn:hover:not(.active){color:var(--color-text, #1a1a2e)}.template-list-loading{text-align:center;padding:60px 20px;color:var(--color-text-secondary, #64748b);font-size:14px}.template-list-empty{text-align:center;padding:80px 20px;color:var(--color-text-secondary, #64748b)}.template-list-empty .empty-icon{font-size:48px;margin-bottom:16px;opacity:.3}.template-list-empty p{margin-bottom:20px;font-size:15px}.template-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.template-card{background:var(--color-bg, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:10px;padding:20px;transition:box-shadow .2s}.template-card:hover{box-shadow:0 2px 12px #00000014}.template-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.template-card-header h3{font-size:16px;font-weight:600;margin:0;color:var(--color-text, #1a1a2e)}.status-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:12px;white-space:nowrap}.status-badge.published{background:#dcfce7;color:#166534}.status-badge.testing{background:#dbeafe;color:#1e40af}.status-badge.inactive{background:#fef2f2;color:#991b1b}.status-badge.draft{background:#fef3c7;color:#92400e}.btn-icon.promote{color:#1e40af}.btn-icon.promote:hover{background:#2563eb;color:#fff}.btn-icon:disabled{opacity:.5;cursor:wait}.template-card-desc{font-size:13px;color:var(--color-text-secondary, #64748b);margin:0 0 12px;line-height:1.4}.template-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.meta-tag{font-size:11px;padding:2px 8px;border-radius:4px;background:var(--color-bg-secondary, #f1f5f9);color:var(--color-text-secondary, #64748b)}.template-card-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--color-border, #e2e8f0);padding-top:12px}.template-date{font-size:12px;color:var(--color-text-secondary, #94a3b8)}.template-card-actions{display:flex;gap:4px}.btn-icon:hover{background:var(--color-primary, #6c63ff);color:#fff}.btn-icon.danger:hover{background:#ef4444;color:#fff}.delete-confirm-inline{display:flex;gap:4px}.btn-primary:hover{background:var(--color-primary-dark, #5a52d5)}.btn-secondary:hover{background:var(--color-bg, #fff);border-color:var(--color-primary, #6c63ff)}.loading-spinner-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);z-index:9999}.loading-spinner-inline{display:flex;align-items:center;justify-content:center;padding:40px 20px;min-height:200px}.loading-spinner-content{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.spinner{position:relative;display:inline-block}.spinner-ring{position:absolute;border-radius:50%;border:3px solid transparent;border-top-color:var(--color-primary);animation:spin 1s linear infinite}.loading-spinner-content.small .spinner{width:30px;height:30px}.loading-spinner-content.small .spinner-ring{width:30px;height:30px;border-width:2px}.loading-spinner-content.medium .spinner{width:50px;height:50px}.loading-spinner-content.medium .spinner-ring{width:50px;height:50px;border-width:3px}.loading-spinner-content.large .spinner{width:70px;height:70px}.loading-spinner-content.large .spinner-ring{width:70px;height:70px;border-width:4px}.spinner-ring:nth-child(1){animation-delay:0s;opacity:1}.spinner-ring:nth-child(2){animation-delay:-.3s;opacity:.6}.spinner-ring:nth-child(3){animation-delay:-.6s;opacity:.3}.loading-message{margin:0;font-size:14px;font-weight:500;color:var(--text-secondary)}.loading-tip{margin:0;font-size:12px;font-weight:400;color:var(--text-muted);max-width:320px;line-height:1.5;font-style:italic}.loading-tip-label{font-weight:600;font-style:normal;color:var(--text-secondary)}.loading-spinner-fullscreen .loading-spinner-content{background:var(--bg-card);padding:40px 50px;border-radius:16px;border:1px solid var(--border-color);box-shadow:0 4px 24px #0000001a}.dark-mode .loading-spinner-fullscreen .loading-spinner-content{box-shadow:0 4px 24px #0000004d}.loading-spinner-inline .loading-message{color:var(--text-secondary)}@media(max-width:768px){.loading-spinner-fullscreen .loading-spinner-content{padding:32px 40px;margin:20px}.loading-message{font-size:13px}.loading-spinner-content.large .spinner{width:60px;height:60px}.loading-spinner-content.large .spinner-ring{width:60px;height:60px;border-width:3px}}@media(max-width:480px){.loading-spinner-fullscreen .loading-spinner-content{padding:24px 32px;margin:15px}.loading-message{font-size:12px}.loading-spinner-content.medium .spinner{width:40px;height:40px}.loading-spinner-content.medium .spinner-ring{width:40px;height:40px;border-width:2px}.loading-spinner-content.large .spinner{width:50px;height:50px}.loading-spinner-content.large .spinner-ring{width:50px;height:50px;border-width:3px}}@media(prefers-reduced-motion:reduce){.spinner-ring{animation:spin 3s linear infinite}}.signature-capture-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@media(max-width:768px){.signature-capture-modal{padding:0;background-color:#000000f2}}.signature-capture-modal-content{background:var(--bg-card);border-radius:var(--radius-lg);padding:30px;max-width:500px;width:100%;box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto;position:relative;transition:background-color var(--transition-slow)}@media(max-width:768px){.signature-capture-modal-content{max-width:100%;width:100%;margin:0;padding:20px 15px;border-radius:0;max-height:100vh;height:100vh;display:flex;flex-direction:column}}.signature-capture-modal-content .modal-close-x{position:absolute;top:15px;right:15px;background:transparent;border:none;font-size:24px;color:var(--text-muted);cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:50%;transition:all var(--transition-fast)}.signature-capture-modal-content .modal-close-x:hover{background:var(--bg-hover);color:var(--text-primary)}.signature-capture-modal-content h3{margin:0 0 15px;color:var(--text-primary);font-size:20px;text-align:center;transition:color var(--transition-slow)}.signature-capture-modal-content p{margin:0 0 20px;color:var(--text-secondary);text-align:center;transition:color var(--transition-slow)}.signature-capture-modal .signature-mode-toggle{display:flex;gap:10px;margin-bottom:20px;justify-content:center}.signature-capture-modal .mode-btn{padding:10px 20px;border:2px solid var(--border-color);background:var(--bg-input);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;font-weight:500;font-size:14px;transition:all var(--transition-fast);display:flex;align-items:center;gap:8px}.signature-capture-modal .mode-btn:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.signature-capture-modal .mode-btn.active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.signature-capture-modal .signature-canvas-container{border:2px solid var(--color-primary);border-radius:var(--radius-md);margin-bottom:20px;background:var(--bg-card);display:flex;justify-content:center;align-items:center;padding:10px;min-height:170px;position:relative;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.signature-capture-modal .canvas-clear-btn{position:absolute;top:10px;right:10px;background:var(--bg-card);border:2px solid var(--color-primary);color:var(--color-primary);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);z-index:10;box-shadow:var(--shadow-sm)}.signature-capture-modal .canvas-clear-btn:hover{background:var(--color-primary);color:#fff;transform:rotate(360deg)}.signature-capture-modal .signature-canvas{border:1px dashed var(--border-color);cursor:crosshair;background:#fff;touch-action:none}.signature-capture-modal .cursive-signature-preview{width:400px;max-width:100%;height:150px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--border-color);border-radius:var(--radius-sm)}.signature-capture-modal .cursive-signature-preview img{max-width:100%;max-height:100%;object-fit:contain}.signature-capture-modal .no-signature-preview{color:var(--text-muted);font-style:italic;text-align:center}.signature-capture-modal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.signature-capture-modal-actions .btn-primary,.signature-capture-modal-actions .btn-secondary{padding:10px 20px;border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:500;font-size:14px;transition:all var(--transition-fast);display:flex;align-items:center;gap:6px}.signature-capture-modal-actions .btn-primary{background:var(--color-primary);color:#fff}.signature-capture-modal-actions .btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.signature-capture-modal-actions .btn-primary:disabled{background:var(--text-muted);cursor:not-allowed}.signature-capture-modal-actions .btn-secondary{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-color)}.signature-capture-modal-actions .btn-secondary:hover{background:var(--bg-hover)}@media(max-width:768px){.signature-capture-modal .signature-mode-toggle{flex-direction:column;gap:8px}.signature-capture-modal .mode-btn{width:100%;justify-content:center}.signature-capture-modal .signature-canvas-container{flex:1;min-height:200px}.signature-capture-modal .cursive-signature-preview{width:100%;height:120px}.signature-capture-modal-actions{flex-direction:column;margin-top:auto;padding-top:20px}.signature-capture-modal-actions .btn-primary,.signature-capture-modal-actions .btn-secondary{width:100%;justify-content:center}}.send-flow-progress{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;flex:1;min-width:0}.progress-steps{display:flex;align-items:center;justify-content:center;gap:20px}.progress-step-wrapper{display:flex;align-items:center}.progress-step{display:flex;flex-direction:column;align-items:center;gap:6px}.step-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-input);color:var(--text-secondary);font-size:11px;font-weight:600;transition:all var(--transition-normal);border:2px solid var(--border-color)}.progress-step.current .step-circle{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.progress-step.completed .step-circle{background:var(--text-muted);color:#fff;border-color:var(--text-muted)}.step-label{font-size:11px;font-weight:400;color:var(--text-secondary);white-space:nowrap}.progress-step.current .step-label{color:var(--text-primary);font-weight:500}.progress-step.completed .step-label{color:var(--text-secondary)}.step-connector{width:34px;height:2px;background:var(--border-color);margin:0 6px 25px;position:relative;overflow:hidden}.step-connector:after{content:"";position:absolute;top:0;left:0;height:100%;width:0%;background:var(--text-muted);transition:width .6s ease}.step-connector.completed:after{width:100%}@media(max-width:768px){.send-flow-progress{display:none}}.signature-font-picker-modal{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:1000;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px;overflow:hidden}.signature-font-picker-content{width:100%;max-width:720px;max-height:92vh;background:var(--bg-primary);border-radius:16px;box-shadow:var(--shadow-xl);display:flex;flex-direction:column;overflow:hidden;transition:background-color var(--transition-slow)}.font-picker-header{background:var(--bg-card);padding:20px 24px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.font-picker-header .back-btn{flex-shrink:0;width:fit-content;z-index:1}.font-picker-header-center{position:absolute;left:50%;top:calc(50% + 7px);transform:translate(-50%,-50%);display:flex;justify-content:center}.font-picker-header-right{flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:10px;z-index:1}.font-picker-header .back-btn,.font-picker-header .continue-btn{padding:10px 20px;border-radius:6px;font-weight:500;display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;flex-grow:0;width:fit-content;align-self:center}.font-picker-body{padding:32px;overflow-y:auto;flex:1}.font-picker-title{text-align:center;margin-bottom:28px}.font-picker-title svg{font-size:24px;color:var(--color-primary);margin-bottom:8px}.font-picker-title h2{margin:0 0 8px;font-size:22px;color:var(--text-primary)}.font-picker-title p{margin:0;font-size:14px;color:var(--text-secondary)}.font-picker-name-row{display:grid;grid-template-columns:1fr 1fr 120px;gap:12px;margin-bottom:24px;align-items:end}.font-picker-input-group{flex:1;display:flex;flex-direction:column;gap:6px}.font-picker-input-group label{font-size:13px;font-weight:500;color:var(--text-secondary)}.font-picker-input-group input{padding:10px 14px;border:2px solid var(--border-color);border-radius:8px;font-size:15px;background:var(--bg-card);color:var(--text-primary);transition:border-color var(--transition-fast)}.font-picker-input-group input:focus{outline:none;border-color:var(--color-primary)}.font-picker-dual-preview{display:flex;gap:16px;margin-bottom:28px}.font-picker-preview-panel{flex:2;background:var(--bg-card);border:2px solid var(--border-color);border-radius:12px;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100px;position:relative;transition:border-color var(--transition-fast),background-color var(--transition-slow)}.font-picker-preview-panel.initials-panel{flex:1}.font-picker-preview-panel .preview-label{position:absolute;top:8px;left:12px;font-size:11px;font-weight:500;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.font-picker-preview-panel img{max-width:100%;max-height:70px;object-fit:contain}.font-picker-toggle-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border:2px dashed var(--border-color);border-radius:10px;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);margin-bottom:16px;font-family:inherit}.font-picker-toggle-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.font-picker-legal-text{font-size:12px;line-height:1.5;color:var(--text-secondary);text-align:left;margin:20px 0 0;padding:0}.font-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.font-picker-option{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;border:2px solid var(--border-color);border-radius:10px;background:var(--bg-card);cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.font-picker-option:hover{background:var(--bg-hover);border-color:var(--border-hover)}.font-picker-option.active{background:var(--color-primary-light);border-color:var(--color-primary)}.font-picker-option-preview{color:var(--text-primary);line-height:1;height:50px;display:flex;align-items:center;justify-content:center;overflow:hidden;white-space:nowrap}.font-picker-option-name{font-size:11px;color:var(--text-secondary);font-family:Inter,sans-serif}.font-picker-option.active .font-picker-option-name{color:var(--color-primary);font-weight:500}@media(max-width:768px){.font-picker-header{flex-direction:column;gap:15px;align-items:center}.font-picker-header-center{position:static;left:auto;top:auto;transform:none;order:-1}.font-picker-body{padding:20px}.font-picker-name-row{grid-template-columns:1fr 1fr}.font-picker-initials-group{grid-column:1 / -1}.font-picker-dual-preview{flex-direction:column}.font-picker-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.font-picker-name-row{grid-template-columns:1fr}.font-picker-initials-group{grid-column:auto}.font-picker-grid{grid-template-columns:1fr}}.tutorial-tooltip{position:fixed;z-index:9999;pointer-events:auto;animation:tutorialFadeIn var(--transition-slow) ease forwards}.tutorial-tooltip-content{background:var(--color-primary);color:#fff;border-radius:var(--radius-md);padding:12px 24px 12px 16px;min-width:220px;max-width:280px;box-shadow:var(--shadow-lg),0 0 0 1px #0000000d;position:relative}.tutorial-tooltip-arrow{position:absolute;width:12px;height:12px;background:var(--color-primary);transform:rotate(45deg);border-radius:2px}.tutorial-tooltip-bottom .tutorial-tooltip-arrow{top:-5px;left:50%;margin-left:-6px}.tutorial-tooltip-top .tutorial-tooltip-arrow{bottom:-5px;left:50%;margin-left:-6px}.tutorial-tooltip-left .tutorial-tooltip-arrow{right:-5px;top:50%;margin-top:-6px}.tutorial-tooltip-right .tutorial-tooltip-arrow{left:-5px;top:50%;margin-top:-6px}.tutorial-tooltip-close{position:absolute;top:6px;right:6px;background:none;border:none;color:#ffffff73;font-size:16px;line-height:1;cursor:pointer;padding:0 2px;transition:color var(--transition-fast)}.tutorial-tooltip-close:hover{color:#fffc}.tutorial-tooltip-message{font-size:13px;line-height:1.5;font-weight:500}.tutorial-tooltip-message strong{font-weight:700}.tutorial-tooltip-skip{display:block;background:none;border:none;color:#ffffff59;font-size:11px;cursor:pointer;padding:0;margin-top:8px;font-weight:400;transition:color var(--transition-fast)}.tutorial-tooltip-skip:hover{color:#ffffff8c}.tutorial-highlight{position:relative}.tutorial-highlight:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:var(--radius-md);border:2px solid var(--color-primary);animation:tutorialPulse 2s ease-in-out infinite;pointer-events:none}@keyframes tutorialFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tutorial-tooltip-top{animation-name:tutorialFadeInUp}@keyframes tutorialFadeInUp{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.tutorial-tooltip-left{animation-name:tutorialFadeInLeft}@keyframes tutorialFadeInLeft{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.tutorial-tooltip-right{animation-name:tutorialFadeInRight}@keyframes tutorialFadeInRight{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0)}}@keyframes tutorialPulse{0%,to{opacity:.6}50%{opacity:1}}.dark-mode .tutorial-tooltip-content{box-shadow:var(--shadow-lg),0 0 0 1px #ffffff14}@media(max-width:768px){.tutorial-tooltip-content{min-width:180px;max-width:240px;padding:10px 14px}.tutorial-tooltip-message{font-size:12px}}.signature-placement-interface{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;background:transparent;padding:0;overflow:hidden}.signature-placement-modal-content{width:100%;max-width:none;height:100%;max-height:none;background:var(--bg-primary);border-radius:0;box-shadow:none;display:flex;flex-direction:column;overflow:hidden;transition:background-color var(--transition-slow)}.placement-header{background:var(--bg-card);padding:20px 24px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;z-index:100;position:relative;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.placement-header .back-btn{flex-shrink:0;width:fit-content;z-index:1}.placement-header-center{position:absolute;left:50%;top:calc(50% + 7px);transform:translate(-50%,-50%);display:flex;justify-content:center}.placement-header-right{flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:10px;z-index:1}.placement-header-center h2{margin:0;font-size:22px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--transition-slow)}.placement-subtitle{font-size:13px;color:var(--text-secondary);margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--transition-slow)}.placement-header .back-btn,.placement-header .continue-btn{padding:10px 20px;border-radius:6px;font-weight:500;display:flex;align-items:center;gap:8px;white-space:nowrap;flex-shrink:0;flex-grow:0;width:fit-content;align-self:center}.placement-header .close-btn{background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:8px;transition:color var(--transition-fast)}.placement-header .close-btn:hover{color:var(--color-danger)}.placement-main{flex:1;display:flex;overflow:hidden}.placement-sidebar{width:320px;background:var(--bg-card);border-right:1px solid var(--border-color);overflow-y:auto;flex-shrink:0;display:flex;flex-direction:column;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.signature-placement-interface .sidebar-section{padding:12px 20px;border-top:none;margin-top:0}.signature-placement-interface .sidebar-section:last-child{border-bottom:none}.sidebar-section-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 12px;display:flex;align-items:center;gap:8px;transition:color var(--transition-slow)}.sidebar-field-properties{display:flex;flex-direction:column;height:100%;padding:0}.sidebar-field-properties-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color)}.sidebar-field-properties-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary)}.sidebar-field-properties-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.sidebar-field-properties-close:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-field-properties-section{padding:14px 20px;border-bottom:1px solid var(--border-color)}.sidebar-field-properties-label{display:block;font-size:11px;font-weight:500;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.sidebar-field-properties-recipient{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-primary)}.sidebar-field-properties-recipient-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.sidebar-field-properties-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:4px 0;font-size:13px;color:var(--text-primary)}.sidebar-field-properties-toggle{width:32px;height:18px;border-radius:9px;border:none;cursor:pointer;position:relative;transition:background-color .2s;padding:0;flex-shrink:0}.sidebar-field-properties-toggle-knob{display:block;width:14px;height:14px;border-radius:50%;background-color:#fff;position:absolute;top:2px;transition:left .2s}.sidebar-field-properties-input{width:100%;font-size:13px;padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-main);color:var(--text-primary);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast)}.sidebar-field-properties-input:focus{border-color:var(--color-primary, #4f46e5)}.sidebar-field-properties-input::placeholder{color:var(--text-secondary);opacity:.7}.sidebar-field-properties-formatting-row{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.sidebar-field-properties-formatting-row .toolbar-btn{background:var(--bg-main);border:1px solid var(--border-color);color:var(--text-secondary);width:30px;height:30px;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.sidebar-field-properties-formatting-row .toolbar-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-field-properties-formatting-row .toolbar-btn.active{background:var(--color-primary, #4f46e5);color:#fff;border-color:var(--color-primary, #4f46e5)}.sidebar-field-properties-select{padding:4px 6px;font-size:12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-main);color:var(--text-primary);cursor:pointer;min-width:55px}.sidebar-field-properties-picker{position:absolute;top:100%;left:50%;transform:translate(-50%);display:flex;gap:6px;flex-wrap:nowrap;margin-top:8px;padding:8px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:0 4px 12px #0000001a;z-index:10}.sidebar-field-properties-hint{font-size:12px;color:var(--text-secondary)}.static-checkmark{color:#1a1a2e;font-size:16px}.recipient-dropdown-wrapper{position:relative}.recipient-dropdown-trigger{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;width:100%}.recipient-dropdown-trigger:hover{border-color:var(--color-primary);background:var(--bg-hover)}.recipient-dropdown-arrow{font-size:12px;color:var(--text-muted);flex-shrink:0;transition:transform var(--transition-fast)}.recipient-dropdown-arrow.open{transform:rotate(180deg)}.recipient-dropdown-list{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 8px 24px #00000026;z-index:20;overflow:hidden;padding:6px 0}.recipient-dropdown-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:transparent;border:none;cursor:pointer;transition:background var(--transition-fast);text-align:left;width:100%}.recipient-dropdown-item:hover,.recipient-dropdown-item.active{background:var(--bg-hover)}.recipient-check{font-size:12px;color:var(--color-primary);flex-shrink:0}.recipient-color-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0}.recipient-toggle-info{flex:1;min-width:0}.recipient-toggle-name{font-weight:500;color:var(--text-primary);font-size:13px;margin-bottom:2px;word-break:break-word;transition:color var(--transition-slow)}.recipient-toggle-count{font-size:11px;color:var(--text-secondary);transition:color var(--transition-slow)}.recipient-dropdown-circle{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;flex-shrink:0;letter-spacing:.3px}.recipient-dropdown-info{flex:1;min-width:0;display:flex;flex-direction:column}.recipient-dropdown-name{font-size:14px;font-weight:600;color:var(--text-primary);word-break:break-word;transition:color var(--transition-slow)}.recipient-dropdown-label{font-size:12px;color:var(--text-secondary);transition:color var(--transition-slow)}.template-group{margin-bottom:4px}.template-group-separator{height:1px;background-color:var(--border-color, #dee2e6);margin:6px 0}.template-group-label{font-size:11px;font-weight:600;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px;transition:color var(--transition-slow)}.template-boxes{display:flex;flex-direction:column;gap:3px}.template-box{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--template-box-bg, var(--bg-input));border:1px solid var(--border-color);border-left:4px solid var(--template-box-accent, var(--border-color));border-radius:8px;cursor:grab;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.template-box.template-box-compact{padding:6px 10px;border-radius:6px;gap:6px}.template-box-compact .template-icon{font-size:14px}.template-box-compact span{font-size:12px}.template-box-compact .template-drag-handle{font-size:11px}.template-box.template-box-annotation{--template-box-accent: var(--text-muted, #999);--template-box-bg: var(--bg-input);--template-box-bg-hover: var(--bg-hover);border-left-color:var(--text-muted, #999)}.template-box.template-box-annotation:hover{border-left-color:var(--text-secondary, #666)}.template-box:active{cursor:grabbing;transform:scale(.98)}.template-box:hover{background:var(--template-box-bg-hover, var(--bg-hover));border-color:var(--template-box-accent, var(--text-muted));border-left-color:var(--template-box-accent, var(--text-muted));border-left-width:4px}.template-box.active-placement{background:var(--template-box-bg, var(--color-primary-light, rgba(79, 70, 229, .1)));border-color:var(--template-box-accent, var(--color-primary, #4f46e5));border-left-color:var(--template-box-accent, var(--color-primary, #4f46e5));border-left-width:4px}.template-icon{font-size:18px;color:var(--template-box-accent, var(--text-secondary));flex-shrink:0}.template-box span{font-weight:600;font-size:13px;color:var(--text-primary);transition:color var(--transition-slow);white-space:nowrap}.template-drag-handle{margin-left:auto;font-size:14px;color:var(--text-muted);flex-shrink:0;opacity:.5}.template-box:hover .template-drag-handle{opacity:.8}.signed-text-display{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:12px;font-weight:600;color:var(--text-primary, #1a1a2e);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px}.signature-box.placed.prefilled{border-style:solid;cursor:text;display:flex;align-items:center;justify-content:flex-start;padding:0 6px;overflow:hidden}.signature-box.placed.prefilled.selected{overflow:visible}.prefill-display-text{display:block;font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;width:100%;min-width:0;pointer-events:none}.prefill-placeholder{opacity:.45;font-style:italic}.signature-box.placed.fillable{border-style:solid;display:flex;align-items:center;justify-content:center;padding:0 4px}.signature-box.placed.fillable-checkbox{padding:0}.signature-box.placed.fillable-checkbox .fillable-field-preview{width:100%;height:100%;justify-content:center;align-items:center;gap:0}.signature-box.placed.fillable-text-input{border-color:var(--recipient-color, #93c5fd);background-color:#dbeafea6;justify-content:flex-start}.signature-box.placed.fillable-checkbox,.signature-box.placed.static-checkbox{border-color:#93c5fd;background-color:#dbeafea6;border-style:solid;padding:0}.signature-box.placed.static-checkbox .resize-handle{background:#60a5fa}.signature-box.placed.static-checkbox .resize-handle:hover{background:#3b82f6}.fillable-field-preview{display:flex;align-items:center;gap:4px;width:100%;pointer-events:none;color:var(--text-secondary, #888)}.fillable-field-label{font-size:12px;opacity:.85}.checkbox-label{font-size:10px;color:var(--text-secondary, #666);margin-left:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px;position:absolute;left:100%;top:50%;transform:translateY(-50%);pointer-events:none}.link-group-badge{position:absolute;top:-6px;right:-6px;width:16px;height:16px;border-radius:50%;background:var(--color-primary, #4f46e5);color:#fff;display:flex;align-items:center;justify-content:center;z-index:5;pointer-events:auto;cursor:help;box-shadow:0 1px 3px #0003}.toolbar-label-input{background:var(--bg-primary, #fff);color:var(--text-primary, #333);outline:none}.toolbar-label-input:focus{border-color:var(--accent-color, #007bff)!important}.signature-box.placed.editing-prefill{display:flex;align-items:center;padding:0 4px;cursor:text;background:var(--bg-primary, #fff);box-shadow:0 0 0 2px var(--color-primary, #4c1d95)}.prefill-inline-input{width:100%;height:100%;border:none;background:transparent;outline:none;font-size:12px;font-weight:500;color:var(--text-primary);font-family:inherit;padding:0}.template-tooltip-wrapper{position:relative;display:inline-block}.template-tooltip-trigger{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;font-size:14px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:color var(--transition-fast)}.template-tooltip-trigger:hover{color:var(--text-secondary)}.template-tooltip{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:8px 12px;font-size:11px;color:var(--text-secondary);line-height:1.4;white-space:normal;min-width:200px;max-width:260px;box-shadow:var(--shadow-md);z-index:10}.placement-document{flex:1;display:flex;flex-direction:column;background:var(--bg-input);padding:0 20px;overflow:auto;position:relative;transition:background-color var(--transition-slow)}.document-controls-top{position:absolute;top:20px;left:0;right:0;display:flex;justify-content:center;align-items:center;padding:0 15px;z-index:10;pointer-events:none}.document-controls-bottom{position:absolute;bottom:20px;left:0;right:0;display:flex;justify-content:center;align-items:center;padding:0 15px;z-index:10;pointer-events:none}.page-navigation{display:flex;align-items:center;justify-content:center;gap:12px;background:var(--bg-card);padding:10px 20px;border-radius:25px;box-shadow:var(--shadow-sm);transition:background-color var(--transition-slow);pointer-events:auto}.page-nav-btn{background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;padding:8px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;transition:all var(--transition-fast)}.page-nav-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--text-muted)}.page-nav-btn:disabled{background:var(--bg-input);color:var(--text-muted);cursor:not-allowed}.page-info-wrapper{display:flex;align-items:center;gap:8px}.page-info{font-size:14px;color:var(--text-primary);font-weight:500;transition:color var(--transition-slow)}.page-number-input{width:50px;padding:6px 8px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;font-weight:500;text-align:center;color:var(--text-primary);background:var(--bg-card);transition:all var(--transition-fast)}.page-number-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.page-number-input::-webkit-inner-spin-button,.page-number-input::-webkit-outer-spin-button{opacity:1}.document-toolbar{display:flex;align-items:center;gap:4px;background:var(--bg-card);padding:6px 10px;border-radius:20px;box-shadow:var(--shadow-sm);transition:background-color var(--transition-slow);pointer-events:auto}.toolbar-control-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:8px;border-radius:50%;width:34px;height:34px;font-size:15px;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.toolbar-control-btn:hover:not(:disabled){background:var(--bg-hover)}.toolbar-control-btn:disabled{color:var(--text-muted);cursor:default;opacity:.4}.toolbar-control-divider{width:1px;height:20px;background:var(--border-color);margin:0 4px;flex-shrink:0;transition:background-color var(--transition-slow)}.zoom-level{font-size:14px;color:var(--text-primary);font-weight:500;cursor:pointer;padding:0 4px;min-width:40px;text-align:center;transition:color var(--transition-slow)}.document-drop-zone{flex:1;position:relative;background:var(--bg-input);border-radius:var(--radius-md) var(--radius-md) 0 0;display:block;text-align:center;transition:all .3s;overflow:auto;padding:68px 20px 20px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;touch-action:pan-x pan-y}.document-drop-zone.dragging{border:3px dashed var(--color-primary)}.document-image-container{position:relative;display:inline-block;transition:transform .2s ease-in-out;transform-origin:top center;background:var(--bg-card);box-shadow:var(--shadow-lg);min-width:750px;touch-action:none}.document-image-container:has(.all-pages-stack){background:transparent;box-shadow:none}.document-preview-image{display:block;width:750px;height:auto;object-fit:contain}.document-preview-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;max-width:500px;transition:background-color var(--transition-slow)}.document-preview-placeholder p{margin:0;color:var(--text-secondary);transition:color var(--transition-slow)}.document-preview-placeholder.office-conversion-needed{border:2px dashed var(--color-primary);background:var(--bg-input)}.document-preview-placeholder .conversion-icon{font-size:48px;color:var(--color-primary);margin-bottom:20px;opacity:.8}.drop-zone-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:var(--color-primary-light);pointer-events:none;z-index:10}.drop-zone-message{background:var(--bg-card);padding:15px 30px;border-radius:var(--radius-md);font-weight:600;color:var(--color-primary);box-shadow:var(--shadow-md);transition:background-color var(--transition-slow)}.signature-overlay{pointer-events:none}.signature-box{border:1px solid;border-radius:1px;pointer-events:auto;cursor:default;transition:all .2s;box-sizing:border-box;position:relative;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;background-color:color-mix(in srgb,var(--recipient-color) 65%,transparent)}.signature-box.placed{pointer-events:auto;touch-action:none}.signature-box.selected{z-index:200;border-width:2px}.signature-box.multi-selected{border-color:var(--color-primary)!important;border-width:2px}.selection-marquee{border:1px dashed var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,transparent);z-index:25;pointer-events:none}.spi-context-menu{z-index:100;background:var(--color-surface, #fff);border:1px solid var(--color-border, #ddd);border-radius:6px;box-shadow:0 4px 12px #00000026;padding:4px 0;min-width:120px}.spi-context-menu-item{display:block;width:100%;padding:8px 16px;border:none;background:none;font-size:13px;text-align:left;cursor:pointer;color:var(--color-text, #333)}.spi-context-menu-item:hover:not(:disabled){background:var(--color-hover, #f0f0f0)}.spi-context-menu-item:disabled{opacity:.4;cursor:default}.document-drop-zone.placing{cursor:crosshair}.placement-ghost{pointer-events:none;z-index:30;border:1.5px solid var(--color-primary);border-radius:3px;background:color-mix(in srgb,var(--color-primary) 12%,transparent);opacity:.7;display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 2px 8px #00000026}.placement-ghost.placement-ghost-preview{border-style:solid;border-width:1px;border-radius:1px;opacity:.85}.placement-ghost.placement-ghost-prefilled{border-style:solid;justify-content:flex-start;padding:0 6px}.placement-ghost-icon{font-size:16px;color:var(--color-primary);opacity:.6}.placement-ghost-label{font-size:12px;font-weight:600;color:var(--color-primary);opacity:.8}.placement-ghost-type-label{font-size:11px;font-weight:600;opacity:.7}.drag-ghost-button{pointer-events:none;z-index:30;display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;opacity:.9;white-space:nowrap}.drag-ghost-button .template-icon{font-size:18px;color:var(--text-secondary)}.drag-ghost-button span{font-weight:600;font-size:13px;color:var(--text-primary)}.group-selection-box{border:2px dashed var(--color-primary);border-radius:4px;background:color-mix(in srgb,var(--color-primary) 5%,transparent)}.toolbar-multi-label{font-size:12px;font-weight:600;color:#ccc;padding:0 6px;white-space:nowrap}.signature-box.interacting .resize-handle,.signature-box.selected .resize-handle,.text-annotation-box.selected .resize-handle{opacity:1}.signature-box.preview{border-style:solid;opacity:.7;pointer-events:none}.text-annotation-box .tiptap,.text-annotation-box .ProseMirror{outline:none!important;border:none!important;box-shadow:none!important;padding:0 4px;font-size:12px;line-height:1.4;position:absolute;top:0;left:0;right:0;bottom:0;overflow:visible;text-align:left}.text-annotation-box .tiptap:focus,.text-annotation-box .ProseMirror:focus{outline:none!important;border:none!important;box-shadow:none!important}.text-annotation-box p{margin:0}.text-annotation-box .resize-handle{background:color-mix(in srgb,#93c5fd 80%,black)}.text-annotation-box .resize-handle:hover{background:color-mix(in srgb,#93c5fd 65%,black)}.signature-box-center-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--recipient-color);font-size:min(20px,80%);max-height:80%;opacity:.5;pointer-events:none;display:flex;align-items:center;justify-content:center}.signature-box.placed.static-checkbox .signature-box-center-icon,.signature-box.placed.fillable-checkbox .signature-box-center-icon{width:70%;height:70%;font-size:unset}.signature-box.placed.static-checkbox .signature-box-center-icon svg,.signature-box.placed.fillable-checkbox .signature-box-center-icon svg{width:100%;height:100%}.signature-box-center-icon svg{max-height:100%;height:auto}.resize-handle{position:absolute;width:7px;height:7px;background:color-mix(in srgb,var(--recipient-color, var(--color-primary)) 80%,black);border:none;border-radius:50%;opacity:0;transition:opacity .2s;z-index:20;pointer-events:auto}.resize-handle:hover{background:color-mix(in srgb,var(--recipient-color, var(--color-primary)) 65%,black)}.resize-handle-tl{top:-3.5px;left:-3.5px;cursor:nwse-resize}.resize-handle-tr{top:-3.5px;right:-3.5px;cursor:nesw-resize}.resize-handle-bl{bottom:-3.5px;left:-3.5px;cursor:nesw-resize}.resize-handle-br{bottom:-3.5px;right:-3.5px;cursor:nwse-resize}.all-pages-stack{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:20px;padding-bottom:40px}.page-block-wrapper{display:flex;flex-direction:column;align-items:center;width:100%}.page-break-label{display:flex;align-items:center;gap:6px;padding:10px 0;font-size:11px;color:var(--text-muted, #999);-webkit-user-select:none;user-select:none}.page-break-title{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-break-separator{opacity:.5}.page-break-page{white-space:nowrap}.page-block{position:relative;display:inline-block;background:var(--bg-card);box-shadow:var(--shadow-lg);border-radius:4px;overflow:visible}.thumbnail-sidebar{width:140px;background:var(--bg-card);border-left:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0;transition:width .2s ease,background-color var(--transition-slow),border-color var(--transition-slow)}.thumbnail-sidebar.collapsed{width:0;border-left:none}.thumbnail-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:12px 10px;border-bottom:1px solid var(--border-color);flex-shrink:0}.thumbnail-sidebar-title{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap}.thumbnail-collapse-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;transition:all .2s;flex-shrink:0}.thumbnail-collapse-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.thumbnail-list{padding:8px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1}.thumbnail-item{width:100%;background:var(--bg-input);border:2px solid transparent;border-radius:6px;padding:4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .2s;flex-shrink:0}.thumbnail-item:hover{border-color:var(--border-hover);background:var(--bg-hover)}.thumbnail-item.active{border-color:var(--color-primary);background:var(--color-primary-light, rgba(0, 124, 191, .08))}.thumbnail-image{width:100%;height:auto;display:block;border-radius:3px;box-shadow:var(--shadow-sm)}.thumbnail-page-number{font-size:10px;color:var(--text-secondary);font-weight:500}.thumbnail-expand-btn{position:absolute;right:0;top:50%;transform:translateY(-50%);background:var(--bg-card);border:1px solid var(--border-color);border-right:none;border-radius:6px 0 0 6px;padding:12px 6px;cursor:pointer;color:var(--text-secondary);z-index:60;display:flex;align-items:center;transition:all .2s;box-shadow:var(--shadow-sm)}.thumbnail-expand-btn:hover{background:var(--bg-hover);color:var(--text-primary)}@media(max-width:1024px){.placement-sidebar{width:280px}.placement-header-center{left:50%}.thumbnail-sidebar{width:120px}}@media(max-width:768px){.placement-main{flex-direction:column}.placement-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border-color)}.placement-header{flex-direction:row;gap:10px;align-items:center;padding:12px 16px}.placement-header-center{display:none}.back-btn{width:auto}.placement-header-right{margin-left:auto}.placement-document{padding:0 8px}.thumbnail-sidebar,.thumbnail-expand-btn{display:none}}.template-popup-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000026;display:flex;justify-content:center;align-items:flex-start;padding-top:80px;z-index:20;animation:templateOverlayFadeIn .2s ease-out}.template-popup{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 8px 32px #00000026;padding:20px 24px;max-width:380px;width:90%;position:relative;animation:templatePopupSlideIn .25s ease-out;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.template-popup-close{position:absolute;top:12px;right:12px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;font-size:14px;line-height:1;transition:color var(--transition-fast)}.template-popup-close:hover{color:var(--text-primary)}.template-popup-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.template-popup-icon{width:36px;height:36px;background:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;flex-shrink:0}.template-popup-title{display:flex;flex-direction:column;gap:2px}.template-popup-title strong{color:var(--text-primary);font-size:15px;transition:color var(--transition-slow)}.template-popup-title span{color:var(--text-secondary);font-size:12px;transition:color var(--transition-slow)}.template-popup-actions{display:flex;flex-direction:column;gap:8px}.template-popup-use-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:600;font-size:13px;cursor:pointer;transition:all var(--transition-fast);width:100%}.template-popup-use-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 2px 8px var(--color-primary-light)}.template-popup-use-btn:active{transform:translateY(0)}.template-popup-view-link{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:12px;cursor:pointer;transition:all var(--transition-fast);width:100%}.template-popup-view-link:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-light)}.template-popup-error{display:block;margin-top:8px;color:var(--color-danger);font-size:12px;text-align:center}.template-popup-dont-ask{display:block;margin-top:12px;padding:0;background:none;border:none;color:var(--text-muted);font-size:11px;cursor:pointer;text-align:center;width:100%;transition:color var(--transition-fast)}.template-popup-dont-ask:hover{color:var(--text-secondary)}@keyframes templateOverlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes templatePopupSlideIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.template-popup-overlay{padding-top:60px}.template-popup{max-width:calc(100% - 24px);padding:16px 18px}}.recipient-toggle-btn.sender-recipient{border-style:solid}.sender-badge{display:inline-block;background:var(--color-primary);color:#fff;font-size:9px;font-weight:600;padding:2px 6px;border-radius:10px;margin-left:6px;text-transform:uppercase;letter-spacing:.3px}.you-badge{display:inline-block;background:var(--color-success, #22c55e);color:#fff;font-size:9px;font-weight:700;padding:1px 5px;border-radius:8px;margin-left:6px;letter-spacing:.5px}.recipient-dropdown-divider{height:1px;background-color:var(--border-color, #dee2e6);margin:4px 0}.recipient-dropdown-edit-link{display:block;padding:8px 12px;color:var(--color-primary);font-size:13px;font-weight:600;cursor:pointer;text-align:left}.recipient-dropdown-edit-btn{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;border:none;background:transparent;color:var(--color-primary);cursor:pointer;text-align:left;font-size:13px;font-weight:600}.recipient-dropdown-edit-btn:hover{background:var(--bg-hover, #f5f5f5)}.recipient-dropdown-edit-link:hover{text-decoration:underline}.signature-box.placed.signable{border-style:solid}.signature-box.placed.signable:hover{cursor:pointer}.click-to-sign-label{font-size:11px;font-weight:600;color:var(--color-primary);text-align:center;white-space:nowrap}.unsigned-fields-error{position:absolute;top:calc(100% + 8px);right:0;background:var(--color-danger, #dc3545);color:#fff;padding:8px 14px;border-radius:8px;font-size:13px;font-weight:500;white-space:nowrap;box-shadow:var(--shadow-md);z-index:100;animation:fadeInDown .2s ease-out}.annotation-only-hint{position:absolute;top:calc(100% + 8px);right:0;background:var(--color-warning, #f0ad4e);color:#333;padding:8px 14px;border-radius:8px;font-size:13px;font-weight:500;white-space:nowrap;box-shadow:var(--shadow-md);z-index:100;animation:fadeInDown .2s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.signature-box.placed.signed{background-color:#28a7451a;border-color:var(--color-success)!important;border-style:solid}.signed-box-content{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative}.signed-signature-image{max-width:95%;max-height:95%;object-fit:contain}.signed-date-display{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--color-success)}.edit-signed-btn{position:absolute;top:2px;right:2px;background:var(--bg-card);border:1px solid var(--color-success);color:var(--color-success);border-radius:var(--radius-sm);padding:4px 6px;cursor:pointer;font-size:10px;transition:all var(--transition-fast);opacity:0}.signature-box.placed.signed:hover .edit-signed-btn{opacity:1}.edit-signed-btn:hover{background:var(--color-success);color:#fff}.box-toolbar{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:2px;background:#1a1a2e;border-radius:8px;padding:4px 6px;box-shadow:0 4px 12px #0000004d;z-index:30;white-space:nowrap;pointer-events:none}.box-toolbar>*{pointer-events:auto}.box-toolbar:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1a1a2e}.box-toolbar.toolbar-below{bottom:auto;top:calc(100% + 8px)}.box-toolbar.toolbar-below:after{top:auto;bottom:100%;border-top-color:transparent;border-bottom-color:#1a1a2e}.toolbar-divider{width:1px;height:20px;background:#ffffff26;margin:0 4px;flex-shrink:0}.toolbar-btn{background:transparent;border:none;color:#aaa;cursor:pointer;padding:6px 8px;border-radius:4px;font-size:13px;display:flex;align-items:center;gap:4px;transition:background .15s,color .15s}.toolbar-btn:hover{background:#ffffff1a;color:#fff}.toolbar-delete-btn:hover{background:#dc35454d;color:#ff6b6b}.text-annotation-toolbar{pointer-events:auto!important}.text-annotation-toolbar *{pointer-events:auto}.toolbar-recipient-section{position:relative}.toolbar-recipient-btn{display:flex;align-items:center;gap:6px;border:none;border-radius:6px;padding:4px 8px 4px 4px;cursor:pointer;color:#fff;font-size:12px;font-weight:600;background:transparent;transition:background .15s}.toolbar-recipient-btn:hover{background:#ffffff1a}.toolbar-recipient-circle{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;flex-shrink:0}.toolbar-mixed-circle{background-color:#888!important;font-size:12px}.toolbar-dropdown-arrow{font-size:10px;opacity:.7}.toolbar-recipient-dropdown{position:absolute;top:calc(100% + 6px);left:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:6px 0;min-width:220px;box-shadow:0 8px 24px #00000040;z-index:40;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.toolbar-recipient-dropdown.dropdown-above{top:auto;bottom:calc(100% + 6px)}.dropdown-recipient-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border:none;background:transparent;cursor:pointer;width:100%;text-align:left;color:var(--text-primary);transition:background .15s}.dropdown-recipient-item:hover{background:var(--bg-hover, #f5f5f5)}.dropdown-recipient-item.active{background:var(--bg-hover, #f0f0f0)}.dropdown-recipient-circle{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;flex-shrink:0}.dropdown-recipient-info{display:flex;flex-direction:column}.dropdown-recipient-name{font-size:14px;font-weight:600;color:var(--text-primary, #1a1a2e)}.dropdown-recipient-label{font-size:12px;color:var(--text-secondary, #888)}.dropdown-divider{height:1px;background:var(--border-color, #e5e5e5);margin:4px 0}.dropdown-edit-recipients{display:block;width:100%;padding:10px 14px;border:none;background:transparent;color:var(--color-primary);cursor:pointer;text-align:left;font-size:13px;font-weight:600;text-decoration:none}.dropdown-edit-recipients:hover{background:var(--bg-hover, #f5f5f5)}.preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-primary);z-index:1100;display:flex;padding:0;animation:fadeIn .2s ease}.preview-modal{background:var(--bg-primary);border-radius:0;box-shadow:none;width:100%;max-width:none;height:100%;max-height:none;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease;transition:background-color var(--transition-slow)}.preview-header{display:flex;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid var(--border-color);background:var(--bg-card);flex-shrink:0;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.preview-title{margin:0;font-size:18px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px;white-space:nowrap;flex-shrink:0;transition:color var(--transition-slow)}.preview-back-btn{flex-shrink:0;display:flex;align-items:center;gap:6px;font-size:14px;padding:8px 14px}.preview-continue-btn{flex-shrink:0;display:flex;align-items:center;gap:6px;font-size:14px;padding:8px 16px;margin-left:auto;white-space:nowrap}.preview-close-btn{background:none;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:8px;transition:color var(--transition-fast);flex-shrink:0}.preview-close-btn:hover{color:var(--color-danger)}.preview-recipient-tabs{display:flex;align-items:center;gap:6px;flex:1;overflow-x:auto;min-width:0}.preview-recipient-tab{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:20px;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-secondary);white-space:nowrap;transition:all var(--transition-fast);flex-shrink:0}.preview-recipient-tab:hover{background:var(--bg-hover);border-color:var(--text-muted)}.preview-recipient-tab.active{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary);font-weight:600}.preview-tab-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.preview-tab-name{overflow:hidden;text-overflow:ellipsis}.preview-tab-count{background:var(--bg-card);border-radius:10px;padding:1px 7px;font-size:11px;font-weight:600;color:var(--text-secondary);flex-shrink:0}.preview-recipient-tab.active .preview-tab-count{background:var(--color-primary);color:#fff}.preview-viewing-as{display:flex;align-items:center;gap:8px;padding:10px 24px;background:var(--bg-input);border-bottom:1px solid var(--border-color);font-size:13px;color:var(--text-secondary);flex-shrink:0;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.preview-viewing-count{opacity:.7}.preview-body{flex:1;overflow-y:auto;padding:24px;background:var(--bg-input);transition:background-color var(--transition-slow)}.preview-page-wrapper{margin-bottom:24px;max-width:850px;margin-left:auto;margin-right:auto}.preview-page-wrapper:last-child{margin-bottom:0;margin-left:auto;margin-right:auto}.preview-page-label{font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:8px;text-align:center;transition:color var(--transition-slow)}.preview-page-container{text-align:center;background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:visible;display:inline-block;transition:background-color var(--transition-slow)}.preview-page-image{display:block;width:750px;max-width:none;height:auto;object-fit:contain}.preview-signer-box{position:absolute;border:2px solid var(--color-primary);border-radius:6px;pointer-events:none;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.preview-signer-box.unsigned{background-color:color-mix(in srgb,var(--color-primary) 8%,transparent)}.preview-signer-box.signed{border:none;background-color:transparent}.preview-signer-box.preview-signable{cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease}.preview-signer-box.preview-signable:hover{background-color:color-mix(in srgb,var(--color-primary) 20%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 40%,transparent)}.preview-signer-box.embedded-text{border:none;background:transparent;cursor:default;box-shadow:none;pointer-events:none;display:flex;align-items:center;justify-content:flex-start;padding-left:2px}@keyframes previewPulse{0%,to{box-shadow:0 0 #007cbf4d}50%{box-shadow:0 0 12px 2px #007cbf33}}.preview-box-label{background-color:var(--color-primary);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;display:flex;align-items:center;gap:6px;box-shadow:0 2px 4px #0003;white-space:nowrap;max-width:100%;overflow:hidden}.preview-box-label.date{background-color:var(--color-success)}.preview-box-number{background:#fff3;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0}.preview-signed-indicator{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:4px}.preview-date-display{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--color-success)}.preview-text-display{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--text-primary);text-align:center;overflow:hidden;text-overflow:ellipsis}.preview-signature-img{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.preview-signer-box.sample-unsigned{background-color:var(--color-primary);border:2px solid var(--color-primary);border-radius:6px;cursor:pointer;animation:none;transition:background-color .15s ease,transform .15s ease}.preview-signer-box.sample-unsigned:hover{filter:brightness(1.1);transform:scale(1.02)}.preview-signer-box.sample-unsigned .preview-box-label{background-color:transparent;box-shadow:none;color:#fff;font-size:13px;font-weight:600;display:flex;align-items:center;gap:5px}.preview-signer-box.sample-signed{border:2px solid var(--color-primary);border-radius:6px;background-color:transparent;overflow:visible;animation:none;cursor:pointer;transition:background-color .15s ease}.preview-signer-box.sample-signed:hover{background-color:color-mix(in srgb,var(--color-primary) 6%,transparent)}.preview-sample-signature-display{display:flex;align-items:center;justify-content:flex-start;position:relative;overflow:hidden;width:100%;height:100%;padding-left:6px}.preview-sample-signed-by{position:absolute;top:0;left:6px;font-size:9px;font-weight:500;color:var(--text-muted);opacity:.7;line-height:1;white-space:nowrap}.preview-sample-sig-img{width:100%;height:100%;display:flex;align-items:center;justify-content:flex-start;padding-top:8px}.preview-sample-sig-img img{max-width:100%;max-height:100%;object-fit:contain}.preview-sample-initials-display{display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%;height:100%;padding-left:6px}.preview-sample-initials-display img{max-width:100%;max-height:100%;object-fit:contain}.sample-initials-text{font-size:14px;font-weight:600;color:var(--text-primary)}.preview-sample-hint{margin-left:auto;font-size:11px;color:var(--text-muted);font-style:italic}.placement-header .preview-btn{padding:10px 20px;border-radius:6px;font-weight:500;display:flex;align-items:center;gap:8px;white-space:nowrap;flex-shrink:0;flex-grow:0;width:fit-content;align-self:center}@media(max-width:768px){.preview-header{flex-wrap:wrap;padding:12px 16px;gap:8px}.preview-continue-btn{font-size:13px;padding:6px 12px}.preview-recipient-tabs{order:1;width:100%}.preview-viewing-as{padding:8px 16px;font-size:12px;flex-wrap:wrap}.preview-sample-hint{width:100%;margin-left:0;font-size:10px}.preview-signer-box.sample-unsigned .preview-box-label{font-size:10px;gap:3px}.preview-sample-signed-by{font-size:8px}.preview-body{padding:16px}.preview-btn .preview-btn-text{display:none}.preview-page-container{zoom:calc((100vw - 64px) / 750)}}@media(max-width:480px){.preview-header{padding:10px 12px}.preview-body{padding:12px}.preview-page-wrapper{margin-bottom:16px}.preview-recipient-tab{padding:6px 10px;font-size:12px}.preview-page-container{zoom:calc((100vw - 48px) / 750)}}.spi-esign-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1100;padding:20px}.spi-esign-modal-content{background:var(--bg-card);border-radius:12px;padding:30px;max-width:600px;width:100%;box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto;transition:background-color var(--transition-slow)}.spi-esign-modal-content h3{margin:0 0 15px;color:var(--text-primary);font-size:20px;text-align:center}.spi-esign-disclosure{margin-bottom:16px;padding:14px;background:var(--bg-hover);border-radius:6px;border:1px solid var(--border-color);font-size:12px;line-height:1.5;max-height:200px;overflow-y:auto;color:var(--text-secondary)}.spi-esign-disclosure strong{font-size:13px;color:var(--text-primary)}.spi-esign-disclosure p{margin:8px 0 6px;text-align:left}.spi-esign-disclosure ul{text-align:left;padding-left:18px;margin:0 0 6px}.spi-esign-consent{margin-bottom:16px;padding:12px;background:#f5a6231a;border-radius:6px;border:1px solid var(--color-warning);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.spi-esign-consent.consented{background:#34c7591a;border-color:var(--color-success)}.spi-esign-consent label{display:flex;align-items:flex-start;cursor:pointer;font-size:13px;color:var(--text-primary)}.spi-esign-consent input[type=checkbox]{margin-right:8px;margin-top:2px;width:16px;height:16px;cursor:pointer;flex-shrink:0}.spi-esign-actions{display:flex;gap:10px;justify-content:center}@media(max-width:768px){.spi-esign-modal{padding:0}.spi-esign-modal-content{max-width:100%;border-radius:0;padding:20px;max-height:100vh}}@media(max-width:768px){.placement-sidebar.mobile-hidden{display:none!important}.placement-sidebar.mobile-bottom-sheet{position:fixed;bottom:0;left:0;right:0;top:auto;width:100%;max-height:60vh;z-index:1000;border-right:none;border-top:1px solid var(--border-color);border-radius:16px 16px 0 0;box-shadow:0 -4px 20px #00000026;animation:slideUp .25s ease-out;overflow-y:auto}.mobile-bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-color);position:sticky;top:0;background:var(--bg-card);z-index:1;border-radius:16px 16px 0 0}.mobile-bottom-sheet-title{font-weight:600;font-size:15px;color:var(--text-primary)}.mobile-bottom-sheet-close{color:var(--text-secondary);font-size:16px}.mobile-field-toolbar{position:fixed;bottom:0;left:0;right:0;z-index:999;background:var(--bg-card);border-top:1px solid var(--border-color);box-shadow:0 -2px 12px #0000001a;padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-field-toolbar-hint{text-align:center;padding:6px 12px;font-size:12px;color:var(--color-primary);font-weight:500;background:color-mix(in srgb,var(--color-primary) 8%,transparent);border-bottom:1px solid var(--border-color)}.mobile-field-toolbar-buttons{display:flex;align-items:center;justify-content:space-around;padding:8px 4px;gap:2px}.mobile-field-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 6px;border:none;background:none;color:var(--text-secondary);font-size:16px;cursor:pointer;border-radius:8px;min-width:48px;transition:all .15s ease}.mobile-field-btn span{font-size:10px;font-weight:500;white-space:nowrap}.mobile-field-btn:active{background:var(--bg-hover)}.mobile-field-btn.active{color:var(--btn-color, var(--color-primary));background:color-mix(in srgb,var(--btn-color, var(--color-primary)) 12%,transparent)}.mobile-field-btn-more{color:var(--text-muted)}.placement-sidebar.mobile-hidden+.placement-document{padding-bottom:80px}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}}@media(min-width:769px){.mobile-field-toolbar,.mobile-bottom-sheet-header{display:none}}.template-builder{display:flex;flex-direction:column;height:calc(100vh - 60px);overflow:hidden}.builder-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary, #64748b)}.builder-header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-bottom:1px solid var(--color-border, #e2e8f0);background:var(--color-bg, #fff);flex-shrink:0;position:relative;z-index:1000}.builder-header-left{display:flex;align-items:center;gap:8px;min-width:200px}.builder-header-center{flex:1;display:flex;justify-content:center}.builder-header-right{display:flex;align-items:center;gap:8px;min-width:200px;justify-content:flex-end}.builder-steps{display:flex;align-items:center;gap:8px}.builder-step{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;font-size:13px;color:var(--color-text-secondary, #94a3b8);cursor:default;transition:all .2s}.builder-step.active{color:var(--color-primary, #6c63ff);background:#6c63ff14;font-weight:600}.builder-step.completed{color:#16a34a;cursor:pointer}.builder-step.completed:hover{background:#16a34a14}.step-number{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:2px solid currentColor}.builder-step.completed .step-number{background:#16a34a;border-color:#16a34a;color:#fff}.builder-step.active .step-number{background:var(--color-primary, #6c63ff);border-color:var(--color-primary, #6c63ff);color:#fff}.step-label{display:none}@media(min-width:768px){.step-label{display:inline}}.builder-error{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:#fef2f2;color:#991b1b;font-size:13px;border-bottom:1px solid #fecaca}.builder-error button{background:none;border:none;color:#991b1b;font-size:18px;cursor:pointer;padding:0 4px}.builder-content{flex:1;overflow:auto}.builder-header .back-btn,.builder-header .continue-btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.builder-header .close-btn{background:none;border:none;font-size:20px;color:var(--color-text-secondary, #64748b);padding:8px;cursor:pointer;transition:color .15s;display:flex;align-items:center}.builder-header .close-btn:hover{color:var(--color-danger, #ef4444)}.upload-step{padding:24px;max-width:800px;margin:0 auto}.upload-section{margin-bottom:32px}.upload-section h3{font-size:16px;font-weight:600;margin:0 0 12px;color:var(--color-text, #1a1a2e)}.section-desc{font-size:13px;color:var(--color-text-secondary, #64748b);margin:0 0 12px}.upload-dropzone{border:2px dashed var(--color-border, #cbd5e1);border-radius:12px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .2s;background:var(--color-bg-secondary, #f8fafc)}.upload-dropzone:hover{border-color:var(--color-primary, #6c63ff);background:#6c63ff0a}.upload-dropzone.converting{cursor:wait;border-color:var(--color-primary, #6c63ff)}.upload-icon{font-size:36px;color:var(--color-text-secondary, #94a3b8);margin-bottom:12px}.converting-status{display:flex;flex-direction:column;align-items:center;gap:12px}.converting-status p{margin:0;color:var(--color-text-secondary, #64748b)}.progress-bar{width:200px;height:4px;background:var(--color-border, #e2e8f0);border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:var(--color-primary, #6c63ff);transition:width .3s}.upload-preview{border:1px solid var(--color-border, #e2e8f0);border-radius:10px;padding:16px}.page-thumbnails{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.page-thumb{width:80px;text-align:center;font-size:11px;color:var(--color-text-secondary, #64748b)}.page-thumb img{width:80px;height:auto;border:1px solid var(--color-border, #e2e8f0);border-radius:4px;margin-bottom:4px}.page-thumb.more{display:flex;align-items:center;justify-content:center;height:100px;background:var(--color-bg-secondary, #f1f5f9);border-radius:4px;font-weight:500}.upload-info{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-secondary, #64748b)}.btn-link{background:none;border:none;color:var(--color-primary, #6c63ff);cursor:pointer;font-size:13px;text-decoration:underline}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-field{display:flex;flex-direction:column;gap:4px}.form-field.full-width{grid-column:1 / -1}.form-field label{font-size:12px;font-weight:500;color:var(--color-text-secondary, #64748b)}.form-field input[type=text],.form-field input[type=number],.form-field select,.form-field textarea{padding:8px 12px;border:1px solid var(--color-border, #e2e8f0);border-radius:6px;font-size:14px;background:var(--color-bg, #fff);color:var(--color-text, #1a1a2e);transition:border-color .2s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--color-primary, #6c63ff)}.form-hint{font-size:11px;color:var(--color-text-secondary, #94a3b8)}.form-field.checkbox-field{flex-direction:row;align-items:center}.form-field.checkbox-field label{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.form-field.narrow{max-width:100px}.role-editor{display:flex;flex-direction:column;gap:12px}.role-row{display:flex;align-items:flex-end;gap:12px;padding:12px;background:var(--color-bg-secondary, #f8fafc);border-radius:8px;border:1px solid var(--color-border, #e2e8f0)}.role-fields{display:flex;gap:12px;flex:1;flex-wrap:wrap}.btn-add-role{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px dashed var(--color-border, #cbd5e1);background:none;border-radius:6px;color:var(--color-text-secondary, #64748b);cursor:pointer;font-size:13px;transition:all .2s}.btn-add-role:hover{border-color:var(--color-primary, #6c63ff);color:var(--color-primary, #6c63ff)}.placement-step{height:100%;display:flex;flex-direction:column}.placement-hint{padding:10px 20px;background:#6c63ff0f;font-size:13px;color:var(--color-text-secondary, #64748b);border-bottom:1px solid var(--color-border, #e2e8f0);flex-shrink:0}.placement-spi-wrapper{flex:1;overflow:hidden}.placement-spi-wrapper .signature-placement-interface{height:100%}.placement-spi-wrapper .placement-header{display:none}.placement-spi-wrapper .signature-placement-modal-content{padding-top:0}.placement-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary, #64748b)}.configure-step{display:flex;height:100%}.configure-sidebar{width:340px;border-right:1px solid var(--color-border, #e2e8f0);display:flex;flex-direction:column;overflow:hidden}.configure-tabs{display:flex;border-bottom:1px solid var(--color-border, #e2e8f0);flex-shrink:0}.config-tab{flex:1;padding:10px;border:none;background:none;font-size:12px;font-weight:500;color:var(--color-text-secondary, #64748b);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.config-tab.active{color:var(--color-primary, #6c63ff);border-bottom-color:var(--color-primary, #6c63ff)}.configure-panel-content{flex:1;overflow-y:auto;padding:12px}.configure-detail{flex:1;overflow-y:auto;padding:24px}.detail-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary, #94a3b8);font-size:14px}.field-page-group{margin-bottom:8px}.page-group-header{display:flex;align-items:center;gap:6px;width:100%;padding:8px;border:none;background:var(--color-bg-secondary, #f1f5f9);border-radius:6px;font-size:12px;font-weight:600;color:var(--color-text, #1a1a2e);cursor:pointer}.page-group-fields{padding:4px 0}.field-list-item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px 6px 24px;border:none;background:none;text-align:left;font-size:12px;cursor:pointer;border-radius:4px;transition:background .15s}.field-list-item:hover{background:var(--color-bg-secondary, #f1f5f9)}.field-list-item.selected{background:#6c63ff1a;color:var(--color-primary, #6c63ff)}.field-type-badge{font-size:10px;padding:2px 6px;border-radius:3px;background:var(--color-bg-secondary, #e2e8f0);color:var(--color-text-secondary, #64748b);font-weight:500;white-space:nowrap}.field-type-badge.large{font-size:13px;padding:4px 10px}.field-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-role{font-size:10px;color:var(--color-text-secondary, #94a3b8)}.empty-hint{padding:20px;text-align:center;color:var(--color-text-secondary, #94a3b8);font-size:13px}.field-config-panel h3{font-size:16px;font-weight:600;margin:0 0 12px}.field-config-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.field-position{font-size:12px;color:var(--color-text-secondary, #94a3b8)}.config-form{display:flex;flex-direction:column;gap:16px;max-width:480px}.section-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.section-manager-header h4{margin:0;font-size:14px}.section-hint{font-size:12px;color:var(--color-text-secondary, #94a3b8);margin:0 0 12px}.section-row{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--color-border, #e2e8f0);border-radius:6px;margin-bottom:6px}.section-order-btns{display:flex;flex-direction:column;gap:2px}.btn-micro{width:20px;height:20px;border:none;background:var(--color-bg-secondary, #f1f5f9);border-radius:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--color-text-secondary, #64748b)}.btn-micro:disabled{opacity:.3;cursor:default}.section-fields{display:flex;gap:6px;flex:1;align-items:center}.section-id-input{width:120px;padding:4px 8px;font-size:12px;border:1px solid var(--color-border, #e2e8f0);border-radius:4px}.section-label-input{flex:1;padding:4px 8px;font-size:12px;border:1px solid var(--color-border, #e2e8f0);border-radius:4px}.section-optional{display:flex;align-items:center;gap:4px;font-size:11px;white-space:nowrap;color:var(--color-text-secondary, #64748b)}.btn-add-small{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border:1px dashed var(--color-border, #cbd5e1);background:none;border-radius:4px;font-size:12px;color:var(--color-text-secondary, #64748b);cursor:pointer}.btn-add-small:hover{border-color:var(--color-primary, #6c63ff);color:var(--color-primary, #6c63ff)}.computed-editor{display:flex;flex-direction:column;gap:4px}.collapsible-section{border:1px solid var(--color-border, #e2e8f0);border-radius:6px;overflow:hidden}.collapsible-header{display:flex;align-items:center;gap:6px;width:100%;padding:10px 12px;border:none;background:var(--color-bg-secondary, #f8fafc);font-size:13px;font-weight:600;color:var(--color-text, #1a1a2e);cursor:pointer}.count-badge{margin-left:auto;font-size:11px;padding:1px 6px;border-radius:10px;background:var(--color-bg, #fff);color:var(--color-text-secondary, #64748b);font-weight:500}.collapsible-body{padding:12px;border-top:1px solid var(--color-border, #e2e8f0)}.computed-row{display:flex;align-items:center;gap:6px;margin-bottom:8px;flex-wrap:wrap}.computed-row select,.computed-row input{padding:4px 8px;font-size:12px;border:1px solid var(--color-border, #e2e8f0);border-radius:4px}.computed-row .arrow{color:var(--color-text-secondary, #94a3b8);font-size:14px}.narrow-input{width:120px}.micro-input{width:60px}.default-only-label{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--color-text-secondary, #64748b);white-space:nowrap}.tag-list{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.tag-item{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:12px;background:var(--color-bg-secondary, #e2e8f0);border-radius:4px;color:var(--color-text, #1a1a2e)}.tag-item button{background:none;border:none;cursor:pointer;color:var(--color-text-secondary, #94a3b8);font-size:14px;padding:0;line-height:1}.tag-add-row{display:flex;gap:4px}.tag-add-row input{flex:1;padding:4px 8px;font-size:12px;border:1px solid var(--color-border, #e2e8f0);border-radius:4px}.review-step{padding:24px;max-width:900px;margin:0 auto;overflow-y:auto}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.review-card{padding:16px;border:1px solid var(--color-border, #e2e8f0);border-radius:10px;background:var(--color-bg, #fff)}.review-card h3{font-size:14px;font-weight:600;margin:0 0 12px;color:var(--color-text, #1a1a2e)}.review-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:13px}.review-dl dt{color:var(--color-text-secondary, #64748b)}.review-dl dd{margin:0;color:var(--color-text, #1a1a2e)}.review-dl code{font-size:12px;padding:1px 6px;background:var(--color-bg-secondary, #f1f5f9);border-radius:3px}.review-roles{display:flex;flex-direction:column;gap:8px}.review-role{display:flex;align-items:center;gap:12px;font-size:13px}.review-role strong{min-width:80px}.review-role span{color:var(--color-text-secondary, #64748b)}.review-sections{padding-left:20px;margin:0;font-size:13px}.review-sections li{margin-bottom:4px}.optional-badge{font-size:10px;padding:1px 6px;border-radius:3px;background:#fef3c7;color:#92400e;margin-left:6px}.review-warnings{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;background:#fef3c7;border:1px solid #fde68a;border-radius:8px;color:#92400e;font-size:13px;margin-bottom:24px}.review-warnings ul{margin:0;padding-left:16px}.review-pages{margin-bottom:24px}.review-pages h3{font-size:14px;font-weight:600;margin:0 0 12px}.review-page-grid{display:flex;gap:8px;flex-wrap:wrap}.review-page-thumb{width:100px;text-align:center;font-size:11px;color:var(--color-text-secondary, #64748b)}.review-page-thumb img{width:100px;height:auto;border:1px solid var(--color-border, #e2e8f0);border-radius:4px;margin-bottom:4px}.review-json{margin-bottom:24px;max-height:400px;overflow:auto;background:var(--color-bg-secondary, #f8fafc);border:1px solid var(--color-border, #e2e8f0);border-radius:8px}.review-json pre{padding:16px;font-size:11px;margin:0}.review-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-deploy{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:#16a34a;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s;margin-left:auto}.btn-deploy:hover:not(:disabled){background:#15803d}.btn-deploy:disabled{opacity:.6;cursor:wait}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--color-primary, #6c63ff);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark, #5a52d5)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--color-bg-secondary, #f1f5f9);color:var(--color-text, #1a1a2e);border:1px solid var(--color-border, #e2e8f0);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:var(--color-bg, #fff);border-color:var(--color-primary, #6c63ff)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-icon{width:32px;height:32px;border:none;background:var(--color-bg-secondary, #f1f5f9);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary, #64748b);transition:all .15s}.btn-icon:hover:not(:disabled){background:var(--color-primary, #6c63ff);color:#fff}.btn-icon.danger:hover:not(:disabled){background:#ef4444;color:#fff}.btn-icon:disabled{opacity:.3;cursor:default}.internal-layout{display:flex;min-height:100vh}.internal-sidebar{width:220px;background:var(--bg-card);border-right:1px solid var(--border-color);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:transform var(--transition-slow)}.internal-sidebar-logo{padding:20px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border-color)}.internal-sidebar-logo .logo-text{font-size:20px;font-weight:600;color:var(--text-primary)}.internal-sidebar-logo .accent{color:var(--color-primary)}.internal-sidebar-nav{flex:1;padding:12px 8px;display:flex;flex-direction:column}.internal-nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);font-size:14px;font-weight:500;width:100%;text-align:left;transition:all var(--transition-fast)}.internal-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.internal-nav-item.active{background:var(--color-primary-light);color:var(--color-primary)}.internal-nav-icon{font-size:14px;flex-shrink:0}.internal-nav-section{margin-top:auto;padding-top:12px;border-top:1px solid var(--border-color)}.internal-theme-toggle{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;color:var(--text-secondary);font-size:13px;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.internal-theme-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.theme-toggle-icon{font-size:14px}.internal-user-profile{display:flex;align-items:center;gap:10px;padding:14px 16px;border-top:1px solid var(--border-color)}.internal-user-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.internal-user-info{flex:1;min-width:0}.internal-user-name{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.internal-logout-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center}.internal-logout-btn:hover{color:var(--color-danger);background:#ff3b3014}.internal-main{flex:1;margin-left:220px;min-height:100vh;min-width:0;overflow-x:hidden;background:var(--bg-primary)}.internal-mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:54px;background:var(--bg-card);border-bottom:1px solid var(--border-color);padding:0 16px;align-items:center;gap:12px;z-index:99}.mobile-menu-btn{background:none;border:none;color:var(--text-primary);font-size:18px;cursor:pointer;padding:6px;display:flex;align-items:center}.internal-mobile-logo{font-size:18px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.internal-mobile-logo .accent{color:var(--color-primary)}.internal-sidebar-overlay{display:none}@media(max-width:768px){.internal-mobile-header{display:flex}.internal-sidebar{transform:translate(-100%)}.internal-sidebar.open{transform:translate(0);box-shadow:var(--shadow-lg)}.internal-sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:99}.internal-main{margin-left:0;padding-top:54px}}.presence-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted);opacity:.4;flex-shrink:0}.presence-dot.online{background:var(--color-success);opacity:1}.unread-badge{background:var(--color-primary);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px;flex-shrink:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:2000}.modal-box{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:400px;max-width:calc(100vw - 32px);padding:24px}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-header h3{font-size:16px;font-weight:600;color:var(--text-primary)}.modal-close-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);font-size:14px;display:flex;align-items:center}.modal-close-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.modal-field{margin-bottom:14px}.modal-field label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.modal-field input{width:100%;padding:9px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);font-size:14px;outline:none;transition:border-color var(--transition-fast)}.modal-field input:focus{border-color:var(--color-primary)}.modal-error{font-size:12px;color:var(--color-danger);margin-bottom:10px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:6px}.modal-btn-primary{padding:8px 18px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:background var(--transition-fast)}.modal-btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.modal-btn-primary:disabled{opacity:.5;cursor:not-allowed}.modal-btn-secondary{padding:8px 18px;background:none;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;cursor:pointer;transition:all var(--transition-fast)}.modal-btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.dm-user-list{max-height:280px;overflow-y:auto;margin-top:4px}.dm-user-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 6px;border:none;background:none;cursor:pointer;border-radius:var(--radius-sm);text-align:left;transition:background var(--transition-fast)}.dm-user-item:hover:not(:disabled){background:var(--bg-hover)}.dm-user-item:disabled{opacity:.6;cursor:wait}.dm-user-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;flex-shrink:0}.dm-user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.dm-user-name{font-size:13.5px;font-weight:500;color:var(--text-primary)}.dm-user-email{font-size:11px;color:var(--text-muted)}.viewer-page{width:100vw;height:100vh;display:flex;flex-direction:column;background:#0a0a0a;color:#fff;overflow:hidden}.viewer-header{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0;z-index:10}.viewer-brand{display:flex;align-items:center}.viewer-logo{font-size:16px;font-weight:700;color:#fff;letter-spacing:-.3px}.viewer-logo .accent{color:#34c759}.viewer-status{display:flex;align-items:center}.viewer-status-live{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#34c759}.viewer-live-dot{width:8px;height:8px;border-radius:50%;background:#34c759;animation:viewerPulse 1.5s infinite}@keyframes viewerPulse{0%,to{opacity:1}50%{opacity:.4}}.viewer-status-connecting{font-size:13px;color:#ffffff80}.viewer-status-ended{font-size:13px;color:#fff6}.viewer-controls{display:flex;align-items:center;gap:8px}.viewer-fs-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.15);border-radius:6px;background:#ffffff0f;color:#ffffffb3;cursor:pointer;transition:all .15s}.viewer-fs-btn:hover{background:#ffffff1f;color:#fff}@media screen and (max-width:768px)and (orientation:portrait){.viewer-page{position:fixed;overflow:hidden;width:100vh;height:100vw;top:calc(50vh - 50vw);left:calc(50vw - 50vh);transform:rotate(90deg)}}.viewer-video-area{flex:1;display:flex;align-items:center;justify-content:center;position:relative;min-height:0}.viewer-video-area video{width:100%;height:100%;object-fit:contain}.viewer-video-hidden{display:none}.viewer-video-visible{display:block}.viewer-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:40px;width:100%;height:100%}.viewer-overlay-icon{font-size:48px;color:#fff3}.viewer-overlay-icon.faded{color:#ffffff1a}.viewer-overlay-icon.pulse{animation:viewerPulse 1.5s infinite;color:#ffffff4d}.viewer-overlay h2{font-size:20px;font-weight:600;color:#fffc;margin:0}.viewer-overlay p{font-size:14px;color:#fff6;max-width:400px;line-height:1.5;margin:0}*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #2E5548;--color-primary-hover: #264A3D;--color-primary-light: rgba(46, 85, 72, .1);--bg-primary: #fafafa;--bg-card: #ffffff;--bg-hover: #f5f5f7;--bg-input: #f5f5f7;--border-color: #e8e8e8;--border-hover: #d2d2d7;--text-primary: #1d1d1f;--text-secondary: #86868b;--text-muted: #aeaeb2;--color-success: #34c759;--color-warning: #f5a623;--color-danger: #ff3b30;--color-purple: #af52de;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .04);--shadow-md: 0 2px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 20px rgba(0, 0, 0, .12);--radius-sm: 8px;--radius-md: 10px;--radius-lg: 14px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}.dark-mode{--bg-primary: #0d0d0d;--bg-card: #1a1a1a;--bg-hover: #252525;--bg-input: #252525;--border-color: #333333;--border-hover: #444444;--text-primary: #f5f5f7;--text-secondary: #86868b;--text-muted: #636366;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 2px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 4px 20px rgba(0, 0, 0, .5)}body{font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);transition:background-color var(--transition-slow),color var(--transition-slow)}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--text-secondary);font-size:14px}
