:root{--bg: linear-gradient(135deg, #0c1929 0%, #1a1f35 50%, #0d1b2a 100%);--bg-solid: #0f172a;--card: rgba(17, 24, 39, .85);--card-hover: rgba(30, 41, 59, .9);--glass: rgba(255, 255, 255, .03);--text: #e5e7eb;--text-secondary: #9ca3af;--muted: #6b7280;--accent: #3b82f6;--accent-light: #60a5fa;--accent-glow: rgba(59, 130, 246, .4);--ok: #10b981;--ok-light: #34d399;--warn: #f59e0b;--warn-light: #fbbf24;--err: #ef4444;--err-light: #f87171;--border: rgba(255, 255, 255, .08);--border-light: rgba(255, 255, 255, .12);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2);--shadow-md: 0 4px 20px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .4);--shadow-glow: 0 0 20px var(--accent-glow);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px}.login-v2{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#080c15;position:relative;overflow:hidden}.particle-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0}.login-card-v2{position:relative;z-index:10;width:100%;max-width:400px;margin:20px;padding:48px 40px;background:#0c111cd9;backdrop-filter:blur(20px);border:1px solid rgba(100,150,255,.15);border-radius:16px;box-shadow:0 0 60px #6496ff14,0 25px 50px #00000080}.login-header-v2{text-align:center;margin-bottom:36px}.login-header-v2 h1{font-size:26px;font-weight:600;color:#e8edf5;margin:0 0 8px;letter-spacing:2px}.login-header-v2 p{font-size:14px;color:#6b7a99;margin:0}.login-tabs-v2{display:flex;gap:0;margin-bottom:28px;background:#ffffff08;border-radius:8px;padding:4px}.tab-v2{flex:1;padding:10px 20px;border:none;background:transparent;color:#5a6a8a;font-size:14px;font-weight:500;cursor:pointer;border-radius:6px;transition:all .25s ease}.tab-v2:hover:not(.active){color:#8a9abb}.tab-v2.active{background:#6496ff26;color:#a0c4ff}.login-error-v2{background:#ff50501a;border:1px solid rgba(255,80,80,.25);border-radius:8px;padding:12px 16px;margin-bottom:20px;color:#ff8a8a;font-size:13px;text-align:center}.login-form-v2{display:flex;flex-direction:column;gap:16px}.input-group-v2{position:relative}.input-group-v2 input{width:100%;padding:14px 16px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#e8edf5;font-size:14px;transition:all .25s ease;box-sizing:border-box}.input-group-v2 input::placeholder{color:#4a5a7a}.input-group-v2 input:focus{outline:none;border-color:#6496ff80;background:#6496ff0d;box-shadow:0 0 0 3px #6496ff1a}.login-btn-v2{width:100%;padding:14px 24px;margin-top:8px;border:none;border-radius:8px;background:linear-gradient(135deg,#4080ff,#6090ff);color:#fff;font-size:15px;font-weight:500;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 20px #4080ff4d}.login-btn-v2:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 25px #4080ff66}.login-btn-v2:active:not(:disabled){transform:translateY(0)}.login-btn-v2:disabled{opacity:.6;cursor:not-allowed}.login-btn-v2.loading{background:linear-gradient(135deg,#3060cc,#4070dd)}.login-footer-v2{text-align:center;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.06);font-size:13px;color:#4a5a7a}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.login-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0}.gradient-bg{position:absolute;width:100%;height:100%;background:linear-gradient(135deg,#0a0f1a,#0d1b2a,#1a1f35,#0f172a,#0a0f1a);animation:gradientShift 15s ease infinite;background-size:400% 400%}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.floating-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;animation:float 20s ease-in-out infinite}.orb-1{width:600px;height:600px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);top:-200px;left:-200px;animation-delay:0s}.orb-2{width:500px;height:500px;background:linear-gradient(135deg,#06b6d4,#10b981);bottom:-150px;right:-150px;animation-delay:-7s}.orb-3{width:400px;height:400px;background:linear-gradient(135deg,#f59e0b,#ef4444);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:-14s;opacity:.3}@keyframes float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(50px,-50px) scale(1.1)}50%{transform:translateY(50px) scale(.9)}75%{transform:translate(-50px,-25px) scale(1.05)}}.orb-3{animation:floatCenter 20s ease-in-out infinite}@keyframes floatCenter{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}}.grid-pattern{position:absolute;width:100%;height:100%;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:50px 50px;animation:gridMove 30s linear infinite}@keyframes gridMove{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.login-container-new{position:relative;z-index:10;width:100%;max-width:460px;padding:20px}.login-card-new{position:relative;background:#0f172acc;backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:48px 40px;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #ffffff0d,inset 0 1px #ffffff1a;overflow:hidden}.card-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg,transparent 0deg,rgba(59,130,246,.1) 60deg,transparent 120deg,rgba(16,185,129,.1) 180deg,transparent 240deg,rgba(139,92,246,.1) 300deg,transparent 360deg);animation:cardGlowRotate 8s linear infinite;z-index:-1}@keyframes cardGlowRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-logo{text-align:center;margin-bottom:32px}.logo-icon{width:80px;height:80px;margin:0 auto 16px;background:linear-gradient(135deg,#3b82f6,#8b5cf6,#06b6d4);border-radius:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 20px 40px #3b82f64d,0 0 0 1px #ffffff1a;animation:logoFloat 3s ease-in-out infinite}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.logo-emoji{font-size:36px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.login-title{font-size:28px;font-weight:700;color:#fff;margin:0 0 8px;background:linear-gradient(135deg,#fff,#a5b4fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-subtitle{font-size:14px;color:#94a3b8;margin:0;letter-spacing:.5px}.login-tabs-new{display:flex;position:relative;background:#ffffff0d;border-radius:16px;padding:4px;margin-bottom:28px}.login-tab{flex:1;padding:12px 24px;border:none;background:transparent;color:#64748b;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;z-index:1}.login-tab:hover:not(.active){color:#94a3b8}.login-tab.active{color:#fff}.tab-icon{font-size:16px}.tab-slider{position:absolute;top:4px;width:calc(50% - 4px);height:calc(100% - 8px);background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:12px;transition:left .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #3b82f666}.login-error{background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:14px 18px;margin-bottom:24px;display:flex;align-items:center;gap:10px;color:#fca5a5;font-size:14px}.error-icon{font-size:18px}.login-form{display:flex;flex-direction:column;gap:20px}.login-form-group{position:relative;display:flex;align-items:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:0 16px;transition:all .3s ease}.login-form-group:hover{border-color:#fff3;background:#ffffff14}.login-form-group.focused{border-color:#3b82f6;background:#3b82f61a;box-shadow:0 0 0 4px #3b82f626}.input-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0;opacity:.6;transition:opacity .3s ease}.login-form-group.focused .input-icon{opacity:1}.input-wrapper{flex:1;position:relative;padding:20px 0 8px}.login-input{width:100%;background:transparent;border:none;color:#fff;font-size:15px;padding:0 8px;outline:none}.login-input::placeholder{color:transparent}.floating-label{position:absolute;left:8px;top:50%;transform:translateY(-50%);font-size:14px;color:#64748b;pointer-events:none;transition:all .2s ease}.login-input:focus~.floating-label,.login-form-group.has-value .floating-label{top:8px;transform:translateY(0);font-size:11px;color:#3b82f6}.input-line{position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,#3b82f6,#8b5cf6);transform:scaleX(0);transition:transform .3s ease}.login-form-group.focused .input-line{transform:scaleX(1)}.password-toggle{background:none;border:none;font-size:16px;cursor:pointer;padding:8px;opacity:.6;transition:opacity .2s ease}.password-toggle:hover{opacity:1}.login-btn{position:relative;width:100%;padding:16px 28px;border:none;border-radius:14px;background:linear-gradient(135deg,#3b82f6,#8b5cf6,#06b6d4);background-size:200% 200%;color:#fff;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;overflow:hidden;transition:all .3s ease;box-shadow:0 10px 30px #3b82f666,0 0 0 1px #ffffff1a;animation:btnGradient 3s ease infinite;margin-top:8px}@keyframes btnGradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 15px 40px #3b82f680,0 0 0 1px #fff3}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.login-btn.loading{pointer-events:none}.btn-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.btn-text{transition:transform .3s ease}.btn-arrow{font-size:18px;transition:transform .3s ease}.login-btn:hover:not(:disabled) .btn-arrow{transform:translate(4px)}.login-footer-new{text-align:center;margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08)}.login-footer-new p{font-size:13px;color:#64748b;margin:0}.login-copyright{position:fixed;bottom:20px;left:0;right:0;text-align:center;font-size:12px;color:#475569;z-index:10}.animate-scale-in{animation:scaleIn .5s cubic-bezier(.16,1,.3,1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fade-up{animation:fadeUp .4s cubic-bezier(.16,1,.3,1)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97)}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:20px}.login-card{background:var(--card);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow-lg)}.login-header{text-align:center;margin-bottom:32px}.login-header h1{font-size:28px;font-weight:700;color:var(--text);margin:0 0 8px}.login-tabs{display:flex;gap:8px;margin-bottom:24px;background:var(--glass);padding:4px;border-radius:var(--radius-md)}.login-tabs .tab{flex:1;padding:10px 16px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.login-tabs .tab.active{background:var(--accent);color:#fff;box-shadow:var(--shadow-glow)}.login-tabs .tab:hover:not(.active){background:var(--glass);color:var(--text)}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:500;color:var(--text);margin-bottom:8px}.full-width{width:100%}.error-message{background:#ef44441a;border:1px solid var(--err);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:20px;color:var(--err-light);font-size:14px}.login-footer{margin-top:24px;text-align:center}.login-footer .caption{font-size:13px;color:var(--text-secondary)}html,body{height:100%;background:var(--bg);background-attachment:fixed;color:var(--text);margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow:hidden}body.light{--bg: linear-gradient(135deg, #f0f4f8 0%, #e2e8f0 50%, #f8fafc 100%);--bg-solid: #f8fafc;--card: rgba(255, 255, 255, .95);--card-hover: rgba(255, 255, 255, 1);--glass: rgba(0, 0, 0, .02);--text: #1e293b;--text-secondary: #475569;--muted: #64748b;--accent: #2563eb;--accent-light: #3b82f6;--ok: #059669;--ok-light: #10b981;--warn: #d97706;--warn-light: #f59e0b;--err: #dc2626;--err-light: #ef4444;--border: rgba(0, 0, 0, .08);--border-light: rgba(0, 0, 0, .12);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 20px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .15)}.pdf-summary-box,.excel-summary-box,.pdf-summary-box .summary-content,.excel-summary-box .summary-content{color:var(--text)}body.light .pdf-summary-box{background:#fffffff2!important;border-color:#3b82f64d!important}body.light .excel-summary-box{background:#fffffff2!important;border-color:#28a7454d!important}body.light .pdf-summary-box .summary-content,body.light .excel-summary-box .summary-content{color:#1e293b!important}body.light .pdf-summary-box .summary-header,body.light .excel-summary-box .summary-header{border-bottom-color:#0000001a}body.light .summary-card{background:#f8fafc!important;border-color:#0000001a!important}body.light .card-header{border-bottom-color:#0000001a!important}body.light .card-header h4{color:#1e293b!important}body.light .card-content{color:#334155!important}body.light .info-label{color:#64748b!important}body.light .info-value{color:#1e293b!important}body.light .item-list li{background:#f1f5f9!important;color:#1e293b!important}body.light .list-section h5{color:#475569!important}body.light .summary-text{background:#f1f5f9!important;color:#1e293b!important;box-shadow:inset 0 2px 8px #0000000d!important}body.light .timeline-item{background:#f1f5f9!important}body.light .timeline-label{color:#475569!important}body.light .timeline-value{color:#1e293b!important}body.light .scoring-table th{background:#f1f5f9!important;color:#475569!important}body.light .scoring-table td{color:#1e293b!important}body.light .category-item{background:#f1f5f9!important}body.light .category-name{color:#1e293b!important}body.light .category-stats{color:#64748b!important}body.light .page-stat{background:#f1f5f9!important}body.light .page-label{color:#64748b!important}body.light .page-value{color:#1e293b!important}body.light .cost-label{color:#64748b!important}body.light .cost-value{color:#1e293b!important}body.light .bar-container{background:#e2e8f0!important}body.light .sheet-info-item{background:#f1f5f9!important}body.light .sheet-name{color:#1e293b!important}body.light .sheet-stats{color:#64748b!important}body.light .date-note-text{background:#f1f5f9!important;color:#475569!important}body.light .chapters-section li{background:#e2e8f0!important;color:#1e293b!important}body.light .sheet-analysis-card .sheet-item{background:#f1f5f9!important}body.light .sheet-analysis-card .sheet-title{color:#1e293b!important}body.light .categories-card .category-item{background:#f1f5f9!important}body.light .categories-card .category-name{color:#1e293b!important}body.light .tech-req-card .tech-points li{background:#f1f5f9!important}body.light .table-preview-card{background:#f8fafc!important;border-color:#0000001a!important}body.light .table-header{background:#f1f5f9!important;border-bottom-color:#0000001a!important}body.light .table-info strong{color:#1e293b!important}body.light .table-meta{color:#64748b!important}body.light .preview-table th{background:#3b82f61a!important;color:#2563eb!important;border-bottom-color:#3b82f633!important}body.light .preview-table td{color:#334155!important;border-bottom-color:#0000000f!important}body.light .table-footer{color:#64748b!important}body.light .sheet-preview-card{background:#f8fafc!important;border-color:#0000001a!important}body.light .sheet-header{background:#f1f5f9!important}body.light .sheet-number{color:#059669!important}body.light .sheet-title strong{color:#1e293b!important}body.light .sheet-meta,body.light .expand-btn{color:#64748b!important}body.light .column-tag,body.light .data-table th{background:#28a7451a!important;color:#059669!important}body.light .data-table td{color:#334155!important}body.light .toggle-data-btn{background:#3b82f61a!important;color:#2563eb!important;border-color:#3b82f633!important}body.light .quantities-table th,body.light .quantities-table td{color:#1e293b!important;border-bottom-color:#0000001a!important}body.light .quantities-table th{background:#f1f5f9!important;color:#475569!important}body.light .structured-summary{color:#334155!important}body.light .info-value.highlight{color:#2563eb!important}body.light .tag-blue{background:#3b82f626!important;color:#2563eb!important}body.light .tag-green{background:#10b98126!important;color:#059669!important}body.light .tag-orange{background:#f59e0b26!important;color:#d97706!important}body.light .date-note{color:#64748b!important}body.light .scoring-table .points{color:#2563eb!important}body.light .summary-text-block h5{color:#64748b!important}body.light .stat-number{color:#2563eb!important}body.light .stat-label{color:#64748b!important}body.light .category-amount{color:#2563eb!important}body.light .page-stat.recommended{background:#10b9811a!important;border-color:#10b981!important}body.light .timeline-item.critical{background:#f59e0b1a!important}body.light .timeline-item.construction{background:#10b9811a!important}body.light .evaluation-card,body.light .blind-rules-card{background:#f8fafc!important}body.light .summary-text::-webkit-scrollbar-track{background:#e2e8f0!important}body.light .summary-text::-webkit-scrollbar-thumb{background:#94a3b8!important}body.light .summary-text::-webkit-scrollbar-thumb:hover{background:#64748b!important}body.light .categories-card .classification-basis,body.light .sheet-analysis-card .sheet-meta,body.light .sheet-analysis-card .sheet-section h5,body.light .sheet-analysis-card .sheet-section-name{color:#64748b!important}body.light .sheet-analysis-card .sheet-columns{color:#94a3b8!important}body.light .tech-req-card .empty-notice,body.light .tech-req-card .tech-points h5{color:#64748b!important}body.light .tech-req-card .tech-points .point-name{color:#1e293b!important}body.light .high-value-section h5{color:#b45309!important}body.light .chapters-section .points{color:#2563eb!important}body.light .summary-text-plain{background:#f8fafc!important;color:#1e293b!important}select.input,.form-group select{background-color:var(--bg-solid, #0f172a);color:var(--text)}select.input option,.form-group select option,select option{background-color:#1e293b;color:#e5e7eb}body.light select.input,body.light .form-group select,body.light select.input option,body.light .form-group select option,body.light select option{background-color:#fff;color:#1e293b}table{width:100%;border-collapse:collapse;margin:16px 0;background:var(--card);border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-sm)}thead{background:#3b82f61a}thead th{font-weight:600;color:var(--accent-light);text-align:left;padding:12px 16px;border-bottom:2px solid var(--accent);font-size:13px;text-transform:uppercase;letter-spacing:.5px}tbody tr{border-bottom:1px solid var(--border);transition:background .2s ease}tbody tr:hover{background:var(--glass)}tbody tr:last-child{border-bottom:none}td,th{padding:10px 16px;text-align:left;font-size:13px}td{color:var(--text)}td code{background:#3b82f61a;padding:2px 6px;border-radius:4px;font-size:12px;color:var(--accent-light)}body.light table{background:#ffffffe6}body.light thead{background:#2563eb14}body.light thead th{color:var(--accent);border-bottom-color:var(--accent)}body.light tbody tr:hover{background:#00000005}body.light td code{background:#2563eb14;color:var(--accent)}.topbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:#0f172af2;backdrop-filter:blur(20px);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm)}body.light .topbar{background:#fffffff2}.topbar .title{font-size:17px;font-weight:700;color:#1e293b;letter-spacing:-.3px}.topbar .chips{display:flex;gap:10px;align-items:center}.chip{font-size:12px;font-weight:500;padding:6px 12px;border-radius:999px;background:var(--glass);border:1px solid var(--border);color:var(--text-secondary);transition:all .2s ease}.chip:hover{background:var(--border);color:var(--text)}.layout{display:flex;height:calc(100vh - 56px)}.sidebar{width:280px;border-right:1px solid var(--border);padding:20px 16px;box-sizing:border-box;background:#00000026;backdrop-filter:blur(10px);overflow-y:auto}body.light .sidebar{background:#ffffff80}.content{flex:1;padding:20px 24px;box-sizing:border-box;overflow:auto;background:var(--glass)}.project-wizard-page{height:100vh;overflow:hidden;display:flex;flex-direction:column}.project-wizard-page .step-content{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}h1{font-size:18px;font-weight:700;margin:0 0 8px;color:var(--text)}h2{font-size:16px;font-weight:700;margin:0 0 8px;color:var(--text)}h3{font-size:15px;font-weight:600;margin:0 0 8px;color:var(--text-secondary)}.step{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);font-weight:500;font-size:14px;transition:all .2s ease;text-decoration:none;margin-bottom:4px;border:1px solid transparent}.step:hover{background:var(--card);color:var(--text);border-color:var(--border)}.step.active{background:linear-gradient(135deg,#3b82f626,#10b9811a);color:var(--accent-light);border-color:#3b82f64d;box-shadow:0 0 20px #3b82f61a}.badge{font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.3px}.pending{background:linear-gradient(135deg,#374151,#4b5563);color:#9ca3af}.progress{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-light) 100%);color:#fff;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.done{background:linear-gradient(135deg,var(--ok) 0%,var(--ok-light) 100%);color:#fff}.error{background:linear-gradient(135deg,var(--err) 0%,var(--err-light) 100%);color:#fff}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px;box-shadow:var(--shadow-sm);backdrop-filter:blur(10px);transition:all .25s ease}.card:hover{border-color:var(--border-light);box-shadow:var(--shadow-md)}.card-highlight{border-color:#3b82f64d;background:linear-gradient(135deg,#3b82f60d,#10b98108)}.row{display:flex;gap:16px}.col{flex:1}.btn{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-light) 100%);color:#fff;border:none;padding:10px 18px;border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:13px;transition:all .2s ease;box-shadow:0 2px 8px #3b82f64d;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #3b82f666}.btn:active{transform:translateY(0)}.btn.secondary{background:var(--glass);border:1px solid var(--border);color:var(--text-secondary);box-shadow:none}.btn.secondary:hover{background:var(--border);color:var(--text);border-color:var(--border-light)}.btn.warn{background:linear-gradient(135deg,var(--warn) 0%,var(--warn-light) 100%);box-shadow:0 2px 8px #f59e0b4d}.btn.warn:hover{box-shadow:0 4px 16px #f59e0b66}.btn.err{background:linear-gradient(135deg,var(--err) 0%,var(--err-light) 100%);box-shadow:0 2px 8px #ef44444d}.btn.success{background:linear-gradient(135deg,var(--ok) 0%,var(--ok-light) 100%);box-shadow:0 2px 8px #10b9814d}.btn.success:hover{box-shadow:0 4px 16px #10b98166}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-group{display:flex;gap:8px;flex-wrap:wrap}.input{background:#0000004d;border:1px solid var(--border);color:var(--text);padding:10px 14px;border-radius:var(--radius-md);width:100%;box-sizing:border-box;font-size:14px;transition:all .2s ease}body.light .input{background:#fffc}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.input::placeholder{color:var(--muted)}textarea.input{min-height:140px;resize:vertical}select.input{cursor:pointer}pre{background:#0006;border:1px solid var(--border);padding:16px;border-radius:var(--radius-md);overflow:auto;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:13px;line-height:1.6}body.light pre{background:#00000008}.log{white-space:pre-wrap;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:12px;max-height:300px;background:linear-gradient(180deg,#0006,#00000080);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px}body.light .log{background:linear-gradient(180deg,#00000005,#0000000a)}.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}.caption{font-size:13px;color:var(--muted);line-height:1.5}.mermaid{background:#fff!important;padding:16px!important}.kpi{display:flex;gap:12px;flex-wrap:wrap}.kpi .item{background:linear-gradient(135deg,#3b82f614,#10b9810d);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 18px;flex:1;min-width:120px;font-weight:600;font-size:14px;text-align:center;transition:all .2s ease}.kpi .item:hover{border-color:var(--accent-glow);box-shadow:0 0 15px var(--accent-glow)}.skeleton{position:relative;overflow:hidden;background:linear-gradient(135deg,#0000004d,#0006);border:1px solid var(--border);border-radius:var(--radius-lg)}.skeleton:after{content:"";position:absolute;left:-50%;top:0;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{left:-50%}to{left:100%}}.batch-card{padding:14px 18px;background:var(--glass);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden}.batch-card:hover{background:var(--card);border-color:var(--border-light);transform:translateY(-2px);box-shadow:var(--shadow-md)}.batch-card.active{background:linear-gradient(135deg,#3b82f626,#10b9811a);border-color:var(--accent);box-shadow:var(--shadow-glow)}.batch-card .batch-name{font-weight:600;font-size:14px;color:var(--text);margin-bottom:4px}.batch-card .batch-id{font-size:11px;color:var(--muted);font-family:JetBrains Mono,monospace}.batch-card .batch-delete{position:absolute;top:8px;right:8px;background:#ef444433;color:var(--err);border:none;border-radius:4px;padding:4px 8px;font-size:11px;cursor:pointer;opacity:0;transition:all .2s ease}.batch-card:hover .batch-delete{opacity:1}.batch-card .batch-delete:hover{background:var(--err);color:#fff}.upload-zone{padding:32px;background:linear-gradient(135deg,#3b82f60d,#10b98108);border:2px dashed rgba(59,130,246,.3);border-radius:var(--radius-lg);text-align:center;transition:all .3s ease}.upload-zone:hover{border-color:var(--accent);background:linear-gradient(135deg,#3b82f61a,#10b9810d)}.upload-zone.dragging{border-color:var(--ok);background:linear-gradient(135deg,#10b9811a,#3b82f60d);transform:scale(1.01)}.status-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(135deg,#10b9811a,#10b9810d);border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-md);margin-top:12px}.status-bar.warning{background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border-color:#f59e0b33}.status-bar.error{background:linear-gradient(135deg,#ef44441a,#ef44440d);border-color:#ef444433}.progress-bar{width:100%;height:6px;background:var(--border);border-radius:999px;overflow:hidden}.progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--ok) 100%);border-radius:999px;transition:width .3s ease}.tabs{display:flex;gap:4px;padding:4px;background:var(--glass);border-radius:var(--radius-md);margin-bottom:16px}.tab{padding:10px 20px;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.tab:hover{background:var(--border);color:var(--text)}.tab.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px var(--accent-glow)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.animate-fade-in{animation:fadeIn .3s ease-out;position:relative;z-index:1}.animate-slide-in{animation:slideIn .3s ease-out}.settings-page{max-width:1200px;margin:0 auto;padding:20px}.tabs-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:16px}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tab{padding:12px 20px;border:none;background:#f8f9fa;color:#495057;border-radius:6px;cursor:pointer;font-size:15px;font-weight:600;transition:all .2s}.tab:hover{background:#e9ecef}.tab.active{background:#17a2b8;color:#fff;font-weight:700}.settings-section{animation:fadeIn .3s}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:10px;font-weight:600;color:#212529;font-size:15px}.form-hint{display:block;font-size:13px;color:#6c757d;font-weight:400;margin-top:6px;line-height:1.5}.form-group input[type=text],.form-group input[type=number],.form-group select{width:100%;padding:12px;border:2px solid #ced4da;border-radius:6px;font-size:15px;font-weight:500;transition:all .2s}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group select:focus{outline:none;border-color:#17a2b8;box-shadow:0 0 0 4px #17a2b826}.form-group input[type=range]{-webkit-appearance:none;width:100%;height:8px;border-radius:4px;background:#e9ecef;outline:none}.form-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:#17a2b8;cursor:pointer;box-shadow:0 2px 4px #0003}.form-group input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#17a2b8;cursor:pointer;border:none;box-shadow:0 2px 4px #0003}.form-group input[type=checkbox]{cursor:pointer;width:20px;height:20px}.batch-selector{background:#f8f9fa;padding:16px;border-radius:8px;margin-bottom:20px;border:2px solid #dee2e6}.batch-selector label{font-weight:600;font-size:15px;color:#212529;margin-bottom:8px;display:block}.batch-selector select{width:100%;padding:12px;font-size:15px;font-weight:500;border:2px solid #ced4da;border-radius:6px}.batch-config-hint{font-size:13px;color:#6c757d;margin-top:8px;padding:8px 12px;background:#fff3cd;border-left:3px solid #ffc107;border-radius:4px}.markdown-preview{line-height:1.8!important;color:#000!important;background:#fff!important;padding:24px!important;font-family:inherit!important;font-size:inherit!important}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4{color:#1a1a1a;margin-top:24px;margin-bottom:12px;font-weight:600}.markdown-preview h1{font-size:1.8em;border-bottom:1px solid #e5e5e5;padding-bottom:8px}.markdown-preview h2{font-size:1.5em;border-bottom:1px solid #eeeeee;padding-bottom:6px}.markdown-preview h3{font-size:1.3em}.markdown-preview h4{font-size:1.1em}.markdown-preview p{margin:12px 0;line-height:1.8;color:#1a1a1a}.markdown-preview ul,.markdown-preview ol{margin:12px 0;padding-left:24px}.markdown-preview li{margin:6px 0;line-height:1.6;color:#1a1a1a}.markdown-preview table{width:100%!important;border-collapse:collapse!important;margin:16px 0!important;background:#fff!important;border:1px solid #e0e0e0!important}.markdown-preview th,.markdown-preview td{padding:10px 14px!important;border:1px solid #e0e0e0!important;text-align:left!important;background:#fff!important;color:#000!important}.markdown-preview th{background:#fff!important;color:#000!important;font-weight:600!important}.markdown-preview tr:nth-child(2n){background:#fff!important}.markdown-preview code{background:#f5f5f5!important;padding:2px 6px!important;border-radius:4px!important;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace!important;font-size:.9em!important;color:#333!important}.markdown-preview pre{background:#f8f8f8!important;padding:16px!important;border-radius:6px!important;border:1px solid #e0e0e0!important;overflow-x:auto!important;margin:16px 0!important}.markdown-preview pre code{background:none!important;padding:0!important;color:#333!important}.markdown-preview blockquote{border-left:3px solid #cccccc!important;padding-left:16px!important;margin:16px 0!important;color:#555!important;font-style:italic!important;background:transparent!important}.ql-editor{color:#1a1a1a!important;font-size:15px!important;line-height:1.8!important;background:#fff!important;padding:24px!important}.tox .tox-editor-header{border-bottom:1px solid #dee2e6!important}.tox .tox-menubar,.tox .tox-toolbar{background:#f8f9fa!important}.markdown-preview img{max-width:100%!important;height:auto!important;margin:16px auto!important;display:block!important;background:transparent!important}.markdown-preview a{color:#333!important;text-decoration:underline!important;text-decoration-color:#999!important}.markdown-preview a:hover{color:#1a1a1a!important;text-decoration-color:#1a1a1a!important}.notification-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;max-width:400px;pointer-events:none}.notification{pointer-events:auto;padding:16px 20px;border-radius:12px;backdrop-filter:blur(20px);box-shadow:0 8px 32px #0000004d,0 0 0 1px #ffffff1a;display:flex;align-items:flex-start;gap:12px;animation:slideIn .3s cubic-bezier(.16,1,.3,1);transition:all .3s ease;min-width:300px;max-width:400px}.notification:hover{transform:translateY(-2px);box-shadow:0 12px 40px #0006,0 0 0 1px #ffffff26}.notification.closing{animation:slideOut .3s cubic-bezier(.16,1,.3,1);opacity:0;transform:translate(100px)}@keyframes slideIn{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@keyframes slideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100px)}}.notification-icon{font-size:20px;flex-shrink:0;line-height:1}.notification-content{flex:1;min-width:0}.notification-message{font-size:14px;line-height:1.5;word-wrap:break-word}.notification-close{background:none;border:none;color:inherit;cursor:pointer;padding:4px;opacity:.6;transition:opacity .2s ease;flex-shrink:0;font-size:18px;line-height:1}.notification-close:hover{opacity:1}.notification.success{background:linear-gradient(135deg,#10b98126,#10b9810d);border:1px solid rgba(16,185,129,.3);color:#10b981}.notification.error{background:linear-gradient(135deg,#ef444426,#ef44440d);border:1px solid rgba(239,68,68,.3);color:#ef4444}.notification.warning{background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);border:1px solid rgba(245,158,11,.3);color:#f59e0b}.notification.info{background:linear-gradient(135deg,#3b82f626,#3b82f60d);border:1px solid rgba(59,130,246,.3);color:#3b82f6}.notification.loading{background:linear-gradient(135deg,#6b728026,#6b72800d);border:1px solid rgba(107,114,128,.3);color:#6b7280}.notification.loading .notification-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.scoring-page{max-width:1200px;margin:0 auto}.scoring-page .spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}.login-split-container{min-height:100vh;display:flex;background:#080c15}.login-left-panel{flex:1;position:relative;overflow:hidden}.login-left-image{width:100%;height:100%;object-fit:cover}.customer-service-info{position:absolute;bottom:40px;left:50%;transform:translate(-50%);background:#0003;backdrop-filter:blur(12px);border:none;border-radius:16px;padding:24px 32px;text-align:center;min-width:280px}.cs-title{font-size:18px;font-weight:600;color:#000;margin-bottom:16px}.cs-item{display:flex;align-items:center;justify-content:center;gap:8px;color:#000;font-size:14px;margin-bottom:8px}.cs-qrcode{width:120px;height:120px;border-radius:8px;margin-top:12px;border:2px solid rgba(100,150,255,.3)}.login-right-panel{width:480px;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0c1929,#1a1f35,#0d1b2a)}.login-right-panel .particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.login-card-split{position:relative;z-index:10;width:100%;max-width:380px;margin:20px;padding:40px 36px;background:#0c111ce6;backdrop-filter:blur(20px);border:1px solid rgba(100,150,255,.15);border-radius:16px;box-shadow:0 0 60px #6496ff14,0 25px 50px #00000080}@media (max-width: 900px){.login-split-container{flex-direction:column}.login-left-panel{height:200px;flex:none}.login-right-panel{width:100%;min-height:calc(100vh - 200px)}.customer-service-info{bottom:20px;padding:16px 24px;min-width:auto}.cs-qrcode{width:80px;height:80px}}.preview-edit-panel{position:relative;background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.preview-edit-panel:hover{box-shadow:0 4px 20px #0000001f}.preview-edit-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:linear-gradient(135deg,#f8f9fa,#fff);border-bottom:2px solid #e9ecef;gap:12px;flex-wrap:wrap}.preview-edit-toolbar .btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;font-size:14px;font-weight:500;border:none;border-radius:8px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.preview-edit-toolbar .btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.preview-edit-toolbar .btn:hover:before{width:300px;height:300px}.preview-edit-toolbar .btn.primary{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;box-shadow:0 2px 8px #007bff4d}.preview-edit-toolbar .btn.primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #007bff66}.preview-edit-toolbar .btn.primary:active{transform:translateY(0)}.preview-edit-toolbar .btn.secondary{background:#fff;color:#495057;border:2px solid #e9ecef}.preview-edit-toolbar .btn.secondary:hover{background:#f8f9fa;border-color:#dee2e6;transform:translateY(-1px)}.preview-edit-toolbar .btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.preview-edit-panel .content-area{position:relative;min-height:400px;max-height:600px;overflow-y:auto;background:#fff}.preview-mode{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.preview-edit-panel .markdown-preview,.preview-edit-panel .html-preview{padding:32px;background:#fff;border-radius:0;min-height:400px;line-height:1.8;font-size:16px;color:#212529}.preview-edit-panel .markdown-preview h1{font-size:2.5em;font-weight:700;margin:32px 0 16px;padding-bottom:12px;border-bottom:3px solid #007bff;color:#212529}.preview-edit-panel .markdown-preview h2{font-size:2em;font-weight:600;margin:28px 0 14px;padding-bottom:10px;border-bottom:2px solid #e9ecef;color:#343a40}.preview-edit-panel .markdown-preview h3{font-size:1.5em;font-weight:600;margin:24px 0 12px;color:#495057}.preview-edit-panel .markdown-preview p{margin:16px 0;line-height:1.8}.preview-edit-panel .markdown-preview code{background:#f1f3f5;padding:2px 6px;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em;color:#e83e8c}.preview-edit-panel .markdown-preview pre{background:#1e1e1e;color:#d4d4d4;padding:20px;border-radius:8px;overflow-x:auto;margin:20px 0;box-shadow:0 2px 8px #0000001a}.preview-edit-panel .markdown-preview pre code{background:transparent;color:inherit;padding:0}.preview-edit-panel .markdown-preview blockquote{border-left:4px solid #007bff;margin:20px 0;color:#6c757d;font-style:italic;background:#f8f9fa;padding:16px 20px;border-radius:4px}.preview-edit-panel .markdown-preview table{width:100%!important;border-collapse:collapse!important;margin:24px 0!important;border:1px solid #e0e0e0!important;background:#fff!important}.preview-edit-panel .markdown-preview table th{background:#fff!important;color:#000!important;padding:10px 14px!important;text-align:left!important;font-weight:600!important;border-bottom:1px solid #e0e0e0!important;border-right:1px solid #e0e0e0!important}.preview-edit-panel .markdown-preview table td{padding:10px 14px!important;border-bottom:1px solid #e0e0e0!important;border-right:1px solid #e0e0e0!important;color:#000!important;background:#fff!important}.preview-edit-panel .markdown-preview table tr:hover{background:#fff!important}.preview-edit-panel .markdown-preview img{max-width:100%;height:auto;margin:20px 0}.preview-edit-panel .json-preview{background:#1e1e1e;color:#d4d4d4;padding:24px;border-radius:8px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;overflow-x:auto;box-shadow:0 2px 8px #0000001a}.edit-mode{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.tinymce-editor-wrapper{border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #00000014;transition:box-shadow .3s ease}.tinymce-editor-wrapper:focus-within{box-shadow:0 4px 16px #007bff33}.textarea-editor{width:100%;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.8;padding:20px;border:2px solid #e9ecef;border-radius:8px;background:#fff;color:#212529;transition:all .3s ease;resize:vertical;box-shadow:0 2px 4px #0000000d}.textarea-editor:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;background:#fafbfc}.unsaved-changes-notice{margin-top:12px;padding:12px 16px;background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:2px solid #ffc107;border-radius:8px;font-size:14px;color:#856404;display:flex;align-items:center;gap:8px;animation:slideDown .3s ease-out;box-shadow:0 2px 8px #ffc10733}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.unsaved-changes-notice:before{content:"⚠️";font-size:18px}.loading-overlay{position:absolute;inset:0;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:1000;backdrop-filter:blur(4px);animation:fadeIn .3s ease-in-out}.loading-spinner{width:48px;height:48px;border:4px solid #e9ecef;border-top-color:#007bff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:#6c757d;font-size:14px;font-weight:500}.save-success-toast{position:fixed;top:20px;right:20px;background:linear-gradient(135deg,#28a745,#20c997);color:#fff;padding:16px 24px;border-radius:8px;box-shadow:0 4px 16px #28a7454d;display:flex;align-items:center;gap:12px;z-index:10000;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.preview-edit-panel{border-radius:8px}.preview-edit-toolbar{padding:12px 16px;flex-direction:column;align-items:stretch}.preview-edit-toolbar .btn{width:100%;justify-content:center}.preview-edit-panel .markdown-preview,.preview-edit-panel .html-preview{padding:20px;font-size:14px}.preview-edit-panel .markdown-preview h1{font-size:1.8em}.preview-edit-panel .markdown-preview h2{font-size:1.5em}.preview-edit-panel .markdown-preview h3{font-size:1.2em}.textarea-editor{font-size:13px;padding:16px}}@media (prefers-color-scheme: dark){.preview-edit-panel{background:#1e1e1e;color:#d4d4d4}.preview-edit-toolbar{background:linear-gradient(135deg,#2d2d2d,#1e1e1e);border-bottom-color:#404040}.preview-edit-panel .markdown-preview{background:#fff;color:#000}.preview-edit-panel .markdown-preview table{background:#fff!important;border-color:#e0e0e0!important}.preview-edit-panel .markdown-preview table th,.preview-edit-panel .markdown-preview table td{background:#fff!important;color:#000!important;border-color:#e0e0e0!important}.word-preview{background:#fff!important;color:#000!important}.word-preview p,.word-preview div,.word-preview span,.word-preview h1,.word-preview h2,.word-preview h3,.word-preview h4,.word-preview h5,.word-preview h6,.word-preview li,.word-preview td,.word-preview th{color:#000!important}.word-preview-container{display:flex;flex-direction:column;align-items:center;width:100%;height:100%}.word-preview-controls{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--glass);border-radius:6px;margin-bottom:12px;font-size:12px}.word-preview-controls button{width:28px;height:28px;border:1px solid var(--border);border-radius:4px;background:var(--bg-secondary);color:var(--text);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:background .2s}.word-preview-controls button:hover{background:var(--border)}.word-preview-controls button:disabled{opacity:.5;cursor:not-allowed}.word-preview-controls .zoom-level{min-width:45px;text-align:center;font-weight:500;color:var(--text)}.word-preview-wrapper{flex:1;overflow:auto;display:flex;justify-content:center;padding:10px;width:100%}.word-preview-wrapper #word-preview{transform-origin:top center;transition:transform .2s ease}.textarea-editor{background:#2d2d2d;color:#d4d4d4;border-color:#404040}}.word-preview{font-family:SimSun,宋体,serif;font-size:14pt;line-height:1.5;padding:40px;background:#fff;color:#000;box-shadow:0 0 10px #0000001a;min-height:800px;max-width:100%;margin:0 auto;border-radius:8px}.word-preview p,.word-preview div,.word-preview span,.word-preview h1,.word-preview h2,.word-preview h3,.word-preview h4,.word-preview h5,.word-preview h6,.word-preview li,.word-preview td,.word-preview th{color:#000}#word-preview table{border-collapse:collapse!important;width:100%!important;margin:16px 0!important;background:#fff!important}#word-preview table *{background:#fff!important;color:#000!important}#word-preview table tr,#word-preview tbody tr,#word-preview thead tr,#word-preview tfoot tr{background:#fff!important}#word-preview table td,#word-preview table th{border:1px solid #ddd!important;padding:8px!important;background:#fff!important;color:#000!important}#word-preview table td[style],#word-preview table th[style],#word-preview table tr[style]{background-color:#fff!important;background:#fff!important}#word-preview img{max-width:100%!important;height:auto!important}#word-preview table tr:nth-child(odd),#word-preview table tr:nth-child(2n){background:#fff!important}.word-preview table{border-collapse:collapse;width:100%;margin:16px 0;background:#fff!important}.word-preview table *{background:#fff!important;color:#000!important}.word-preview table tr{background:#fff!important}.word-preview table td,.word-preview table th{border:1px solid #ddd!important;padding:8px;background:#fff!important;color:#000!important}.word-preview img{max-width:100%;height:auto}.word-preview table tr:nth-child(odd),.word-preview table tr:nth-child(2n){background:#fff!important}#word-preview *,#word-preview td,#word-preview th{background:#fff!important}@media print{.preview-edit-toolbar{display:none}.preview-edit-panel{box-shadow:none;border:none}.preview-edit-panel .markdown-preview{padding:0}}
