:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Outfit", var(--font-sans);--bg-canvas: #020617;--bg-card: rgba(15, 23, 42, .55);--bg-card-hover: rgba(30, 41, 59, .7);--bg-secondary: #0f172a;--border-color: rgba(51, 65, 85, .4);--border-focus: #06b6d4;--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #64748b;--text-accent: #06b6d4;--color-primary: #06b6d4;--color-primary-hover: #0891b2;--color-primary-translucent: rgba(6, 182, 212, .1);--color-primary-translucent-heavy: rgba(6, 182, 212, .25);--color-secondary: #10b981;--bg-header: rgba(2, 6, 23, .85);--bg-footer: rgba(15, 23, 42, .95);--color-compliant: #10b981;--color-compliant-bg: rgba(16, 185, 129, .06);--color-compliant-border: rgba(16, 185, 129, .2);--color-non-compliant: #ef4444;--color-non-compliant-bg: rgba(239, 68, 68, .06);--color-non-compliant-border: rgba(239, 68, 68, .2);--color-na: #64748b;--color-na-bg: rgba(100, 116, 139, .06);--color-na-border: rgba(100, 116, 139, .2);--color-warning: #f59e0b;--color-warning-bg: rgba(245, 158, 11, .06);--transition-spring: all .35s cubic-bezier(.34, 1.56, .64, 1);--transition-smooth: all .2s ease;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .2), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-glow: 0 0 20px rgba(6, 182, 212, .15);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 9999px}body.light-theme{--bg-canvas: #f8fafc;--bg-card: #ffffff;--bg-card-hover: #f1f5f9;--bg-secondary: #f1f5f9;--border-color: #e2e8f0;--border-focus: #0891b2;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-accent: #0891b2;--color-primary: #0891b2;--color-primary-hover: #0e7490;--color-primary-translucent: rgba(8, 145, 178, .08);--color-primary-translucent-heavy: rgba(8, 145, 178, .18);--color-secondary: #059669;--bg-header: rgba(248, 250, 252, .9);--bg-footer: rgba(248, 250, 252, .95);--color-compliant: #059669;--color-compliant-bg: rgba(5, 150, 105, .06);--color-compliant-border: rgba(5, 150, 105, .2);--color-non-compliant: #dc2626;--color-non-compliant-bg: rgba(220, 38, 38, .05);--color-non-compliant-border: rgba(220, 38, 38, .15);--color-na: #64748b;--color-na-bg: rgba(100, 116, 139, .05);--color-na-border: rgba(100, 116, 139, .15);--color-warning: #d97706;--color-warning-bg: rgba(217, 119, 6, .06);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .06), 0 2px 4px -1px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -2px rgba(0, 0, 0, .03);--shadow-glow: 0 0 20px rgba(8, 145, 178, .1)}body.light-theme .glass-card{backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a}body.light-theme .glass-card:hover{box-shadow:0 4px 12px #00000014}body.light-theme .skeleton{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%}body.light-theme .modal-overlay{background-color:#0f172a66}body.light-theme .sidebar-btn-hover:hover{background-color:#0000000a!important}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-sans);background-color:var(--bg-canvas);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em}button,input,textarea,select{font-family:inherit;color:inherit}.app-container{width:100%;max-width:600px;margin:0 auto;min-height:100vh;padding:16px 16px 40px;display:flex;flex-direction:column;position:relative}@media (min-width: 768px){.app-container{max-width:720px;padding:24px 24px 40px}}@media (min-width: 1024px){.app-container{max-width:960px}}@media (min-width: 1280px){.app-container{max-width:1200px}}@media (min-width: 1536px){.app-container{max-width:1440px}}.glass-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:24px;transition:var(--transition-smooth);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.glass-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-focus)}.app-header{position:sticky;top:0;z-index:100;background-color:var(--bg-header);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);padding:16px;margin:-16px -16px 24px}@media (min-width: 768px){.app-header{margin:-24px -24px 32px;padding:20px 24px}}.header-content{width:100%;max-width:100%;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-display);font-weight:800;font-size:1.25rem;letter-spacing:-.03em;display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--text-accent),var(--color-primary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.logo span{font-weight:400;color:var(--text-secondary);-webkit-text-fill-color:var(--text-secondary)}.segmented-control{display:flex;background-color:var(--bg-secondary);border-radius:var(--radius-md);padding:4px;border:1px solid var(--border-color);width:100%;position:relative}.segment-btn{flex:1;background:none;border:none;outline:none;padding:10px 4px;font-size:.875rem;font-weight:600;border-radius:calc(var(--radius-md) - 3px);cursor:pointer;z-index:2;transition:var(--transition-spring);display:flex;align-items:center;justify-content:center;gap:6px;color:var(--text-secondary)}.segment-btn:active{transform:scale(.97)}.segment-btn.active-yes{background-color:var(--color-compliant);color:#fff;box-shadow:0 4px 10px #10b9814d}.segment-btn.active-no{background-color:var(--color-non-compliant);color:#fff;box-shadow:0 4px 10px #ef44444d}.segment-btn.active-na{background-color:var(--color-na);color:#fff;box-shadow:0 4px 10px #71717a4d}.question-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;margin-bottom:16px;transition:var(--transition-spring);position:relative;overflow:hidden}.question-card.status-yes{border-color:var(--color-compliant-border);background-color:#10b98105}.question-card.status-no{border-color:var(--color-non-compliant-border);background-color:#ef444405}.question-card.status-na{border-color:var(--color-na-border);background-color:#71717a05}.question-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.question-number{font-family:var(--font-display);font-size:.8rem;font-weight:700;color:var(--text-accent);background-color:#60a5fa1a;padding:2px 8px;border-radius:var(--radius-full);margin-bottom:6px;display:inline-block}.question-text{font-size:.95rem;font-weight:500;color:var(--text-primary);line-height:1.5}.regulatory-ref{font-size:.75rem;color:var(--text-muted);margin-top:6px;display:flex;align-items:center;gap:4px}.no-details-panel{max-height:0;overflow:hidden;opacity:0;transform:translateY(-8px);transition:max-height .4s cubic-bezier(.34,1.56,.64,1),opacity .25s ease-out,transform .3s cubic-bezier(.34,1.56,.64,1);margin-top:0;border-top:0 solid var(--border-color);padding-top:0}.question-card.status-no .no-details-panel{max-height:1000px;opacity:1;transform:translateY(0);margin-top:16px;border-top:1px solid var(--border-color);padding-top:16px}.label-required{font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-bottom:6px;display:block}.label-required:after{content:" *";color:var(--color-non-compliant)}.textarea-custom{width:100%;background-color:var(--bg-canvas);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px;font-size:.9rem;resize:vertical;min-height:80px;transition:var(--transition-smooth)}.textarea-custom:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #22c55e33}.input-custom,.input-field{width:100%;background-color:var(--bg-canvas);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px;font-size:.9rem;color:var(--text-primary);transition:var(--transition-smooth);box-sizing:border-box}.input-custom:focus,.input-field:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #22c55e33}.upload-btn-container{display:flex;align-items:center;gap:12px;margin-top:12px}.file-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.upload-trigger-btn{display:flex;align-items:center;justify-content:center;gap:8px;background-color:var(--bg-secondary);border:1px dashed var(--border-focus);color:var(--text-secondary);padding:10px 16px;border-radius:var(--radius-md);cursor:pointer;font-size:.85rem;font-weight:500;transition:var(--transition-smooth);flex:1}.upload-trigger-btn:hover{background-color:var(--bg-card-hover);border-color:var(--text-muted);color:var(--text-primary)}.upload-trigger-btn.has-file{border-style:solid;border-color:var(--color-compliant);background-color:var(--color-compliant-bg);color:var(--color-compliant)}.preview-thumbnail{width:44px;height:44px;border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--border-color)}.score-footer{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;margin-top:24px;margin-bottom:24px;box-shadow:var(--shadow-sm)}.score-footer-content{max-width:600px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px}@media (min-width: 768px){.score-footer-content{max-width:768px}}.score-stats{display:flex;flex-direction:column}.score-label{font-size:.75rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.score-value-container{display:flex;align-items:baseline;gap:4px}.score-value{font-family:var(--font-display);font-size:2rem;font-weight:800;line-height:1}.score-percent{font-size:1rem;font-weight:600;color:var(--text-secondary)}.score-fraction{font-size:.8rem;color:var(--text-muted);margin-top:2px}.category-tabs-container{display:flex;overflow-x:auto;gap:8px;margin-bottom:20px;padding-bottom:4px;scrollbar-width:none}.category-tabs-container::-webkit-scrollbar{display:none}.category-tab{white-space:nowrap;background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);padding:8px 16px;border-radius:var(--radius-full);font-size:.85rem;font-weight:500;cursor:pointer;transition:var(--transition-smooth)}.category-tab:hover{border-color:var(--border-focus);color:var(--text-primary)}.category-tab.active{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-glow)}.select-custom{width:100%;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:10px 40px 10px 12px;font-size:.95rem;font-weight:500;outline:none;cursor:pointer;transition:var(--transition-smooth);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23a1a1aa'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;box-sizing:border-box;line-height:1.5}.select-custom:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #22c55e33}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--text-accent));color:#fff;border:none;border-radius:var(--radius-md);padding:12px 24px;font-weight:600;font-size:.95rem;cursor:pointer;transition:var(--transition-spring);display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #22c55e40}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-muted);cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px 24px;font-weight:600;font-size:.95rem;cursor:pointer;transition:var(--transition-smooth);display:flex;align-items:center;justify-content:center;gap:8px}.btn-secondary:hover{background-color:var(--bg-card-hover);border-color:var(--border-focus)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#09090bcc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:200;padding:16px}.modal-content{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:500px;padding:24px;box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto;position:relative}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,#18181b 25%,#27272a,#18181b 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}.nav-pill-group{display:flex;background-color:var(--bg-secondary);border-radius:var(--radius-full);padding:2px;border:1px solid var(--border-color)}.nav-pill-btn{background:none;border:none;outline:none;padding:6px 14px;font-size:.78rem;font-weight:600;border-radius:var(--radius-full);cursor:pointer;transition:var(--transition-smooth);color:var(--text-secondary)}.nav-pill-btn.active{background-color:var(--border-focus);color:var(--text-primary)}.user-profile{display:flex;align-items:center;gap:8px;font-size:.85rem}.user-avatar{width:28px;height:28px;border-radius:var(--radius-full);background-color:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;border:1px solid var(--border-color)}.auth-tab-group{display:flex;background-color:var(--bg-secondary);border-radius:var(--radius-md);padding:4px;border:1px solid var(--border-color);margin-bottom:24px;width:100%}.auth-tab-btn{flex:1;background:none;border:none;outline:none;padding:8px 4px;font-size:.85rem;font-weight:600;border-radius:calc(var(--radius-md) - 3px);cursor:pointer;transition:var(--transition-smooth);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;gap:6px}.auth-tab-btn.active{background-color:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.input-icon-container{position:relative;margin-bottom:16px;text-align:left}.input-icon-container label{display:block;font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.input-wrapper{position:relative}.input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;transition:var(--transition-smooth)}.input-field{width:100%;background-color:var(--bg-canvas);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px 14px 12px 42px;font-size:.9rem;color:var(--text-primary);transition:var(--transition-smooth)}.input-field:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #22c55e26}.input-field:focus+.input-icon{color:var(--color-primary)}.auth-helper-text{font-size:.75rem;margin-top:4px;display:flex;align-items:center;gap:4px}.auth-helper-text.success{color:var(--color-compliant)}.auth-helper-text.error{color:var(--color-non-compliant)}.auth-helper-text.muted{color:var(--text-muted)}.divider-container{display:flex;align-items:center;margin:20px 0;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.divider-line{flex:1;height:1px;background-color:var(--border-color)}.divider-text{padding:0 10px}.auth-toggle-link{font-size:.85rem;color:var(--color-primary);background:none;border:none;cursor:pointer;font-weight:500;text-decoration:none;transition:var(--transition-smooth);margin-top:16px;display:inline-block}.auth-toggle-link:hover{color:var(--color-primary-hover);text-decoration:underline}.switch-container{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.switch-input{display:none!important}.switch-track{width:44px;height:24px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-full);position:relative;transition:var(--transition-smooth)}.switch-thumb{width:18px;height:18px;background-color:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:transform .2s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.switch-input:checked+.switch-track{background-color:var(--color-primary);border-color:var(--color-primary)}.switch-input:checked+.switch-track .switch-thumb{transform:translate(20px)}#eoc-print-container{display:none}@media print{html,body{background-color:#fff!important;color:#000!important;font-size:11pt!important;font-family:Segoe UI,Arial,sans-serif!important;margin:0!important;padding:0!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body *{visibility:hidden}#eoc-print-container,#eoc-print-container *{visibility:visible}#eoc-print-container{display:block!important;position:absolute;left:0;top:0;width:100%;padding:20px;box-sizing:border-box}.print-page-break{page-break-inside:avoid!important;break-inside:avoid!important}.print-section{margin-bottom:24px;page-break-inside:avoid;break-inside:avoid}}.print-preview-card{border:1px solid var(--border-color);background-color:var(--bg-card);border-radius:var(--radius-lg);padding:24px;margin-top:24px}.print-report-header{border-bottom:2px solid #2e2e33;padding-bottom:16px;margin-bottom:20px}.light-theme .print-report-header{border-bottom-color:#cbd5e1}.print-report-title{font-size:1.6rem;font-weight:800;color:var(--text-primary);margin-bottom:4px}.print-report-subtitle{color:var(--text-secondary);font-size:.95rem}.print-metadata-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px;background-color:var(--bg-canvas);border:1px solid var(--border-color);padding:16px;border-radius:var(--radius-md)}.print-metadata-item{display:flex;flex-direction:column}.print-metadata-label{font-size:.75rem;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;margin-bottom:2px}.print-metadata-value{font-weight:600;color:var(--text-primary)}.print-score-badge{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:var(--radius-full);font-weight:800;font-size:1.25rem;margin-top:8px}.print-category-header{font-size:1.1rem;font-weight:700;text-transform:uppercase;color:var(--text-primary);background-color:var(--bg-secondary);padding:8px 16px;border-radius:var(--radius-sm);margin:24px 0 12px;letter-spacing:.03em;border-left:4px solid var(--color-primary)}.print-finding-row{border-bottom:1px solid var(--border-color);padding:14px 0}.print-finding-row:last-child{border-bottom:none}.print-finding-qtext{font-weight:600;font-size:.95rem;color:var(--text-primary);margin-bottom:6px;line-height:1.4}.print-finding-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.print-reg-ref{font-size:.8rem;color:var(--text-accent);font-weight:500}.print-status-badge{font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.03em}.print-status-yes{background-color:var(--color-compliant-bg);color:var(--color-compliant);border:1px solid var(--color-compliant-border)}.print-status-no{background-color:var(--color-non-compliant-bg);color:var(--color-non-compliant);border:1px solid var(--color-non-compliant-border)}.print-status-na{background-color:var(--color-na-bg);color:var(--color-na);border:1px solid var(--color-na-border)}.print-non-compliant-box{background-color:var(--color-non-compliant-bg);border:1px dashed var(--color-non-compliant-border);border-radius:var(--radius-md);padding:12px 16px;margin-top:10px;display:flex;flex-direction:column;gap:12px}.print-non-compliant-desc{font-size:.875rem;color:var(--text-primary);line-height:1.5}.print-evidence-photo{max-width:240px;max-height:160px;border-radius:var(--radius-md);object-fit:cover;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);transition:transform .2s ease}.print-evidence-photo:hover{transform:scale(1.05)}@media print{.print-preview-card{border:none!important;padding:0!important;margin:0!important}.print-report-header{border-bottom:2px solid #000000!important}.print-metadata-grid{grid-template-columns:repeat(2,1fr)!important;background-color:#f8fafc!important;border:1px solid #cbd5e1!important;color:#000!important}.print-metadata-value{color:#000!important}.print-score-badge{border:2px solid #000000!important;color:#000!important;background-color:#f1f5f9!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.print-category-header{color:#000!important;background-color:#e2e8f0!important;border-left:5px solid #000000!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.print-finding-row{border-bottom:1px solid #cbd5e1!important}.print-finding-qtext{color:#000!important}.print-reg-ref{color:#475569!important}.print-status-badge{border:1px solid #000000!important;color:#000!important;background-color:transparent!important}.print-non-compliant-box{background-color:#fef2f2!important;border:1px solid #f87171!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.print-non-compliant-desc{color:#000!important}.print-evidence-photo{max-width:240px!important;max-height:160px!important;border:1px solid #94a3b8!important}}@keyframes pulseGlowSerious{0%,to{box-shadow:0 0 #f59e0b26;border-color:#f59e0b40}50%{box-shadow:0 0 8px 1px #f59e0b73;border-color:#f59e0bb3}}@keyframes pulseGlowCritical{0%,to{box-shadow:0 0 #ef444433;border-color:#ef44444d}50%{box-shadow:0 0 10px 2px #ef44448c;border-color:#ef4444cc}}@keyframes flashDot{0%,to{opacity:.3}50%{opacity:1}}.flashing-badge-serious{animation:pulseGlowSerious 2s infinite ease-in-out}.flashing-badge-critical{animation:pulseGlowCritical 1.5s infinite ease-in-out}.flashing-dot{animation:flashDot 1.2s infinite ease-in-out}@keyframes aiPulseScan{0%{transform:translateY(-100%);opacity:.1}50%{opacity:.8}to{transform:translateY(100%);opacity:.1}}@keyframes aiGlowCircle{0%,to{transform:scale(.96);box-shadow:0 0 15px 2px #16653426}50%{transform:scale(1.04);box-shadow:0 0 25px 8px #16653459}}.ai-glowing-container{position:relative;background:linear-gradient(135deg,#16653408,#15803d08);border:1px solid rgba(22,101,52,.15);box-shadow:0 4px 20px -2px #1665340d}.ai-glowing-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;background:radial-gradient(circle at 50% 0%,rgba(22,101,52,.08),transparent 70%);pointer-events:none}.ai-scan-bar{position:absolute;left:0;right:0;top:0;bottom:0;border-radius:inherit;overflow:hidden}.ai-scan-bar:after{content:"";position:absolute;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,rgba(22,101,52,.6),rgba(21,128,61,.6),rgba(22,101,52,.6),transparent);box-shadow:0 0 12px 3px #16653466;animation:aiPulseScan 3s infinite linear}.ai-glowing-circle{width:48px;height:48px;border-radius:50%;background:radial-gradient(circle,#16653433,#15803d1a);border:1px solid rgba(22,101,52,.3);display:flex;align-items:center;justify-content:center;animation:aiGlowCircle 2s infinite ease-in-out}.ai-premium-memo{background-color:#1c1916f2;border:1px solid rgba(22,101,52,.2);border-radius:var(--radius-md);box-shadow:inset 0 1px 1px #ffffff0d}.light-theme .ai-premium-memo{background-color:#fff;border:1px solid var(--border-color);box-shadow:var(--shadow-md)}.payment-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}@media (max-width: 1024px){.payment-grid{grid-template-columns:1fr}}.credit-card-preview{position:relative;width:100%;max-width:380px;height:220px;border-radius:var(--radius-lg);padding:24px;background:linear-gradient(135deg,#166534e6,#15803de6);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.15);box-shadow:0 15px 35px #00000059,inset 0 1px 2px #fff3;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;margin:0 auto 24px;transition:transform .3s ease,box-shadow .3s ease}.credit-card-preview:hover{transform:translateY(-4px);box-shadow:0 20px 40px #16653440}.credit-card-glow{position:absolute;top:-50px;right:-50px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);pointer-events:none}.credit-card-chip{width:48px;height:36px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#eab308,#ca8a04);position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.15);box-shadow:inset 0 1px 2px #fff6}.credit-card-chip:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:aiPulseScan 2s infinite linear}.credit-card-number{font-family:Courier New,Courier,monospace;font-size:1.45rem;letter-spacing:.15em;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3);margin:16px 0;word-spacing:.1em}.credit-card-meta{display:flex;justify-content:space-between;align-items:flex-end;color:#fff}.credit-card-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:#fff9;margin-bottom:2px}.credit-card-value{font-size:.9rem;font-weight:600;letter-spacing:.05em;text-shadow:0 1px 2px rgba(0,0,0,.2);text-transform:uppercase;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invoice-table{width:100%;border-collapse:collapse;margin-top:12px}.invoice-table th{text-align:left;padding:12px 16px;font-size:.8rem;font-weight:700;color:var(--text-secondary);border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.05em}.invoice-table td{padding:16px;font-size:.88rem;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.invoice-table tr:hover{background-color:var(--bg-card-hover)}.invoice-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:var(--radius-full);text-transform:uppercase}.invoice-badge-paid{background-color:var(--color-compliant-bg);color:var(--color-compliant);border:1px solid var(--color-compliant-border)}.invoice-badge-pending{background-color:var(--color-warning-bg);color:var(--color-warning);border:1px solid rgba(245,158,11,.2)}#eoc-invoice-print-container{display:none}@media print{body *{visibility:hidden}#eoc-print-container,#eoc-print-container *,#eoc-invoice-print-container,#eoc-invoice-print-container *{visibility:visible}#eoc-invoice-print-container{display:block!important;position:absolute;left:0;top:0;width:100%;padding:20px;box-sizing:border-box}}@keyframes pulseLogo{0%,to{opacity:.65;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}
