@import "https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600&family=Poppins:wght@500;600;700&display=swap";
@import "https://fonts.googleapis.com/css2?family=Baloo+2:wght@600;700&display=swap";
:root{--primary-blue:#4f46e5;--primary-color:var(--primary-blue);--primary-purple:#7c3aed;--primary-gradient:linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);--growth-green:#10b981;--energetic-orange:#f59e0b;--error-rose:#f43f5e;--stream-science:#2563eb;--stream-commerce:#0d9488;--stream-arts:#d97706;--stream-science-text:#1d4ed8;--stream-commerce-text:#0f766e;--stream-arts-text:#b45309;--on-primary:#fff;--dark-text:#0f172a;--light-text:#64748b;--white:#fff;--light-gray:#f8fafc;--border-color:#e2e8f0;--bg-primary:var(--white);--bg-secondary:var(--light-gray);--text-primary:var(--dark-text);--text-secondary:var(--light-text);--surface:var(--white);--border:var(--border-color);--card-shadow:0 4px 20px -2px #0f172a0a, 0 2px 6px -1px #0f172a05;--card-shadow-hover:0 20px 25px -5px #0f172a14, 0 10px 10px -5px #0f172a08;--glass-bg:#ffffffb3;--glass-border:#fff9;--radius-lg:16px;--radius-md:10px;--radius-sm:6px;--radius-xl:26px;--font-heading:"Poppins", sans-serif;--font-body:"Open Sans", sans-serif}[data-theme=dark]{--bg-primary:#0f172a;--bg-secondary:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--surface:#1e293b;--border:#334155;--border-color:#334155;--dark-text:#f1f5f9;--light-text:#94a3b8;--white:#1e293b;--light-gray:#0f172a;--glass-bg:#1e293bd9;--glass-border:#47556980;--stream-science:#60a5fa;--stream-commerce:#2dd4bf;--stream-arts:#fbbf24;--stream-science-text:#93c5fd;--stream-commerce-text:#5eead4;--stream-arts-text:#fcd34d;--card-shadow:0 4px 20px -2px #0000004d, 0 2px 6px -1px #0003;--card-shadow-hover:0 20px 25px -5px #0006, 0 10px 10px -5px #00000040}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--text-primary);background-color:var(--bg-secondary);line-height:1.6;transition:background-color .3s,color .3s;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-primary);line-height:1.2}a{color:inherit;text-decoration:none;transition:color .3s}ul{list-style:none}button{cursor:pointer;font-family:var(--font-heading);border:none;outline:none}:focus-visible{outline:3px solid var(--primary-color);outline-offset:2px;border-radius:var(--radius-sm)}.focus-ring-light :focus-visible,.contact-cta-section :focus-visible{outline-color:#fff}[tabindex="-1"]:focus-visible{outline:none}label{color:var(--text-primary);transition:color .3s}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=search],select,textarea{background-color:var(--surface);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-body);padding:10px 14px;font-size:.95rem;transition:background-color .3s,color .3s,border-color .3s}input:focus,select:focus,textarea:focus{border-color:var(--primary-blue);outline:none}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--primary-color);outline-offset:1px}select option{background-color:var(--surface);color:var(--text-primary)}input::placeholder,textarea::placeholder{color:var(--text-secondary);opacity:.7}input:disabled,select:disabled,textarea:disabled{background-color:var(--bg-secondary);color:var(--text-secondary);cursor:not-allowed;opacity:.7}@media (prefers-reduced-motion:no-preference){html[data-js] .reveal{opacity:0;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0s);transform:translateY(22px)}html[data-js] .reveal.is-revealed{opacity:1;transform:none}}.container{max-width:1200px;margin:0 auto;padding:0 20px}.btn{border-radius:var(--radius-md);text-align:center;justify-content:center;align-items:center;padding:12px 24px;font-weight:600;transition:transform .22s cubic-bezier(.34,1.56,.64,1),background-color .25s,box-shadow .25s,color .25s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.btn:hover:not(:disabled){transform:translateY(-2px)scale(1.015)}.btn:active:not(:disabled){transition-duration:80ms;transform:translateY(0)scale(.975)}.btn-primary{background-color:var(--primary-blue);color:var(--on-primary)}.btn-primary:hover{background-color:#4338ca;box-shadow:0 10px 15px -3px #4f46e533,0 4px 6px -4px #4f46e533}.btn-cta{background-color:var(--energetic-orange);color:var(--on-primary)}.btn-cta:hover{background-color:#d97706;box-shadow:0 10px 15px -3px #f59e0b33,0 4px 6px -4px #f59e0b33}.btn-outline{border:2px solid var(--primary-blue);color:var(--primary-blue);background:0 0}.btn-outline:hover{background-color:color-mix(in srgb, var(--primary-blue) 8%, transparent)}.btn-lg{gap:10px;padding:15px 30px;font-size:1.03rem}.premium-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);transition:all .3s cubic-bezier(.4,0,.2,1)}.premium-card-hover:hover{box-shadow:var(--card-shadow-hover);border-color:var(--border);transform:translateY(-4px)}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow)}.eyebrow{font-family:var(--font-heading);letter-spacing:1.2px;text-transform:uppercase;color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 10%, transparent);border-radius:50px;margin-bottom:12px;padding:4px 12px;font-size:.72rem;font-weight:700;display:inline-block}.eyebrow-invert{color:var(--growth-green);background:color-mix(in srgb, var(--growth-green) 13%, transparent)}.section-title>.eyebrow{width:fit-content;line-height:1.6;display:block}.text-center .section-title>.eyebrow{margin-left:auto;margin-right:auto}.eyebrow-sep{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-link{color:var(--primary-color);border-bottom:1.5px solid color-mix(in srgb, var(--primary-color) 35%, transparent);align-items:center;gap:5px;font-weight:600;transition:border-color .2s;display:inline-flex}.text-link:hover{border-bottom-color:var(--primary-color)}.section-header{margin-bottom:44px}.section-title{font-family:var(--font-heading);letter-spacing:-.015em;color:var(--text-primary);text-wrap:balance;margin:0 0 14px;font-size:clamp(1.7rem,1.25rem + 1.7vw,2.5rem);font-weight:700;line-height:1.18}.section-subtitle{color:var(--text-secondary);max-width:62ch;font-size:1.05rem;line-height:1.7}.section-header.text-center .section-subtitle{margin-left:auto;margin-right:auto}.section-padding{padding:80px 0}.container.section-padding{padding-inline:20px}.text-center{text-align:center}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sticky-nav{z-index:1000;background-color:var(--surface);position:sticky;top:0;box-shadow:0 2px 10px #0000001a}
.auth-container{background-color:var(--bg-secondary);justify-content:center;align-items:center;min-height:80vh;transition:background-color .3s;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--card-shadow);border-radius:12px;width:100%;max-width:450px;padding:2.5rem;transition:background-color .3s,border-color .3s}.auth-card h2{text-align:center;color:var(--primary-color);margin-bottom:2rem;font-size:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-primary);margin-bottom:.5rem;font-weight:500;display:block}.form-group input,.form-group select{background-color:var(--surface);width:100%;color:var(--text-primary);border:1px solid var(--border);border-radius:6px;padding:.75rem;font-size:1rem;transition:border-color .3s,background-color .3s,color .3s}.form-group input:focus,.form-group select:focus{border-color:var(--primary-color);outline:none}.error-text{color:#e63946;text-align:center;background:#e6394626;border:1px solid #e639464d;border-radius:6px;margin-bottom:1.5rem;padding:.75rem;font-size:.9rem}.auth-redirect{text-align:center;color:var(--text-secondary);margin-top:1.5rem;font-size:.9rem}.auth-redirect a{color:var(--primary-color);font-weight:600;text-decoration:none}.auth-redirect a:hover{text-decoration:underline}.password-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.password-input-wrapper input{padding-right:2.75rem!important}.password-toggle-btn{cursor:pointer;color:#64748b;background:0 0;border:none;outline:none;justify-content:center;align-items:center;padding:.25rem;transition:color .2s;display:flex;position:absolute;right:.75rem}.password-toggle-btn:hover{color:var(--primary-color,#1e40af)}
.passkey-input{text-transform:uppercase;letter-spacing:.15em;text-align:center;font-family:Courier New,Courier,monospace;font-weight:700;font-size:1.25rem!important}.passkey-input::placeholder{letter-spacing:normal;opacity:.6;font-family:inherit;font-size:1rem;font-weight:400}.form-row{gap:15px;display:flex}.form-row .form-group{flex:1}.inline-error-text{color:#dc2626;margin-top:4px;font-size:.825rem;font-weight:500;animation:.2s ease-out fadeInError;display:block}.helper-text{color:var(--text-secondary);margin-top:4px;font-size:.8rem;display:block}.input-invalid{background-color:#ef444426;border-color:#ef4444!important}.input-valid{border-color:#10b981!important}.auth-card-subtitle{text-align:center;color:var(--text-secondary);margin-top:-1.5rem;margin-bottom:2rem;font-size:.95rem;line-height:1.5}@keyframes fadeInError{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@media (max-width:576px){.form-row{flex-direction:column;gap:0}}
.onboard-card{max-width:560px}.onboard-intro{text-align:center;color:var(--text-secondary);margin-bottom:1.75rem;font-size:.95rem;line-height:1.6}.onboard-options{gap:1rem;margin-bottom:1.5rem;display:grid}@media (min-width:520px){.onboard-options{grid-template-columns:1fr 1fr}}.onboard-option{text-align:left;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.25rem;font-family:inherit;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.onboard-option:hover{border-color:var(--primary-color);box-shadow:var(--card-shadow)}.onboard-option:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.onboard-option[aria-pressed=true]{border-color:var(--primary-color);box-shadow:var(--card-shadow)}.onboard-option-icon{background:color-mix(in srgb, var(--primary-color) 12%, transparent);width:40px;height:40px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.onboard-option-title{color:var(--text-primary);font-size:1rem;font-weight:600}.onboard-option-desc{color:var(--text-secondary);margin:0;font-size:.85rem;line-height:1.5}.onboard-back{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;margin-bottom:1rem;padding:.25rem 0;font-family:inherit;font-size:.88rem;transition:color .2s;display:inline-flex}.onboard-back:hover{color:var(--primary-color)}.onboard-back:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px;border-radius:4px}.onboard-helper{color:var(--text-secondary);margin-top:.4rem;font-size:.8rem;display:block}.onboard-note{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);gap:.6rem;margin-bottom:1.25rem;padding:.85rem 1rem;font-size:.85rem;line-height:1.55;display:flex}.onboard-note svg{color:var(--primary-color);flex-shrink:0;margin-top:1px}.onboard-row{flex-wrap:wrap;gap:1rem;display:flex}.onboard-row>.form-group{flex:180px;margin-bottom:1.5rem}
.admin-container{max-width:1200px;margin:0 auto}.admin-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.admin-table{border-collapse:collapse;background:var(--surface);width:100%;box-shadow:var(--card-shadow);border-radius:8px;overflow:hidden}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border);color:var(--text-primary);padding:1rem}.admin-table th{background:var(--bg-secondary);font-weight:600}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);color:var(--text-primary);border:1px solid var(--border);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--card-shadow-hover);border-radius:8px;padding:2rem;position:relative;overflow-y:auto}.modal-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;font-size:1.5rem;position:absolute;top:15px;right:15px}.success-screen h3{color:var(--growth-green);margin-bottom:1rem}.admin-credentials-box{background:var(--bg-secondary);border:1px solid var(--border);text-align:left;border-radius:8px;margin:20px 0;padding:15px}.admin-credentials-title{color:var(--text-primary);margin-bottom:10px;font-weight:600}.admin-credentials-text{color:var(--text-primary);margin-bottom:8px}.temp-password-highlight{color:var(--primary-color);font-size:1.2em}
.admin-container{max-width:1200px;margin:0 auto;padding:20px}.admin-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.admin-header h2{color:var(--primary-color);margin:0}.admin-table{border-collapse:collapse;background:var(--surface);border-radius:8px;width:100%;overflow:hidden;box-shadow:0 1px 3px #0000001a}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border);color:var(--text-primary);padding:12px 15px}.admin-table th{background-color:var(--bg-secondary);color:var(--text-primary);font-weight:600}.admin-table tr:last-child td{border-bottom:none}.card{background:var(--surface);color:var(--text-primary);border-radius:8px;box-shadow:0 2px 8px #0000001a}.error-text{color:#dc3545;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin-bottom:15px;padding:10px}
.admin-container{max-width:1200px;margin:0 auto;padding:20px}.admin-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.admin-header h2{color:var(--dark-text);margin:0;font-size:1.75rem;font-weight:700}.admin-content{background:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);padding:24px;overflow-x:auto}.admin-table{border-collapse:collapse;background:var(--white);border-radius:var(--radius-md);width:100%;overflow:hidden}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border-color);vertical-align:middle;padding:16px 20px}.admin-table th{background-color:var(--light-gray);font-family:var(--font-heading);color:var(--light-text);text-transform:uppercase;letter-spacing:.05em;font-size:.9rem;font-weight:600}.admin-table tbody tr{transition:background-color .2s}.admin-table tbody tr:hover{background-color:var(--bg-secondary)}.admin-table tr:last-child td{border-bottom:none}.badge{text-transform:capitalize;border-radius:9999px;align-items:center;padding:6px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.badge-draft{background-color:var(--bg-secondary);color:var(--text-secondary)}.badge-pending{color:#d97706;background-color:#fef3c7}.badge-published{color:#4f46e5;background-color:#e0e7ff}.badge-active{color:#059669;background-color:#d1fae5}.badge-closed{background-color:var(--border);color:var(--text-secondary)}.badge-cancelled{color:#e11d48;background-color:#ffe4e6}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#0f172a99;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--white);border-radius:var(--radius-lg);width:100%;max-width:650px;max-height:90vh;padding:30px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;position:relative;overflow:hidden auto;box-shadow:0 25px 50px -12px #00000040}.modal-close{cursor:pointer;color:var(--light-text);background:0 0;border:none;font-size:1.5rem;line-height:1;transition:color .2s;position:absolute;top:20px;right:20px}.modal-close:hover{color:var(--dark-text)}.modal-content h3{font-family:var(--font-heading);color:var(--dark-text);margin-bottom:20px;font-size:1.5rem;font-weight:700}.form-group{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.form-group label{font-family:var(--font-heading);color:var(--dark-text);font-size:.88rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;font-family:var(--font-body);color:var(--dark-text);background-color:var(--white);outline:none;padding:10px 14px;font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-blue);box-shadow:0 0 0 3px #4f46e51a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:var(--bg-secondary);color:var(--text-secondary);cursor:not-allowed}.form-group-row{gap:16px;margin-bottom:20px;display:flex}.form-group-row .form-group{flex:1;margin-bottom:0}.modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.modal-actions .btn{padding:10px 20px;font-size:.95rem}.passkeys-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;max-height:300px;margin-top:16px;padding:4px;display:grid;overflow-y:auto}.passkey-card{border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center;color:var(--text-primary);padding:12px;transition:transform .2s,box-shadow .2s}.passkey-card:hover{box-shadow:var(--card-shadow);transform:translateY(-2px)}.passkey-card-unused{background-color:#10b98126;border-color:#10b98159}.passkey-card-consumed{background-color:#ef444426;border-color:#ef444459}.passkey-code{color:var(--dark-text);letter-spacing:.05em;margin-bottom:4px;font-family:monospace;font-size:1.25rem;font-weight:700}.passkey-status{text-transform:uppercase;font-size:.75rem;font-weight:600}.passkey-status-unused{color:#059669}.passkey-status-consumed{color:#dc2626}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.pay-page{max-width:720px;margin:0 auto;padding:24px 16px 48px}.pay-page--wide{max-width:880px}.pay-back{align-items:center;gap:8px;min-height:44px;margin-bottom:20px;display:inline-flex}.pay-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);padding:28px}.pay-card+.pay-card{margin-top:16px}.pay-title{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:6px;font-size:1.5rem}.pay-subtitle{color:var(--text-secondary);margin-bottom:24px;font-size:.95rem;line-height:1.6}.pay-line{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:16px;padding:16px 0;display:flex}.pay-line:last-of-type{border-bottom:none}.pay-line-label{color:var(--text-primary);font-weight:500}.pay-line-note{color:var(--text-secondary);margin-top:3px;font-size:.85rem;font-weight:400;line-height:1.5;display:block}.pay-line-amount{font-family:var(--font-heading);color:var(--text-primary);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.pay-total{border-top:2px solid var(--border);justify-content:space-between;align-items:baseline;gap:16px;margin-top:20px;padding-top:20px;display:flex}.pay-total .pay-line-amount{color:var(--primary-color);font-size:1.5rem}.pay-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.pay-actions .btn{justify-content:center;align-items:center;gap:8px;min-height:44px;display:inline-flex}.pay-secure{color:var(--text-secondary);align-items:center;gap:8px;margin-top:18px;font-size:.83rem;display:flex}.pay-secure svg{color:var(--growth-green);flex-shrink:0}.pay-status{text-align:center;padding:44px 28px}.pay-status-icon{border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 22px;display:flex}.pay-status-icon--success{background:color-mix(in srgb, var(--growth-green) 14%, transparent);color:var(--growth-green)}.pay-status-icon--pending{background:color-mix(in srgb, var(--energetic-orange) 16%, transparent);color:var(--energetic-orange)}.pay-status-icon--failed{background:color-mix(in srgb, var(--error-rose) 14%, transparent);color:var(--error-rose)}.pay-status h1{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:12px;font-size:1.6rem}.pay-status p{color:var(--text-secondary);max-width:46ch;margin:0 auto 8px;line-height:1.65}.pay-spinner{border:3px solid var(--border);border-top-color:var(--primary-color);border-radius:50%;width:34px;height:34px;animation:.9s linear infinite pay-spin}@keyframes pay-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.pay-spinner{animation-duration:3s}}.pay-orders{gap:12px;display:grid}.pay-order{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.pay-order-main{flex:220px;min-width:0}.pay-order-title{color:var(--text-primary);margin-bottom:4px;font-weight:600}.pay-order-meta{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:.83rem}.pay-order-side{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.pay-badge{letter-spacing:.02em;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.pay-badge--success{background:color-mix(in srgb, var(--growth-green) 15%, transparent);color:var(--growth-green)}.pay-badge--pending{background:color-mix(in srgb, var(--energetic-orange) 18%, transparent);color:var(--energetic-orange)}.pay-badge--failed{background:color-mix(in srgb, var(--error-rose) 15%, transparent);color:var(--error-rose)}.pay-empty{text-align:center;color:var(--text-secondary);padding:48px 24px}.pay-error{color:var(--error-rose);background:color-mix(in srgb, var(--error-rose) 12%, transparent);border:1px solid color-mix(in srgb, var(--error-rose) 30%, transparent);border-radius:var(--radius-md);margin-bottom:18px;padding:12px 14px;font-size:.9rem}.plan-grid{grid-template-columns:1fr;align-items:start;gap:20px;display:grid}@media (min-width:820px){.plan-grid{grid-template-columns:1fr 1fr}}.plan-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);flex-direction:column;height:100%;padding:28px 24px 24px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.plan-card--highlight{border-color:var(--primary-color)}.plan-card:hover{box-shadow:var(--card-shadow-hover)}.plan-badge{background:var(--primary-gradient);color:var(--on-primary);letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:4px 12px;font-size:.72rem;font-weight:700;position:absolute;top:-11px;left:24px}.plan-name{font-family:var(--font-heading);color:var(--text-primary);margin:4px 0 10px;font-size:1.18rem;line-height:1.3}.plan-price{font-family:var(--font-heading);color:var(--primary-color);font-variant-numeric:tabular-nums;margin-bottom:10px;font-size:2.1rem;font-weight:700;line-height:1.1}.plan-price span{font-family:var(--font-body);color:var(--text-secondary);margin-top:4px;font-size:.78rem;font-weight:400;display:block}.plan-tagline{color:var(--text-secondary);margin-bottom:16px;font-size:.92rem;line-height:1.6}.plan-inherits{color:var(--text-primary);background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:14px;padding:9px 12px;font-size:.85rem;font-weight:600}.plan-features{flex:1;gap:10px;margin:0 0 22px;padding:0;list-style:none;display:grid}.plan-features li{color:var(--text-primary);align-items:flex-start;gap:9px;font-size:.9rem;line-height:1.5;display:flex}.plan-features svg{color:var(--growth-green);flex-shrink:0;margin-top:3px}.plan-actions .btn{justify-content:center;align-items:center;gap:8px;min-height:46px;font-weight:600;display:inline-flex}.plan-sample{width:100%;color:var(--text-secondary);justify-content:center;align-items:center;gap:6px;margin-top:12px;font-size:.82rem;text-decoration:none;display:inline-flex}.plan-sample:hover{color:var(--primary-color);text-decoration:underline}.plan-footnote{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);align-items:flex-start;gap:10px;margin-top:26px;padding:14px 16px;font-size:.87rem;line-height:1.6;display:flex}.plan-footnote svg{color:var(--growth-green);flex-shrink:0;margin-top:2px}.plan-footnote a{color:var(--primary-color)}.pay-coupon{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.pay-coupon-label{color:var(--text-primary);margin-bottom:8px;font-size:.85rem;font-weight:600;display:block}.pay-coupon-row{flex-wrap:wrap;gap:8px;display:flex}.pay-coupon-row input{background:var(--surface);min-height:44px;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.04em;flex:180px;padding:0 12px;font-family:inherit;font-size:.95rem}.pay-coupon-row input:focus{border-color:var(--primary-color);outline:none}.pay-coupon-row .btn{flex-shrink:0;min-height:44px}.pay-coupon-msg{margin-top:8px;font-size:.84rem}.pay-coupon-msg--ok{color:var(--growth-green)}.pay-coupon-msg--err{color:var(--error-rose)}.pay-line-strike{color:var(--text-secondary);margin-right:8px;font-weight:400;text-decoration:line-through}.pay-discount-row .pay-line-amount{color:var(--growth-green)}.pay-change-plan{color:var(--primary-color);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:.83rem;text-decoration:underline}.guest-fields{background:color-mix(in srgb, var(--primary-color) 5%, transparent);border:1px solid var(--border);border-radius:var(--radius-md);margin-top:26px;padding:20px}.guest-gift-note{color:var(--text-secondary);border-radius:var(--radius-md);background:color-mix(in srgb, var(--primary-color) 7%, transparent);border-left:3px solid color-mix(in srgb, var(--primary-color) 45%, transparent);margin:-4px 0 16px;padding:11px 13px;font-size:.85rem;line-height:1.65}.guest-fields-head{font-family:var(--font-heading);color:var(--text-primary);align-items:center;gap:8px;margin:0 0 14px;font-size:1rem;display:flex}.guest-label{color:var(--text-primary);margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}.guest-label+.guest-input{margin-bottom:14px}.guest-optional{color:var(--text-secondary);font-weight:400}.guest-input{width:100%;min-height:44px;color:var(--text-primary);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px;font-family:inherit;font-size:.95rem}.guest-input:focus{outline:2px solid var(--primary-color);outline-offset:1px;border-color:var(--primary-color)}.guest-input--error{border-color:var(--error-rose)}.guest-hint{color:var(--text-secondary);margin:4px 0 0;font-size:.83rem;line-height:1.6}.guest-hint--error{color:var(--error-rose);font-weight:500}.guest-alt{margin-top:16px;padding:18px 20px}.guest-alt p{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.6}.guest-alt a{color:var(--primary-color);font-weight:600}.guest-redeemed{color:var(--growth-green);align-items:center;gap:7px;margin-top:10px;font-size:.9rem;font-weight:600;display:inline-flex}.pay-receipt{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md,12px);text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0 6px;padding:14px 16px;display:grid}.pay-receipt dt{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:2px;font-size:.72rem}.pay-receipt dd{color:var(--text-primary);overflow-wrap:anywhere;margin:0;font-size:.92rem;font-weight:600}.pay-next{text-align:left;margin-top:26px}.pay-next h2{color:var(--text-primary);margin:0 0 12px;font-size:1rem}.pay-next ol{counter-reset:pay-next;gap:14px;margin:0;padding:0;list-style:none;display:grid}.pay-next li{counter-increment:pay-next;grid-template-columns:28px 1fr;align-items:start;gap:12px;display:grid}.pay-next li:before{content:counter(pay-next);width:28px;height:28px;color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 12%, transparent);border-radius:50%;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:flex}.pay-next strong{color:var(--text-primary);margin-bottom:2px;font-size:.95rem;display:block}.pay-next span{color:var(--text-secondary);font-size:.86rem;line-height:1.55}@media (max-width:520px){.pay-receipt{grid-template-columns:1fr 1fr}}.pay-order--rich{padding:0;display:block;overflow:hidden}.pay-order-toggle{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 48px 18px 20px;display:flex;position:relative}.pay-order-toggle:hover{background:var(--bg-secondary)}.pay-order-toggle:focus-visible{outline:2px solid var(--primary-color);outline-offset:-2px}.pay-order-chevron{color:var(--text-secondary);transition:transform .15s;position:absolute;top:22px;right:18px}.pay-order-chevron.is-open{transform:rotate(180deg)}.pay-order-details{border-top:1px solid var(--border);padding:4px 20px 18px}.pay-order-dl{grid-template-columns:max-content 1fr;gap:8px 20px;margin:14px 0 6px;font-size:.88rem;display:grid}.pay-order-dl dt{color:var(--text-secondary)}.pay-order-dl dd{color:var(--text-primary);overflow-wrap:anywhere;font-variant-numeric:tabular-nums;min-width:0;margin:0;font-weight:500}.pay-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem}.pay-order-details .pay-actions .btn{align-items:center;gap:6px;display:inline-flex}@media (max-width:480px){.pay-order-dl{grid-template-columns:1fr;gap:2px}.pay-order-dl dt{margin-top:8px}.pay-order--rich .pay-order-side{flex-direction:row;align-items:center;gap:10px}.pay-order--rich .pay-order-side .pay-order-title{margin-bottom:0}}
.aw-panel{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-secondary);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.aw-icon{background:color-mix(in srgb, var(--primary-color) 12%, transparent);width:34px;height:34px;color:var(--primary-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.aw-body{min-width:0}.aw-headline{color:var(--text-primary);margin-bottom:3px;font-size:.95rem;font-weight:700;line-height:1.35}.aw-detail{color:var(--text-secondary);font-size:.86rem;line-height:1.55}.aw-detail strong{color:var(--text-primary);font-weight:600}.aw-panel--soon{border-color:color-mix(in srgb, var(--energetic-orange) 32%, transparent);background:color-mix(in srgb, var(--energetic-orange) 8%, transparent)}.aw-panel--soon .aw-icon{background:color-mix(in srgb, var(--energetic-orange) 16%, transparent);color:var(--energetic-orange)}.aw-panel--urgent{border-color:color-mix(in srgb, var(--error-rose) 34%, transparent);background:color-mix(in srgb, var(--error-rose) 8%, transparent)}.aw-panel--urgent .aw-icon{background:color-mix(in srgb, var(--error-rose) 15%, transparent);color:var(--error-rose)}.aw-panel--closed{border-color:var(--border);background:var(--bg-secondary)}.aw-panel--closed .aw-icon{background:color-mix(in srgb, var(--error-rose) 13%, transparent);color:var(--error-rose)}.aw-chip{white-space:nowrap;background:color-mix(in srgb, var(--primary-color) 12%, transparent);color:var(--primary-color);border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:.76rem;font-weight:600;display:inline-flex}.aw-chip--soon{background:color-mix(in srgb, var(--energetic-orange) 16%, transparent);color:var(--energetic-orange)}.aw-chip--urgent{background:color-mix(in srgb, var(--error-rose) 15%, transparent);color:var(--error-rose)}.aw-chip--closed{background:color-mix(in srgb, var(--text-secondary) 16%, transparent);color:var(--text-secondary)}
.dashboard-page{background-color:var(--light-gray);min-height:90vh}.welcome-banner{background:var(--primary-gradient);color:var(--on-primary);border-radius:var(--radius-lg);margin-bottom:30px;padding:40px;position:relative;overflow:hidden;box-shadow:0 10px 30px -10px #4f46e54d}.welcome-banner:before{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff26 0%,#fff0 70%);border-radius:50%;width:300px;height:300px;position:absolute;top:-50%;right:-20%}.welcome-banner h2{color:var(--on-primary);letter-spacing:-.02em;margin:0 0 8px;font-size:2rem;font-weight:800}.welcome-banner p{opacity:.9;max-width:600px;margin:0;font-size:1.05rem;line-height:1.6}.dashboard-grid{grid-template-columns:1fr 1fr;align-items:start;gap:30px;display:grid}.dashboard-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);border:1px solid var(--border-color);padding:30px;transition:all .3s cubic-bezier(.4,0,.2,1)}.card-header{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;margin-bottom:25px;padding-bottom:18px;display:flex}.card-header svg{color:var(--primary-blue)}.card-header h3{color:var(--dark-text);letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:800}.tests-list,.reports-list{flex-direction:column;gap:20px;display:flex}.test-item-card{background-color:var(--white);border:1px solid var(--border-color);border-left:4px solid var(--primary-blue);border-radius:var(--radius-md);padding:22px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #00000003}.test-item-card:hover{border-color:var(--border);border-left-color:var(--primary-purple);box-shadow:var(--card-shadow-hover);transform:translateY(-3px)}.report-item-card{background-color:var(--white);border:1px solid var(--border-color);border-left:4px solid var(--growth-green);border-radius:var(--radius-md);padding:22px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #00000003}.report-item-card:hover{border-color:var(--border);box-shadow:var(--card-shadow-hover);transform:translateY(-3px)}.test-info h4,.report-info h4{color:var(--dark-text);margin:0 0 8px;font-size:1.15rem;font-weight:700}.test-date-meta,.report-meta{color:var(--light-text);align-items:center;gap:15px;font-size:.88rem;display:flex}.meta-block{align-items:center;gap:6px;display:flex}.report-main-line{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.status-badge{color:var(--growth-green);text-transform:uppercase;letter-spacing:.05em;background-color:#10b9811a;border-radius:20px;padding:4px 10px;font-size:.75rem;font-weight:700}.report-actions{gap:12px;margin-top:20px;display:flex}.report-actions .btn{border-radius:var(--radius-md)}.btn-outline-primary{border:1.5px solid var(--primary-blue);color:var(--primary-blue);background:0 0}.btn-outline-primary:hover{background-color:var(--primary-blue);color:var(--on-primary);box-shadow:0 4px 12px #4f46e526}.report-actions .btn-secondary{background-color:var(--bg-secondary);border:1.5px solid var(--border);color:var(--text-primary)}.report-actions .btn-secondary:hover{background-color:var(--border);border-color:var(--text-secondary);color:var(--dark-text)}.empty-state{text-align:center;border:2px dashed var(--border-color);border-radius:var(--radius-md);background-color:var(--light-gray);padding:40px 20px}.empty-state p{color:var(--dark-text);margin:0 0 8px;font-size:1.05rem;font-weight:700}.empty-state span{color:var(--light-text);font-size:.88rem;line-height:1.5;display:block}.onboarding-widget{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);border:1px solid var(--border-color);margin-top:20px;padding:40px}.tabs-container{border-bottom:2px solid var(--border-color);gap:10px;margin-bottom:30px;display:flex;overflow-x:auto}.tab-btn{color:var(--light-text);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .2s;position:relative}.tab-btn:hover{color:var(--primary-blue)}.tab-btn.active{color:var(--primary-blue);border-bottom-color:var(--primary-blue)}.tab-content{animation:.3s cubic-bezier(.4,0,.2,1) dashboardFadeIn}.form-group{margin-bottom:20px}.form-group label{color:var(--dark-text);margin-bottom:8px;font-size:.9rem;font-weight:600;display:block}.form-group input{border-radius:var(--radius-md);border:1.5px solid var(--border-color);background-color:var(--white);width:100%;color:var(--dark-text);padding:12px 16px;font-size:1rem;transition:all .2s}.form-group input:focus{border-color:var(--primary-blue);outline:none;box-shadow:0 0 0 4px #4f46e51a}.helper-text{color:var(--light-text);margin-top:6px;font-size:.8rem;display:block}@keyframes dashboardFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#0f172a99;justify-content:center;align-items:center;animation:.2s ease-out dashboardFadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border-color);width:90%;max-width:500px;padding:35px;animation:.3s cubic-bezier(.34,1.56,.64,1) dashboardFadeIn;position:relative;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-close-btn{color:var(--light-text);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex;position:absolute;top:20px;right:20px}.modal-close-btn:hover{background-color:var(--bg-secondary);color:var(--dark-text)}.purchase-card{text-align:center;border:1.5px dashed var(--border-color);border-radius:var(--radius-md);background-color:var(--light-gray);padding:35px 25px}.purchase-card h4{color:var(--dark-text);margin:0 0 10px;font-size:1.2rem;font-weight:700}.purchase-card p{color:var(--light-text);margin:0 0 24px;font-size:.95rem;line-height:1.6}@media (max-width:768px){.welcome-banner{margin-bottom:24px;padding:30px 20px}.welcome-banner h2{font-size:1.6rem}.welcome-banner p{font-size:.95rem}.dashboard-grid{grid-template-columns:1fr;gap:24px}.dashboard-card{padding:24px}.onboarding-widget{padding:24px 16px}}.expired-cta{background:color-mix(in srgb, var(--energetic-orange) 10%, transparent);border:1px solid color-mix(in srgb, var(--energetic-orange) 28%, transparent);border-radius:var(--radius-md);flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:18px;padding:18px 20px;display:flex}.expired-cta-text{color:var(--text-primary);margin:0;font-size:.92rem;line-height:1.6}
.section-overview-page{background-color:var(--light-gray);min-height:calc(100vh - 150px)}.back-link{color:var(--light-text);align-items:center;gap:8px;font-size:.95rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.back-link:hover{color:var(--primary-blue)}.overview-header{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);border:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:40px;padding:30px;display:flex}.title-section h2{color:var(--dark-text);letter-spacing:-.02em;margin:0 0 8px;font-size:1.8rem;font-weight:800}.title-section p{color:var(--light-text);margin:0;font-size:1rem}.progress-banner{flex:1;min-width:280px;max-width:400px}.progress-meta{justify-content:space-between;margin-bottom:8px;font-size:.88rem;display:flex}.progress-label{color:var(--text-primary);font-weight:700}.progress-count{color:var(--primary-blue);font-weight:700}.overall-progress-bar{background-color:var(--border-color);border-radius:999px;height:8px;overflow:hidden}.progress-bar-fill{background:var(--primary-gradient);border-radius:999px;height:100%;transition:width .4s ease-out}.sections-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;display:grid}.section-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);border:1px solid var(--border-color);flex-direction:column;min-height:360px;padding:28px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.card-completed{border-left:4px solid var(--growth-green);border-color:var(--border-color)}.card-completed:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-3px)}.card-in-progress{border-left:4px solid var(--primary-blue);border-color:var(--border-color);box-shadow:0 10px 25px -5px #4f46e51a,0 8px 10px -6px #4f46e50d}.card-in-progress:hover{transform:translateY(-3px);box-shadow:0 20px 25px -5px #4f46e526,0 10px 10px -5px #4f46e514}.card-available{border-left:4px solid var(--border);cursor:pointer}.card-available:hover{border-color:var(--border);border-left-color:var(--primary-purple);box-shadow:var(--card-shadow-hover);transform:translateY(-3px)}.card-locked{opacity:.5;background-color:var(--bg-secondary);cursor:not-allowed;pointer-events:none}.card-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.icon-wrapper{width:44px;height:44px;color:var(--growth-green);background-color:#10b98114;border-radius:10px;justify-content:center;align-items:center;display:flex}.card-in-progress .icon-wrapper{color:var(--primary-blue);background-color:#4f46e514}.card-available .icon-wrapper{background-color:var(--bg-secondary);color:var(--text-secondary)}.card-locked .icon-wrapper{background-color:var(--border);color:var(--text-secondary)}.status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.badge-card-completed{color:var(--growth-green);background-color:#10b9811a}.badge-card-in-progress{color:var(--primary-blue);background-color:#4f46e51a;animation:2s infinite pulse-border}.badge-card-available{background-color:var(--bg-secondary);color:var(--text-secondary)}.badge-card-locked{background-color:var(--border);color:var(--text-secondary)}.card-body{flex-direction:column;flex:1;display:flex}.card-body h3{color:var(--dark-text);letter-spacing:-.01em;margin:0 0 10px;font-size:1.25rem;font-weight:700}.card-body .description{color:var(--light-text);margin:0 0 20px;font-size:.92rem;line-height:1.6}.measures-box{background-color:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;margin-top:auto;padding:14px;font-size:.85rem}.card-locked .measures-box{background-color:var(--border);border-color:var(--border)}.card-footer{border-top:1px solid var(--border-color);margin-top:24px;padding-top:16px}.card-locked .card-footer{border-top-color:var(--border)}.start-btn{background-color:var(--primary-blue);width:100%;color:var(--on-primary);border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.95rem;font-weight:700;transition:all .2s;display:inline-flex}.start-btn:hover{background-color:#4338ca;box-shadow:0 4px 12px #4f46e533}.completed-text{color:var(--growth-green);justify-content:center;align-items:center;gap:8px;font-size:.92rem;font-weight:700;display:flex}.locked-text{color:var(--text-secondary);justify-content:center;align-items:center;gap:8px;font-size:.88rem;font-weight:500;display:flex}.card-progress-container{flex-direction:column;gap:8px;display:flex}.card-progress-container .progress-text{color:var(--text-secondary);justify-content:space-between;font-size:.8rem;font-weight:700;display:flex}.card-progress-bar{background-color:var(--border-color);border-radius:999px;height:6px;overflow:hidden}.section-overview-loading{background-color:var(--light-gray);min-height:calc(100vh - 150px);color:var(--light-text);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.spinner{color:var(--primary-blue);animation:1s linear infinite spin}.section-overview-error-container{background-color:var(--light-gray);justify-content:center;align-items:center;min-height:calc(100vh - 150px);display:flex}.error-card{background:var(--white);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--card-shadow);border:1px solid var(--border-color);max-width:450px;padding:40px}.error-icon{color:var(--error-rose);margin:0 auto 20px}.error-card h3{color:var(--dark-text);margin:0 0 10px;font-size:1.4rem;font-weight:800}.error-card p{color:var(--light-text);margin:0 0 24px;font-size:.95rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-border{0%{box-shadow:0 0 #4f46e566}70%{box-shadow:0 0 0 6px #4f46e500}to{box-shadow:0 0 #4f46e500}}@media (max-width:640px){.overview-header{flex-direction:column;align-items:stretch;padding:20px}.progress-banner{max-width:100%}.sections-grid{grid-template-columns:1fr}}
.reports-page{background-color:var(--bg-secondary);min-height:90vh}.reports-header-card{background:linear-gradient(135deg, var(--primary-blue) 0%, #1e40af 100%);color:var(--on-primary);border-radius:16px;margin-bottom:30px;padding:35px 30px;box-shadow:0 4px 20px #2563eb26}.reports-header-card h2{color:var(--on-primary);margin:0 0 8px;font-size:2rem;font-weight:800}.reports-header-card p{opacity:.9;margin:0;font-size:1.05rem;line-height:1.5}.header-icon{color:var(--on-primary)}.reports-tabs{border-bottom:2px solid var(--border);gap:15px;margin-bottom:30px;display:flex;overflow-x:auto}.reports-tab-btn{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-2px;padding:12px 20px;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.reports-tab-btn:hover{color:var(--primary-blue)}.reports-tab-btn.active{color:var(--primary-blue);border-bottom-color:var(--primary-blue)}.filter-controls-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--card-shadow);border-radius:12px;margin-bottom:30px;padding:20px}.filters-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.filter-group{flex-direction:column;gap:8px;display:flex}.filter-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:700}.select-wrapper{align-items:center;display:flex;position:relative}.select-icon{color:var(--text-secondary);pointer-events:none;position:absolute;left:12px}.select-wrapper select{border:1px solid var(--border);width:100%;color:var(--text-primary);background-color:var(--surface);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border-radius:8px;padding:10px 12px 10px 38px;font-family:inherit;font-size:.95rem;transition:all .2s}.select-wrapper select:focus{border-color:var(--primary-blue);outline:none;box-shadow:0 0 0 3px #2563eb1a}.reports-error-banner{color:var(--error-rose);background-color:#ef444426;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:10px;margin-bottom:25px;padding:16px 20px;font-size:.95rem;display:flex}.loading-state,.select-prompt-state{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;display:flex}.loading-state p{color:var(--text-primary);margin-top:15px;font-weight:600}.spinner{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.select-prompt-state svg{color:var(--text-secondary);margin-bottom:15px}.select-prompt-state h3{color:var(--text-primary);margin-bottom:8px;font-size:1.3rem;font-weight:700}.select-prompt-state p{color:var(--text-secondary);max-width:420px;margin:0;font-size:.95rem}.stats-reports-grid{grid-template-columns:350px 1fr;align-items:start;gap:30px;display:grid}@media (max-width:1024px){.stats-reports-grid{grid-template-columns:1fr}}.distribution-card{background:var(--surface);box-shadow:var(--card-shadow);border:1px solid var(--border);border-radius:16px;padding:24px}.dist-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;margin-bottom:20px;padding-bottom:12px;display:flex}.dist-header svg{color:var(--primary-blue)}.dist-header h3{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:700}.dist-list{flex-direction:column;gap:16px;display:flex}.dist-item{flex-direction:column;gap:6px;display:flex}.dist-meta{justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.dist-name{color:var(--text-primary);font-weight:600}.dist-count{color:var(--text-secondary)}.progress-bar-bg{background-color:var(--bg-secondary);border-radius:4px;width:100%;height:8px;overflow:hidden}.progress-bar-fill{border-radius:4px;height:100%;transition:width .8s ease-out}.empty-dist-state{text-align:center;color:var(--text-secondary);padding:30px 10px}.empty-dist-state p{color:var(--text-primary);margin:10px 0 4px;font-weight:600}.empty-dist-state span{font-size:.82rem;line-height:1.4;display:block}.students-table-card{background:var(--surface);box-shadow:var(--card-shadow);border:1px solid var(--border);border-radius:16px;padding:24px}.table-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.table-header-row h3{color:var(--text-primary);margin:0;font-size:1.2rem;font-weight:700}.table-search-wrapper{align-items:center;min-width:260px;display:flex;position:relative}.search-icon{color:var(--text-secondary);position:absolute;left:10px}.table-search-wrapper input{border:1px solid var(--border);width:100%;color:var(--text-primary);background-color:var(--surface);border-radius:6px;outline:none;padding:8px 12px 8px 34px;font-size:.88rem}.table-search-wrapper input:focus{border-color:var(--primary-blue)}.table-wrapper{overflow-x:auto}.students-table{border-collapse:collapse;width:100%}.students-table th,.students-table td{text-align:left;border-bottom:1px solid var(--border);padding:12px 16px}.students-table th{background-color:var(--bg-secondary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;font-weight:700}.student-profile-cell{align-items:center;gap:10px;display:flex}.student-avatar-circle{background-color:var(--bg-secondary);width:32px;height:32px;color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;display:flex}.student-name-text{color:var(--text-primary);font-size:.95rem;font-weight:600}.student-email-text{color:var(--text-secondary);font-size:.78rem}.table-status-badge{text-transform:uppercase;letter-spacing:.02em;border-radius:12px;padding:4px 8px;font-size:.75rem;font-weight:700;display:inline-block}.status-scored{color:#059669;background-color:#10b9811a}.status-in-progress{color:#d97706;background-color:#d977061a}.status-not-started{background-color:var(--bg-secondary);color:var(--text-secondary)}.btn-action-outline{border:1px solid var(--primary-blue);color:var(--primary-blue);background:0 0;border-radius:4px;align-items:center;gap:4px;padding:6px 12px;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-action-outline:hover{background-color:#2563eb0d}.btn-action-fill{background-color:var(--bg-secondary);color:var(--text-secondary);border-radius:4px;justify-content:center;align-items:center;padding:6px 10px;font-size:.8rem;transition:all .2s;display:inline-flex}.btn-action-fill:hover:not(:disabled){background-color:var(--border);color:var(--text-primary)}.table-empty-state{text-align:center;color:var(--text-secondary);padding:40px 20px;font-style:italic}.student-search-section{flex-direction:column;gap:30px;display:flex}.search-card{background:var(--surface);box-shadow:var(--card-shadow);border:1px solid var(--border);border-radius:16px;max-width:600px;padding:25px}.search-card h3{color:var(--text-primary);margin:0 0 6px;font-size:1.2rem;font-weight:700}.search-card p{color:var(--text-secondary);margin:0 0 20px;font-size:.9rem}.search-form-row{gap:12px;display:flex}.search-input-wrapper{flex:1;align-items:center;display:flex;position:relative}.search-mail-icon{color:var(--text-secondary);position:absolute;left:12px}.search-input-wrapper input{border:1px solid var(--border);width:100%;color:var(--text-primary);background-color:var(--surface);border-radius:8px;outline:none;padding:12px 12px 12px 38px;font-size:.95rem}.search-input-wrapper input:focus{border-color:var(--primary-blue)}.search-card button{align-items:center;gap:6px;min-height:46px;display:inline-flex}.search-error-banner{color:var(--error-rose);background-color:#ef444426;border:1px solid #ef44444d;border-radius:6px;align-items:center;gap:8px;padding:10px 14px;font-size:.88rem;display:flex}.search-results-card{background:var(--surface);box-shadow:var(--card-shadow);border:1px solid var(--border);border-radius:16px;padding:24px}.search-results-card h4{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:700}.search-reports-list{flex-direction:column;gap:15px;display:flex}.search-report-item{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:15px 20px;display:flex}.search-report-info{flex:1}.search-report-info h5{color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:700}
.imitra-launcher,.imitra-panel{--imitra-display:"Baloo 2", var(--font-heading)}.imitra-wordmark{font-family:var(--imitra-display);letter-spacing:-.015em;font-weight:700}.imitra-launcher{--imitra-accent-i:#fbbf24}.imitra-panel{--imitra-accent-i:#b45309}[data-theme=dark] .imitra-panel{--imitra-accent-i:var(--energetic-orange)}.imitra-wordmark-i{color:var(--imitra-accent-i)}.imitra-face{display:block;overflow:visible}.imitra-face-eye{transform-box:fill-box;transform-origin:50%;animation:5.4s ease-in-out infinite imitra-blink;animation-delay:var(--imitra-blink-delay,0s)}@keyframes imitra-blink{0%,60%,to{opacity:.35}30%{opacity:1}}.imitra-launcher:hover .imitra-face{transform:rotate(-5deg)scale(1.06)}.imitra-face{transition:transform .22s cubic-bezier(.34,1.3,.64,1)}.imitra-launcher:hover .imitra-face-eye{animation-duration:1.6s}.imitra-launcher{z-index:900;background:var(--primary-gradient);height:56px;color:var(--on-primary);font-family:var(--font-heading);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:11px;padding:0 22px 0 8px;font-size:.94rem;font-weight:600;transition:transform .18s,box-shadow .18s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 16px 34px -8px #4f46e59e}.imitra-launcher:hover{transform:translateY(-2px);box-shadow:0 22px 42px -10px #4f46e5b8}.imitra-launcher:focus-visible{outline:3px solid var(--primary-blue);outline-offset:3px}.imitra-launcher-icon{width:40px;height:40px;color:var(--on-primary);background:#fff3;border-radius:50%;flex:0 0 40px;place-items:center;display:grid}.imitra-launcher-label{white-space:nowrap}.imitra-launcher-dot{background:var(--energetic-orange);border:2.5px solid var(--bg-primary);border-radius:50%;width:13px;height:13px;animation:.32s ease-out .75s backwards imitra-dot-in;position:absolute;top:4px;right:8px}.imitra-launcher{background-position:0%;background-size:220% 220%;animation:.5s cubic-bezier(.34,1.32,.64,1) .45s backwards imitra-launcher-in,9s ease-in-out 1s infinite imitra-drift}.imitra-launcher:active{transition-duration:80ms;transform:translateY(-1px)scale(.97)}@keyframes imitra-launcher-in{0%{transform:translateY(16px)scale(.86)}to{transform:translateY(0)scale(1)}}@keyframes imitra-drift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes imitra-dot-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes imitra-twinkle{0%,80%,to{transform:rotate(0)scale(1)}86%{transform:rotate(-14deg)scale(1.16)}92%{transform:rotate(9deg)scale(1.05)}}.imitra-launcher:hover .imitra-launcher-icon{background:#ffffff4d}.imitra-launcher-halo{pointer-events:none;border-radius:999px;animation:2.5s ease-out 1.2s infinite imitra-halo;position:absolute;inset:0}@keyframes imitra-halo{0%{box-shadow:0 0 #4f46e580}70%{box-shadow:0 0 0 18px #4f46e500}to{box-shadow:0 0 #4f46e500}}.imitra-launcher-shine{pointer-events:none;border-radius:999px;position:absolute;inset:0;overflow:hidden}.imitra-launcher-shine:after{content:"";background:linear-gradient(100deg,#0000,#fff6,#0000);width:36%;position:absolute;top:0;bottom:0;left:-60%;transform:skew(-18deg)}.imitra-launcher:hover .imitra-launcher-shine:after{animation:.8s ease-out imitra-shine}@keyframes imitra-shine{0%{left:-60%}to{left:130%}}.imitra-panel{z-index:950;-webkit-backdrop-filter:blur(22px);background:#ffffffd1;border:1px solid #ffffffe6;border-radius:22px;flex-direction:column;width:400px;height:600px;max-height:calc(100vh - 130px);animation:.22s ease-out imitra-rise;display:flex;position:fixed;bottom:96px;right:24px;overflow:hidden;box-shadow:0 32px 64px -16px #0f172a3d}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.imitra-panel{background:var(--surface)}}@keyframes imitra-rise{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.imitra-grab{background:var(--border);border-radius:99px;width:38px;height:4px;margin:8px auto 0;display:block}.imitra-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:18px 18px 15px;display:flex}.imitra-header-ring{background:var(--primary-gradient);border-radius:50%;flex:0 0 46px;width:46px;height:46px;padding:2.5px;display:block}.imitra-header-ring>span{background:var(--surface);border-radius:50%;place-items:center;width:100%;height:100%;display:grid}.imitra-header-id{min-width:0}.imitra-header-name{font-family:var(--imitra-display);letter-spacing:-.015em;color:var(--text-primary);margin:0;font-size:1.22rem;font-weight:700;line-height:1.2}.imitra-header-status{color:var(--text-secondary);align-items:center;gap:6px;margin:1px 0 0;font-size:.72rem;display:flex}.imitra-header-status>i{background:var(--growth-green);border-radius:50%;flex:0 0 6px;width:6px;height:6px}.imitra-header-actions{gap:5px;margin-left:auto;display:flex}.imitra-iconbtn{width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:#0f172a0d;border:0;border-radius:9px;place-items:center;transition:background .15s,color .15s;display:grid}.imitra-iconbtn:hover{color:var(--text-primary);background:#0f172a1a}.imitra-iconbtn:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px}.imitra-body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#4f46e559 transparent;flex:1;padding:18px;overflow-y:auto}.imitra-body::-webkit-scrollbar{width:6px}.imitra-body::-webkit-scrollbar-thumb{background:#4f46e54d;border-radius:99px}.imitra-eyebrow{font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary);margin:0 0 10px;font-size:.66rem;font-weight:700}.imitra-greet{font-family:var(--imitra-display);letter-spacing:-.02em;color:var(--text-primary);margin:0 0 7px;font-size:1.42rem;font-weight:700;line-height:1.3}.imitra-greet>span{background:var(--primary-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.imitra-greet-sub{color:var(--text-secondary);margin:0 0 18px;font-size:.83rem;line-height:1.6}.imitra-suggestions{flex-direction:column;gap:9px;display:flex}.imitra-suggestion{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:100%;color:var(--text-primary);font-family:var(--font-heading);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:11px 14px;font-size:.82rem;font-weight:600;transition:border-color .15s,transform .15s;display:flex}.imitra-suggestion:hover{border-color:var(--primary-blue);transform:translate(2px)}.imitra-suggestion:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px}.imitra-suggestion>svg{color:var(--primary-blue);flex:none}.imitra-thread{flex-direction:column;display:flex}.imitra-row{align-items:flex-end;gap:9px;margin-bottom:12px;display:flex}.imitra-row-user{justify-content:flex-end;margin-top:8px}.imitra-row-indent{padding-left:37px}.imitra-avatar{width:28px;height:28px;color:var(--on-primary);border-radius:50%;flex:0 0 28px;place-items:center;display:grid}.imitra-bubble{max-width:78%;font-family:var(--font-body);padding:11px 14px;font-size:.83rem;line-height:1.55}.imitra-bubble-bot{border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);border-radius:16px 16px 16px 4px}.imitra-bubble-user{background:var(--primary-blue);color:var(--on-primary);border-radius:16px 16px 4px}.imitra-typing{border:1px solid var(--border);background:var(--bg-secondary);border-radius:16px 16px 16px 4px;gap:4px;width:fit-content;padding:13px 15px;display:flex}.imitra-typing>i{background:var(--text-secondary);border-radius:50%;width:6px;height:6px;animation:1.3s ease-in-out infinite imitra-blink}.imitra-typing>i:nth-child(2){animation-delay:.18s}.imitra-typing>i:nth-child(3){animation-delay:.36s}.imitra-card{border:1px solid var(--border);background:var(--surface);width:100%;box-shadow:var(--card-shadow);border-radius:12px;padding:13px 15px}.imitra-card-title{font-family:var(--font-heading);color:var(--text-primary);align-items:center;gap:7px;margin:0 0 8px;font-size:.83rem;font-weight:600;display:flex}.imitra-card-title>svg{color:var(--primary-blue);flex:none}.imitra-card-note{color:var(--text-secondary);margin:0 0 10px;font-size:.76rem;line-height:1.5}.imitra-card-cols{color:var(--text-secondary);grid-template-columns:1fr 1fr;gap:12px;font-size:.74rem;display:grid}.imitra-card-cols b{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:4px;font-size:.76rem;display:block}.imitra-card-cols ul{margin:0;padding-left:15px;line-height:1.7}.imitra-card-cta{border-radius:var(--radius-md);background:var(--primary-gradient);width:100%;color:var(--on-primary);font-family:var(--font-heading);cursor:pointer;border:0;margin-top:11px;padding:9px;font-size:.8rem;font-weight:600;transition:filter .15s;display:block}.imitra-card-cta:hover{filter:brightness(1.07)}.imitra-card-cta:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px}.imitra-quickreplies{flex-wrap:wrap;gap:7px;margin-bottom:12px;padding-left:37px;display:flex}.imitra-quickreply{border-radius:var(--radius-md);color:var(--primary-blue);font-family:var(--font-heading);cursor:pointer;background:#4f46e50f;border:1px solid #4f46e547;align-items:center;gap:5px;padding:7px 12px;font-size:.75rem;font-weight:600;transition:background .15s;display:inline-flex}.imitra-quickreply:hover{background:#4f46e521}.imitra-quickreply:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px}.imitra-footer{border-top:1px solid var(--border);padding:13px 18px 15px}.imitra-composer{border:1px solid var(--border);background:var(--surface);border-radius:13px;align-items:center;gap:9px;padding:8px 8px 8px 14px;transition:border-color .15s;display:flex}.imitra-composer:focus-within{border-color:var(--primary-blue)}.imitra-input{min-width:0;color:var(--text-primary);font-family:var(--font-body);background:0 0;border:0;flex:1;font-size:.83rem}.imitra-input:focus{outline:none}.imitra-input::placeholder{color:var(--text-secondary)}.imitra-send{background:var(--primary-gradient);width:36px;height:36px;color:var(--on-primary);cursor:pointer;border:0;border-radius:50%;flex:0 0 36px;place-items:center;transition:filter .15s,opacity .15s;display:grid;box-shadow:0 6px 14px -4px #4f46e58c}.imitra-send:hover:not(:disabled){filter:brightness(1.08)}.imitra-send:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.imitra-send:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px}.imitra-trust{text-align:center;color:var(--text-secondary);margin:9px 0 0;font-size:.68rem;line-height:1.4}[data-theme=dark] .imitra-panel{background:#1e293be0;border-color:#ffffff14;box-shadow:0 32px 64px -16px #0000008c}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){[data-theme=dark] .imitra-panel{background:var(--surface)}}[data-theme=dark] .imitra-iconbtn{background:#ffffff12}[data-theme=dark] .imitra-iconbtn:hover{background:#ffffff21}[data-theme=dark] .imitra-quickreply{color:#a5b4fc;background:#818cf81f;border-color:#818cf859}[data-theme=dark] .imitra-quickreply:hover{background:#818cf833}[data-theme=dark] .imitra-suggestion>svg,[data-theme=dark] .imitra-card-title>svg{color:#a5b4fc}@media (max-width:639px){.imitra-launcher{justify-content:center;width:56px;padding:0;bottom:16px;right:16px}.imitra-launcher-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.imitra-launcher-dot{top:2px;right:2px}.imitra-panel-sheet{border:0;border-radius:0;width:100%;height:100%;max-height:none;animation:.24s ease-out imitra-slide;inset:0}.imitra-panel-sheet .imitra-footer{padding-bottom:calc(15px + env(safe-area-inset-bottom,0px))}@keyframes imitra-slide{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}}@media (prefers-reduced-motion:reduce){.imitra-panel,.imitra-panel-sheet{animation:none}.imitra-launcher,.imitra-suggestion,.imitra-iconbtn,.imitra-send,.imitra-card-cta,.imitra-quickreply{transition:none}.imitra-launcher:hover,.imitra-suggestion:hover{transform:none}.imitra-typing>i{opacity:.6;animation:none}.imitra-launcher,.imitra-launcher-dot,.imitra-launcher-halo,.imitra-face-eye,.imitra-launcher:hover .imitra-face-eye,.imitra-launcher:hover .imitra-launcher-shine:after{animation:none}.imitra-face,.imitra-launcher:hover .imitra-face{transition:none;transform:none}.imitra-launcher{background-position:0%}.imitra-launcher:active{transform:none}}.imitra-qq-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);flex-direction:column;gap:8px;margin-bottom:10px;padding:14px;display:flex}.imitra-qq-title{font-family:var(--font-heading);color:var(--primary-blue);align-items:center;gap:6px;margin-bottom:2px;font-size:.8rem;font-weight:600;display:flex}.imitra-qq-input,.imitra-qq-textarea{border:1px solid var(--border);border-radius:var(--radius-sm,6px);background:var(--bg-secondary);width:100%;color:var(--text-primary);font-family:var(--font-body);box-sizing:border-box;padding:8px 10px;font-size:.78rem}.imitra-qq-input:focus,.imitra-qq-textarea:focus{border-color:var(--primary-blue);background:var(--surface);outline:none}.imitra-qq-textarea{resize:vertical;min-height:48px}.imitra-qq-btn{border-radius:var(--radius-md,8px);background:var(--primary-gradient);color:var(--on-primary);font-family:var(--font-heading);cursor:pointer;border:0;justify-content:center;align-items:center;gap:6px;margin-top:2px;padding:8px 14px;font-size:.78rem;font-weight:600;transition:filter .15s;display:inline-flex}.imitra-qq-btn:hover:not(:disabled){filter:brightness(1.08)}.imitra-qq-btn:disabled{opacity:.6;cursor:not-allowed}.imitra-qq-error{border-radius:var(--radius-md);color:#b91c1c;background:#dc262614;border:1px solid #dc262640;margin:0 0 8px;padding:8px 10px;font-size:.76rem;line-height:1.45}[data-theme=dark] .imitra-qq-error{color:#fca5a5;background:#f871711f;border-color:#f8717159}.imitra-qq-success{border-radius:var(--radius-md);background:#22c55e14;border:1px solid #22c55e40;align-items:flex-start;gap:10px;margin-bottom:10px;padding:12px 14px;display:flex}.imitra-qq-success-icon{color:#16a34a;flex-shrink:0;margin-top:2px}.imitra-qq-success b{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:2px;font-size:.82rem;display:block}.imitra-qq-success p{color:var(--text-secondary);margin:0;font-size:.76rem;line-height:1.45}
.pwa-install{z-index:900;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:380px;box-shadow:var(--card-shadow-hover);align-items:center;gap:12px;padding:14px 16px;animation:.28s ease-out both pwa-rise;display:flex;position:fixed;bottom:20px;left:20px}@keyframes pwa-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.pwa-install{animation:none}}.pwa-install-icon{background:color-mix(in srgb, var(--primary-color) 12%, transparent);width:38px;height:38px;color:var(--primary-color);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pwa-install-body{flex:1;min-width:0}.pwa-install-title{color:var(--text-primary);margin:0 0 2px;font-size:.9rem;font-weight:600;line-height:1.35}.pwa-install-text{color:var(--text-secondary);margin:0;font-size:.8rem;line-height:1.45}.pwa-install-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.pwa-install-btn{background:var(--primary-color);color:var(--on-primary);cursor:pointer;border:0;border-radius:8px;min-height:40px;padding:9px 16px;font-family:inherit;font-size:.85rem;font-weight:600;transition:opacity .2s}.pwa-install-btn:hover{opacity:.9}.pwa-install-btn:focus-visible,.pwa-install-close:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.pwa-install-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;min-width:36px;min-height:40px;padding:8px;transition:color .2s;display:flex}.pwa-install-close:hover{color:var(--text-primary)}@media (max-width:639px){.pwa-install{max-width:none;left:12px;right:12px;bottom:calc(84px + env(safe-area-inset-bottom,0px))}}
.exit-offer-backdrop{z-index:1100;background:#0f172a8c;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out both exit-fade;display:flex;position:fixed;inset:0}.exit-offer{--offer-gradient:linear-gradient(120deg, #f97316 0%, #ec4899 52%, #8b5cf6 100%);--offer-accent:#f97316;background:var(--surface);width:100%;max-width:520px;max-height:calc(100dvh - 32px);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-xl);animation:.25s ease-out both exit-rise;position:relative;overflow:hidden auto;box-shadow:0 30px 60px -12px #0f172a73}@keyframes exit-fade{0%{opacity:0}to{opacity:1}}@keyframes exit-rise{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.exit-offer-backdrop,.exit-offer,.exit-pill{animation:none}}.exit-offer-head{background:var(--offer-gradient);color:#fff;text-align:center;padding:22px 48px 20px;position:relative}.exit-offer-spark{opacity:.9;margin:0 auto 6px;display:block}.exit-offer-close{color:#fff;cursor:pointer;background:#ffffff29;border:none;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;top:12px;right:12px}.exit-offer-close:hover,.exit-offer-close:focus-visible{background:#ffffff4d}.exit-offer-title{font-family:var(--font-heading);color:#fff;margin:0 0 6px;font-size:clamp(1.3rem,4.5vw,1.6rem);line-height:1.25}.exit-offer-body{color:#ffffffeb;max-width:400px;margin:0 auto;font-size:.95rem;line-height:1.5}.exit-offer-main{flex-direction:column;gap:14px;padding:18px 24px 16px;display:flex}.exit-offer-badge{background:var(--offer-gradient);color:#fff;border-radius:999px;align-self:center;padding:6px 14px;font-size:.85rem;font-weight:700;box-shadow:0 6px 16px -6px #ec489999}.exit-offer-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.exit-offer-list li{align-items:flex-start;gap:10px;display:flex}.exit-offer-list svg{color:var(--growth-green);flex-shrink:0;margin-top:1px}.exit-offer-list strong{color:var(--text-primary);font-size:.93rem;display:block}.exit-offer-list small{color:var(--text-secondary);font-size:.82rem;display:block}.exit-offer-timer{border:1px solid color-mix(in srgb, var(--offer-accent) 45%, transparent);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--offer-accent) 9%, transparent);color:var(--offer-accent);justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-weight:600;display:flex}.exit-offer-clock{font-family:var(--font-heading);font-variant-numeric:tabular-nums;font-size:1.5rem;line-height:1}.exit-offer-clock-sub{font-variant-numeric:tabular-nums;opacity:.85;font-size:.95rem}.exit-offer-timer{flex-wrap:wrap}.exit-offer-timer.is-expired{border-color:var(--border);background:var(--bg-secondary);color:var(--text-secondary)}.exit-offer-plans{grid-template-columns:1fr 1fr;gap:12px;display:grid}.exit-offer-pay{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-secondary);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;flex-direction:column;gap:6px;padding:14px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative}.exit-offer-pay.is-best{border-color:#ec489999}.exit-offer-pay:hover:not(:disabled),.exit-offer-pay:focus-visible{border-color:#ec4899;transform:translateY(-2px);box-shadow:0 12px 24px -12px #ec48998c}.exit-offer-pay:disabled{opacity:.5;cursor:not-allowed}.exit-offer-best{background:var(--offer-gradient);color:#fff;border-radius:999px;padding:2px 10px;font-size:.72rem;font-weight:700;position:absolute;top:-10px;right:12px}.exit-offer-plan-name{font-size:.88rem;font-weight:600;line-height:1.3}.exit-offer-price{align-items:baseline;gap:8px;margin-top:auto;display:flex}.exit-offer-price s{color:var(--text-secondary);font-size:.88rem}.exit-offer-price strong{font-family:var(--font-heading);color:var(--text-primary);font-size:1.45rem}.exit-offer-cta{border-radius:var(--radius-md);background:var(--offer-gradient);color:#fff;justify-content:center;align-items:center;gap:8px;padding:11px 12px;font-size:.95rem;font-weight:700;display:flex}.exit-offer-fine{text-align:center;color:var(--text-secondary);margin:0;font-size:.8rem}@media (max-width:520px){.exit-offer-head{padding:18px 44px 16px}.exit-offer-spark{display:none}.exit-offer-main{gap:12px;padding:16px 14px 14px}.exit-offer-list small{display:none}.exit-offer-plans{gap:10px}.exit-offer-pay{padding:12px 10px 10px}.exit-offer-plan-name{font-size:.8rem}.exit-offer-price{flex-wrap:wrap;gap:2px 6px}.exit-offer-price strong{font-size:1.25rem}.exit-offer-cta{gap:4px;padding:10px 6px;font-size:.86rem}}@media (max-width:340px){.exit-offer-plans{grid-template-columns:1fr}}.exit-pill{z-index:901;color:#fff;box-shadow:var(--card-shadow-hover);background:linear-gradient(120deg,#f97316 0%,#ec4899 52%,#8b5cf6 100%);border-radius:999px;align-items:center;animation:.25s ease-out both exit-rise;display:flex;position:fixed;bottom:20px;left:20px}.exit-pill-open,.exit-pill-close{color:inherit;cursor:pointer;font:inherit;background:0 0;border:none;align-items:center;gap:8px;display:flex}.exit-pill-open{padding:10px 6px 10px 16px;font-size:.9rem}.exit-pill-open strong{font-variant-numeric:tabular-nums}.exit-pill-close{opacity:.8;padding:10px 14px 10px 6px}.exit-pill-close:hover,.exit-pill-close:focus-visible{opacity:1}
.cs-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);margin-bottom:24px;padding:22px 24px}.cs-header{margin-bottom:16px}.cs-header h3{font-family:var(--font-heading);color:var(--text-primary);margin:0 0 4px;font-size:1.1rem}.cs-sub{color:var(--text-secondary);font-size:.83rem;line-height:1.5}.cs-bar{background:var(--bg-secondary);border-radius:999px;height:8px;margin-bottom:18px;display:flex;overflow:hidden}.cs-bar-seg{height:100%}.cs-bar-seg--b2b{background:var(--primary-color)}.cs-bar-seg--b2c{background:var(--growth-green)}.cs-grid{grid-template-columns:1fr;gap:14px;display:grid}@media (min-width:720px){.cs-grid{grid-template-columns:1fr 1fr}}.cs-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);padding:16px 18px}.cs-card--b2b{border-top:3px solid var(--primary-color)}.cs-card--b2c{border-top:3px solid var(--growth-green)}.cs-card-head{align-items:center;gap:9px;margin-bottom:14px;display:flex}.cs-icon{background:var(--surface);width:28px;height:28px;color:var(--text-secondary);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cs-card--b2b .cs-icon{color:var(--primary-color)}.cs-card--b2c .cs-icon{color:var(--growth-green)}.cs-title{color:var(--text-primary);flex:1;font-size:.95rem;font-weight:700}.cs-share{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.cs-metrics{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;display:grid}.cs-metrics dt{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:3px;font-size:.74rem}.cs-metrics dd{font-family:var(--font-heading);color:var(--text-primary);font-variant-numeric:tabular-nums;margin:0;font-size:1.25rem;font-weight:700;line-height:1.2}.cs-revenue{align-items:center;gap:1px;display:inline-flex;color:var(--growth-green)!important}.cs-na{font-family:var(--font-body)!important;color:var(--text-secondary)!important;font-size:.82rem!important;font-weight:500!important;line-height:1.4!important}.cs-products{border-top:1px solid var(--border);gap:7px;margin:14px 0 0;padding:12px 0 0;list-style:none;display:grid}.cs-products li{color:var(--text-secondary);justify-content:space-between;gap:12px;font-size:.82rem;display:flex}.cs-product-figures{color:var(--text-primary);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.cs-guest{border-top:1px dashed var(--border);margin-top:10px;padding-top:10px}.cs-guest .cs-warn{color:var(--error-rose);font-weight:600}
.admin-dashboard-container,.admin-loading-container{flex-direction:column;gap:30px;display:flex}.skeleton-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;display:grid}.skeleton-card{border-radius:var(--radius-lg);background-color:#e2e8f0;height:120px}.skeleton-row{border-radius:var(--radius-lg);background-color:#e2e8f0}.skeleton-pulse{animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%{opacity:.6}50%{opacity:.3}to{opacity:.6}}.admin-error-container{text-align:center;background-color:var(--white);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);flex-direction:column;align-items:center;gap:16px;max-width:500px;margin:40px auto;padding:60px 20px;display:flex}.error-icon{color:var(--error-rose)}.dashboard-welcome-banner{background:var(--primary-gradient);color:var(--on-primary);border-radius:var(--radius-lg);align-items:center;padding:24px 30px;display:flex;box-shadow:0 10px 25px #4f46e526}.banner-left{align-items:center;gap:18px;display:flex}.sparkle-icon{box-sizing:content-box;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border-radius:50%;padding:8px}.dashboard-welcome-banner h2{color:var(--on-primary);margin-bottom:4px;font-size:1.4rem;font-weight:700}.dashboard-welcome-banner p{color:#ffffffe6;font-size:.92rem}.stats-cards-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.stat-card-custom{background-color:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);flex-direction:column;justify-content:space-between;gap:16px;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.stat-card-custom.clickable:hover{box-shadow:var(--card-shadow-hover);cursor:pointer;border-color:#cbd5e1;transform:translateY(-4px)}.stat-card-top{justify-content:space-between;align-items:flex-start;display:flex}.stat-title{color:var(--light-text);font-size:.88rem;font-weight:600;font-family:var(--font-heading)}.stat-icon-wrapper{border-radius:8px;justify-content:center;align-items:center;padding:8px;display:flex}.stat-icon-wrapper.indigo{color:#6366f1;background-color:#6366f126}.stat-icon-wrapper.blue{color:#0ea5e9;background-color:#0ea5e926}.stat-icon-wrapper.emerald{color:#10b981;background-color:#10b98126}.stat-icon-wrapper.orange{color:#f97316;background-color:#f9731626}.stat-icon-wrapper.violet{color:#8b5cf6;background-color:#8b5cf626}.stat-icon-wrapper.purple{color:#a855f7;background-color:#a855f726}.stat-card-bottom{justify-content:space-between;align-items:baseline;display:flex}.stat-value{color:var(--dark-text);font-size:1.85rem;font-weight:700;font-family:var(--font-heading);line-height:1}.stat-delta{color:var(--light-text);font-size:.78rem;font-weight:600}.dashboard-content-grid{grid-template-columns:1fr 300px;align-items:start;gap:24px;display:grid}.grid-main-column{flex-direction:column;gap:24px;display:flex}.dashboard-card-custom{background-color:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);padding:24px}.card-header-custom{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:14px;display:flex}.card-header-custom h3{color:var(--dark-text);font-size:1.12rem;font-weight:700}.badge-pill{color:var(--light-text);background-color:#f1f5f9;border-radius:9999px;padding:3px 8px;font-size:.72rem;font-weight:600}.activity-tabs-container{flex-direction:column;gap:24px;display:flex}.activity-section{flex-direction:column;gap:12px;display:flex}.section-title-icon{color:var(--light-text);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:8px;font-size:.9rem;font-weight:700;display:flex}.activity-list{flex-direction:column;gap:8px;display:flex}.activity-item-custom{background-color:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:12px 16px;transition:all .2s;display:flex}.activity-item-custom:hover{background-color:var(--bg-secondary);border-color:var(--border)}.activity-details{flex-direction:column;gap:2px;display:flex}.activity-name{color:var(--dark-text);align-items:center;gap:8px;font-size:.92rem;font-weight:600;display:flex}.activity-sub{color:var(--light-text);font-size:.78rem}.activity-time{color:var(--light-text);margin-top:2px;font-size:.75rem}.status-badge-custom{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;width:fit-content;padding:2px 6px;font-size:.68rem;font-weight:700}.status-badge-custom.active{color:var(--growth-green);background-color:#10b98126}.status-badge-custom.published{color:var(--primary-blue);background-color:#4f46e526}.status-badge-custom.closed{background-color:var(--bg-secondary);color:var(--text-secondary)}.status-badge-custom.draft{color:var(--energetic-orange);background-color:#f59e0b26}.item-arrow{color:var(--light-text);cursor:pointer;transition:transform .2s,color .2s}.item-arrow:hover,.activity-item-custom:hover .item-arrow{color:var(--primary-blue);transform:translate(2px)}.empty-feed-text{color:var(--light-text);padding:10px;font-size:.88rem;font-style:italic}.school-admin-focus-area{flex-direction:column;gap:24px;display:flex}.active-event-hero{background:var(--surface);border:1px solid var(--border-color);border-left:5px solid var(--primary-blue);flex-direction:column;gap:16px;display:flex;position:relative}.hero-badge{color:#065f46;text-transform:uppercase;letter-spacing:.05em;background-color:#d1fae5;border-radius:6px;width:fit-content;padding:4px 8px;font-size:.72rem;font-weight:700}.active-event-hero h3{color:var(--dark-text);font-size:1.35rem;font-weight:700}.hero-dates{color:var(--light-text);align-items:center;gap:6px;font-size:.88rem;display:flex}.hero-progress-stats{background-color:var(--light-gray);border-radius:var(--radius-md);border:1px solid var(--border-color);flex-direction:column;gap:8px;padding:16px;display:flex}.stat-row{color:var(--light-text);justify-content:space-between;font-size:.88rem;font-weight:600;display:flex}.bold-percent{color:var(--dark-text);font-weight:700}.progress-bar-container{background-color:#cbd5e1;border-radius:9999px;height:8px;overflow:hidden}.progress-bar-fill{background:var(--primary-gradient);border-radius:9999px;height:100%;transition:width .5s ease-out}.hero-button-group{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.hero-button-group .btn{min-height:40px;padding:10px 20px;font-size:.9rem}.empty-state-hero{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:40px 20px;display:flex}.warning-icon{color:var(--energetic-orange)}.table-card{padding:20px 24px}.table-responsive-custom{overflow-x:auto}.dashboard-table-custom{border-collapse:collapse;text-align:left;width:100%}.dashboard-table-custom th{border-bottom:2px solid var(--border-color);color:var(--light-text);font-size:.85rem;font-weight:600;font-family:var(--font-heading);padding:12px 16px}.dashboard-table-custom td{border-bottom:1px solid var(--border-color);color:var(--dark-text);padding:14px 16px;font-size:.9rem}.clickable-row{cursor:pointer;transition:background-color .2s}.clickable-row:hover{background-color:#fafbfc}.empty-table-text{color:var(--light-text);text-align:center;padding:20px 0;font-size:.9rem;font-style:italic}.sidebar-action-card{position:sticky;top:94px}.quick-actions-list{flex-direction:column;gap:12px;display:flex}.action-button-custom{background-color:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:left;align-items:center;gap:14px;width:100%;padding:12px;transition:all .2s;display:flex}.action-button-custom:hover{background-color:var(--light-gray);border-color:#cbd5e1;transform:translateY(-1px)}.action-icon-wrap{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.action-icon-wrap.indigo{color:#8b5cf6;background-color:#7c3aed26}.action-icon-wrap.emerald{color:#10b981;background-color:#10b98126}.action-icon-wrap.purple{color:#a855f7;background-color:#a855f726}.action-icon-wrap.orange{color:#f97316;background-color:#f9731626}.action-icon-wrap.violet{color:#0ea5e9;background-color:#0ea5e926}.action-btn-text{flex-direction:column;display:flex}.action-btn-text span{color:var(--dark-text);font-size:.88rem;font-weight:700}.action-btn-text small{color:var(--light-text);margin-top:1px;font-size:.72rem}.admin-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#0f172a66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.admin-modal-content{background-color:var(--white);border-radius:var(--radius-lg);flex-direction:column;gap:16px;width:100%;max-width:480px;padding:24px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;display:flex;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.modal-header-custom{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.modal-header-custom h3{color:var(--dark-text);font-size:1.15rem;font-weight:700}.close-modal-btn{color:var(--light-text);cursor:pointer;background:0 0;border:none;font-size:1.5rem;line-height:1}.close-modal-btn:hover{color:var(--dark-text)}.modal-instruction-text{color:var(--light-text);font-size:.88rem;line-height:1.4}.form-group-custom{flex-direction:column;gap:6px;display:flex}.form-group-custom label{color:var(--dark-text);font-size:.85rem;font-weight:600}.form-group-custom input{border:1px solid var(--border-color);border-radius:var(--radius-md);outline:none;padding:10px 12px;font-size:.9rem;transition:border-color .2s}.form-group-custom input:focus{border-color:var(--primary-blue)}.modal-success-banner{color:#2e7d32;background-color:#e8f5e9;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;display:flex}.modal-error-banner{color:#dc2626;background-color:#fee2e2;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;display:flex}.modal-footer-custom{border-top:1px solid var(--border-color);justify-content:flex-end;gap:12px;padding-top:16px;display:flex}.modal-footer-custom .btn{min-height:38px;padding:8px 16px;font-size:.88rem}@media (max-width:991px){.dashboard-content-grid{grid-template-columns:1fr}.sidebar-action-card{position:static}}@media (max-width:576px){.dashboard-welcome-banner{padding:20px}.hero-button-group{flex-direction:column}.hero-button-group .btn{width:100%}}
.acct-grid{grid-template-columns:1fr;align-items:start;gap:24px;display:grid}@media (min-width:900px){.acct-grid{grid-template-columns:minmax(260px,320px) 1fr}}.acct-identity{text-align:center;flex-direction:column;align-items:center;padding:36px 26px;display:flex}.acct-avatar{background:var(--primary-gradient);width:80px;height:80px;color:var(--on-primary);border-radius:50%;justify-content:center;align-items:center;margin-bottom:18px;font-size:2rem;font-weight:700;display:flex}.acct-name{color:var(--text-primary);word-break:break-word;margin:0 0 4px;font-size:1.3rem;font-weight:800}.acct-email{color:var(--text-secondary);word-break:break-all;margin:0 0 22px;font-size:.86rem}.acct-role{border-top:1px solid var(--border);text-align:left;width:100%;color:var(--primary-color);align-items:center;gap:12px;padding-top:18px;display:flex}.acct-role small{color:var(--text-secondary);font-size:.74rem;display:block}.acct-role strong{color:var(--text-primary);font-size:.93rem}.acct-details,.acct-school{padding:28px}.acct-details-head{align-items:center;gap:10px;margin-bottom:20px;display:flex}.acct-details-head h3{flex:1;margin:0}.acct-edit-btn{border:1px solid var(--border);border-radius:var(--radius-md);color:var(--primary-color);cursor:pointer;background:0 0;align-items:center;gap:6px;min-height:38px;padding:7px 13px;font-family:inherit;font-size:.85rem;font-weight:600;transition:border-color .2s,background-color .2s;display:inline-flex}.acct-edit-btn:hover{border-color:var(--primary-color);background:color-mix(in srgb, var(--primary-color) 8%, transparent)}.acct-edit-btn:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.acct-fields{grid-template-columns:1fr;gap:16px;margin:0;display:grid}@media (min-width:560px){.acct-fields{grid-template-columns:1fr 1fr}}.acct-fields dt{text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);margin-bottom:4px;font-size:.74rem}.acct-fields dd{color:var(--text-primary);word-break:break-word;margin:0;font-size:.95rem;font-weight:600}.acct-locked{color:var(--text-secondary)!important;font-weight:500!important}.acct-success{border-radius:var(--radius-md);color:var(--growth-green);background:color-mix(in srgb, var(--growth-green) 12%, transparent);border:1px solid color-mix(in srgb, var(--growth-green) 28%, transparent);align-items:center;gap:8px;margin-bottom:16px;padding:10px 12px;font-size:.87rem;display:flex}.acct-form-row{flex-wrap:wrap;gap:16px;display:flex}.acct-form-row>.form-group{flex:190px}.acct-form-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.acct-form-actions .btn{min-height:44px}.acct-school-box{background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border);padding:18px 20px}.acct-school-box h4{color:var(--text-primary);margin:0 0 6px;font-size:1.05rem}.acct-school-box p{color:var(--text-secondary);margin:0;font-size:.86rem}.acct-help{color:var(--text-secondary);margin:0 0 20px;font-size:.88rem;line-height:1.6}
.adminpay-page{padding:4px 0 40px}.adminpay-head h2{color:var(--text-primary);margin:0;font-size:1.6rem;font-weight:800}.adminpay-head p{color:var(--text-secondary);margin:4px 0 24px;font-size:.95rem}.adminpay-totals{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:22px;display:grid}.adminpay-totals>div{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px}.adminpay-totals span{text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);margin-bottom:5px;font-size:.74rem;display:block}.adminpay-totals strong{font-family:var(--font-heading);color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:1.35rem}.adminpay-neg{color:var(--error-rose)}.adminpay-net{color:var(--growth-green)}.adminpay-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;display:flex}.adminpay-search{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);min-height:44px;color:var(--text-secondary);flex:260px;align-items:center;gap:8px;padding:0 12px;display:flex}.adminpay-search input{color:var(--text-primary);background:0 0;border:0;outline:none;flex:1;min-height:42px;font-family:inherit;font-size:.92rem}.adminpay-filters{flex-wrap:wrap;gap:6px;display:flex}.adminpay-filter{background:var(--surface);border:1px solid var(--border);min-height:40px;color:var(--text-secondary);cursor:pointer;border-radius:999px;padding:8px 15px;font-family:inherit;font-size:.85rem;font-weight:600;transition:border-color .2s,background-color .2s,color .2s}.adminpay-filter:hover{border-color:var(--primary-color)}.adminpay-filter.active{background:var(--primary-color);border-color:var(--primary-color);color:var(--on-primary)}.adminpay-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow-x:auto}.adminpay-table{border-collapse:collapse;width:100%;min-width:820px}.adminpay-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);border-bottom:1px solid var(--border);background:var(--bg-secondary);white-space:nowrap;padding:13px 16px;font-size:.72rem}.adminpay-table td{border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:top;padding:14px 16px;font-size:.9rem}.adminpay-table tr:last-child td{border-bottom:none}.adminpay-table .num{text-align:right;font-variant-numeric:tabular-nums}.adminpay-student{font-weight:600}.adminpay-sub{color:var(--text-secondary);margin-top:2px;font-size:.8rem}.adminpay-badge{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:.74rem;font-weight:700;display:inline-block}.adminpay-badge--paid{background:color-mix(in srgb, var(--growth-green) 15%, transparent);color:var(--growth-green)}.adminpay-badge--refunded{background:color-mix(in srgb, var(--error-rose) 15%, transparent);color:var(--error-rose)}.adminpay-badge--pending{background:color-mix(in srgb, var(--energetic-orange) 18%, transparent);color:var(--energetic-orange)}.adminpay-refund-btn{border:1px solid var(--border);border-radius:var(--radius-md);min-height:38px;color:var(--error-rose);cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:6px;padding:7px 13px;font-family:inherit;font-size:.83rem;font-weight:600;transition:border-color .2s,background-color .2s;display:inline-flex}.adminpay-refund-btn:hover{border-color:var(--error-rose);background:color-mix(in srgb, var(--error-rose) 8%, transparent)}.adminpay-empty{text-align:center;color:var(--text-secondary);padding:48px}.adminpay-success,.adminpay-error{border-radius:var(--radius-md);align-items:center;gap:9px;margin-bottom:18px;padding:12px 15px;font-size:.9rem;display:flex}.adminpay-success{color:var(--growth-green);background:color-mix(in srgb, var(--growth-green) 12%, transparent);border:1px solid color-mix(in srgb, var(--growth-green) 28%, transparent)}.adminpay-error{color:var(--error-rose);background:color-mix(in srgb, var(--error-rose) 12%, transparent);border:1px solid color-mix(in srgb, var(--error-rose) 28%, transparent)}.adminpay-overlay{z-index:1000;background:#0f172a8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.adminpay-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow-hover);width:100%;max-width:460px;max-height:90vh;padding:24px;overflow-y:auto}.adminpay-modal-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.adminpay-modal-head h3{font-family:var(--font-heading);color:var(--text-primary);margin:0;font-size:1.15rem}.adminpay-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px;display:flex}.adminpay-close:hover{color:var(--text-primary)}.adminpay-modal-summary{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);gap:9px;margin-bottom:18px;padding:14px 16px;display:grid}.adminpay-modal-summary>div{justify-content:space-between;gap:12px;font-size:.87rem;display:flex}.adminpay-modal-summary span{color:var(--text-secondary)}.adminpay-modal-summary strong{color:var(--text-primary);text-align:right;word-break:break-all}.adminpay-note{border-radius:var(--radius-md);color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border);align-items:flex-start;gap:9px;margin-bottom:18px;padding:11px 13px;font-size:.84rem;line-height:1.55;display:flex}.adminpay-note svg{color:var(--primary-color);flex-shrink:0;margin-top:2px}.adminpay-note--sent svg{color:var(--growth-green)}.adminpay-locked-amount{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:16px;padding:13px 15px}.adminpay-locked-amount>span:first-child{text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);margin-bottom:4px;font-size:.74rem;display:block}.adminpay-locked-amount strong{font-family:var(--font-heading);color:var(--text-primary);font-size:1.4rem;display:block}.adminpay-hint{color:var(--text-secondary);margin-top:5px;font-size:.78rem;display:block}.adminpay-code-input{letter-spacing:.4em;text-align:center;font-family:monospace;font-size:1.5rem;font-weight:700}.adminpay-actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.adminpay-actions .btn{min-height:44px}.adminpay-guest-state{flex-wrap:wrap;align-items:center;gap:7px;margin-top:5px;display:flex}.adminpay-tag{letter-spacing:.03em;text-transform:uppercase;background:color-mix(in srgb, var(--primary-color) 14%, transparent);color:var(--primary-color);border-radius:999px;padding:1px 7px;font-size:.68rem;font-weight:700;display:inline-block}.adminpay-undelivered{color:var(--error-rose);font-size:.78rem;font-weight:600}.adminpay-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.adminpay-resend-btn{min-height:34px;color:var(--text-primary);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;font-weight:600;display:inline-flex}.adminpay-resend-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.adminpay-resend-btn:disabled{opacity:.55;cursor:not-allowed}.adminpay-overlay--drawer{justify-content:flex-end;align-items:stretch;padding:0}.adminpay-drawer{background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--card-shadow-hover);width:min(520px,100%);height:100%;padding:22px 22px 40px;overflow-y:auto}.adminpay-section{border-top:1px solid var(--border);padding:16px 0}.adminpay-section:first-of-type{border-top:none;padding-top:4px}.adminpay-section-title{color:var(--text-primary);align-items:center;gap:6px;margin:0 0 12px;font-size:.92rem;display:flex}.adminpay-dl{grid-template-columns:120px 1fr;gap:10px 14px;margin:0 0 14px;font-size:.88rem;display:grid}.adminpay-dl dt{color:var(--text-secondary)}.adminpay-dl dd{color:var(--text-primary);overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;margin:0;display:flex}.adminpay-mono{color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem}.adminpay-passkey-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.adminpay-passkey{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.adminpay-passkey code{letter-spacing:.2em;border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);text-align:center;min-width:150px;padding:8px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.15rem;font-weight:700}.adminpay-resend-block{flex-direction:column;align-items:flex-start;gap:10px;margin-top:16px;display:flex}.adminpay-resend-block .btn{overflow-wrap:anywhere;align-items:center;gap:8px;max-width:100%;min-height:42px;display:inline-flex}.adminpay-link-btn{color:var(--primary-color);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}.adminpay-other-form{flex-direction:column;gap:8px;width:100%;display:flex}.adminpay-other-form input{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:100%;color:var(--text-primary);padding:10px 12px;font-size:.9rem}.adminpay-timeline{border-left:2px solid var(--border);gap:12px;margin:0;padding:0 0 0 14px;list-style:none;display:grid}.adminpay-timeline li{flex-direction:column;gap:1px;font-size:.86rem;display:flex;position:relative}.adminpay-timeline li:before{content:"";background:var(--text-secondary);border-radius:50%;width:10px;height:10px;position:absolute;top:4px;left:-20px}.adminpay-timeline--good:before{background:var(--growth-green)!important}.adminpay-timeline--bad:before{background:var(--error-rose)!important}.adminpay-timeline-label{color:var(--text-primary);font-weight:600}@media (max-width:520px){.adminpay-dl{grid-template-columns:1fr;gap:2px}.adminpay-dl dt{margin-top:8px}}.adminpay-settings fieldset{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);max-width:760px;margin:0 0 18px;padding:18px 20px 6px}.adminpay-settings legend{color:var(--text-primary);padding:0 6px;font-weight:700}.adminpay-settings .form-group{flex-direction:column;gap:6px;min-width:0;margin-bottom:14px;display:flex}.adminpay-settings input,.adminpay-settings textarea{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:100%;color:var(--text-primary);font:inherit;padding:10px 12px;font-size:.92rem}.adminpay-settings input:disabled{opacity:.55}.adminpay-settings-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.adminpay-settings .adminpay-note{margin-bottom:14px}@media (max-width:640px){.adminpay-settings-row{grid-template-columns:1fr}}.adminpay-stuck{border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--error-rose) 40%, transparent);background:color-mix(in srgb, var(--error-rose) 8%, transparent);color:var(--text-primary);align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 14px;font-size:.86rem;display:flex}.adminpay-stuck svg{color:var(--error-rose);flex-shrink:0;margin-top:2px}.adminpay-stuck>div{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.adminpay-stuck span{color:var(--text-secondary);line-height:1.5}.adminpay-stuck .btn{min-height:38px;margin-top:4px}.adminpay-policy{border-radius:var(--radius-md);color:var(--text-secondary);flex-direction:column;gap:4px;margin-bottom:14px;padding:12px 14px;font-size:.86rem;line-height:1.5;display:flex}.adminpay-policy strong{color:var(--text-primary)}.adminpay-policy--within{border:1px solid color-mix(in srgb, var(--growth-green) 40%, transparent);background:color-mix(in srgb, var(--growth-green) 8%, transparent)}.adminpay-policy--outside{border:1px solid color-mix(in srgb, var(--energetic-orange) 50%, transparent);background:color-mix(in srgb, var(--energetic-orange) 10%, transparent)}.adminpay-ack{color:var(--text-primary);cursor:pointer;align-items:flex-start;gap:8px;margin-top:8px;font-weight:600;display:flex}.adminpay-ack input{margin-top:3px}.adminpay-refund-row{flex-wrap:wrap;align-items:center;gap:6px 12px;padding:8px 0;font-size:.86rem;display:flex}.adminpay-hint.adminpay-hint--error{color:var(--error-rose);font-weight:600}
.notfound-inner{text-align:center;max-width:560px;padding:80px 0 90px}.notfound-code{color:var(--primary-blue);letter-spacing:.08em;margin:0 0 8px;font-weight:700}.notfound-inner h1{letter-spacing:-.02em;margin:0 0 12px;font-size:1.9rem}.notfound-inner p{color:var(--text-secondary);margin:0 0 24px;line-height:1.7}.notfound-links{flex-wrap:wrap;justify-content:center;gap:10px 22px;margin:0 0 32px;padding:0;list-style:none;display:flex}.notfound-links a{color:var(--primary-blue);font-weight:500}.notfound-inner .btn{align-items:center;gap:8px;display:inline-flex}.container.notfound-inner{max-width:560px;padding:80px 20px 90px}
.samples-hero{text-align:center}.samples-hero-inner h1{margin:14px 0 16px;font-size:clamp(2rem,4.4vw,3rem);line-height:1.2}.samples-walkthrough h2,.samples-cta h2{margin:0 0 14px;font-size:clamp(1.5rem,2.6vw,1.95rem)}.samples-eyebrow{color:var(--primary-blue);letter-spacing:.04em;text-transform:uppercase;background:#4f46e51a;border-radius:999px;padding:5px 12px;font-size:.8rem;font-weight:600;display:inline-block}.samples-lead{max-width:68ch;color:var(--text-secondary);margin:0 auto;line-height:1.7}.samples-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:24px;padding-bottom:56px;display:grid}.samples-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--card-shadow);border-radius:16px;flex-direction:column;padding:28px;display:flex}.samples-card-head{color:var(--primary-blue);align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.samples-card-head svg{flex-shrink:0;margin-top:4px}.samples-card h2{color:var(--text-primary);margin:0 0 4px;font-size:1.35rem}.samples-meta{color:var(--text-secondary);margin:0;font-size:.85rem}.samples-card>p{color:var(--text-secondary);line-height:1.7}.samples-card h3{margin:8px 0 12px;font-size:.95rem}.samples-pages{flex:1;align-content:start;gap:10px;margin:0 0 24px;padding-left:22px;display:grid}.samples-pages li{line-height:1.55}.samples-pages strong{color:var(--text-primary);display:block}.samples-pages span{color:var(--text-secondary);font-size:.93rem}.samples-download{text-align:center;justify-content:center;align-items:center;gap:8px;display:inline-flex}.samples-walkthrough{max-width:760px;padding-bottom:56px}.samples-walkthrough p{color:var(--text-secondary);line-height:1.75}.samples-walkthrough strong{color:var(--text-primary)}.samples-walkthrough a,.samples-cta-link{color:var(--primary-blue);font-weight:500}.samples-cta{border-top:1px solid var(--border);max-width:760px;padding:32px 0 80px}.samples-cta p{color:var(--text-secondary)}.samples-cta-actions{flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:18px;display:flex}.samples-cta-actions .btn{align-items:center;gap:8px;display:inline-flex}.container.samples-list{padding-bottom:56px}.container.samples-walkthrough{max-width:760px;padding-bottom:56px}.container.samples-cta{max-width:760px;padding:32px 20px 80px}
.links-page{background:var(--bg-secondary);min-height:100dvh;padding:40px 16px 32px}.links-inner{max-width:520px;margin:0 auto}.links-head{text-align:center;margin-bottom:28px}.links-logo{object-fit:contain;width:72px;height:72px;box-shadow:var(--card-shadow);background:#fff;border-radius:50%}.links-head h1{margin:14px 0 8px;font-size:1.5rem;line-height:1.25}.links-head p{color:var(--text-secondary);max-width:40ch;margin:0 auto;line-height:1.6}.links-list{flex-direction:column;gap:12px;list-style:none;display:flex}.links-item{border:1px solid var(--border);background:var(--surface);min-height:56px;color:var(--text-primary);box-shadow:var(--card-shadow);border-radius:14px;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.links-item:hover{border-color:var(--primary-blue);box-shadow:var(--card-shadow-hover);transform:translateY(-1px)}.links-item:focus-visible{outline:3px solid var(--primary-blue);outline-offset:2px}.links-item.featured{background:var(--primary-blue);border-color:var(--primary-blue);color:var(--on-primary)}.links-icon,.links-arrow{flex-shrink:0}.links-icon{color:var(--primary-blue)}.links-item.featured .links-icon{color:var(--on-primary)}.links-arrow{opacity:.6;margin-left:auto}.links-text{flex-direction:column;gap:2px;min-width:0;display:flex}.links-label{font-weight:600;line-height:1.35}.links-note{color:var(--text-secondary);font-size:.875rem;line-height:1.45}.links-item.featured .links-note{color:var(--on-primary);opacity:.9}.links-foot{color:var(--text-secondary);flex-wrap:wrap;justify-content:center;gap:8px;margin-top:28px;font-size:.875rem;display:flex}.links-foot a{color:var(--text-secondary)}@media (prefers-reduced-motion:reduce){.links-item{transition:none}.links-item:hover{transform:none}}
.sidebar{background-color:var(--surface);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:260px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:4px 0 20px #0f172a05}.sidebar.collapsed{width:80px}.sidebar-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:70px;padding:0 20px;display:flex}.sidebar.collapsed .sidebar-header{justify-content:center;padding:0}.sidebar-logo{align-items:center;gap:12px;display:flex}.logo-img{width:auto;height:36px}.logo-text{font-family:var(--font-heading);color:var(--text-primary);white-space:nowrap;font-size:1.15rem;font-weight:700}.logo-accent{color:var(--primary-purple)}.collapse-btn{background-color:var(--surface);border:1px solid var(--border);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;z-index:110;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:21px;right:-14px;box-shadow:0 2px 8px #0f172a14}.collapse-btn:hover{background-color:var(--primary-blue);color:var(--on-primary);border-color:var(--primary-blue);transform:scale(1.1)}.sidebar.collapsed .collapse-btn{display:flex}.sidebar-nav{flex:1;padding:20px 12px;overflow-y:auto}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-thumb{background:0 0;border-radius:4px}.sidebar-nav:hover::-webkit-scrollbar-thumb{background:#cbd5e1}.sidebar-nav ul{flex-direction:column;gap:6px;display:flex}.nav-item{border-radius:var(--radius-md);color:var(--light-text);font-family:var(--font-heading);white-space:nowrap;align-items:center;gap:14px;padding:12px 14px;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.nav-item.active{background-color:var(--bg-secondary);color:var(--primary-blue);font-weight:600}.sidebar.collapsed .nav-item{justify-content:center;padding:12px 0}.nav-icon{flex-shrink:0}.sidebar-footer{border-top:1px solid var(--border);background-color:var(--bg-secondary);flex-direction:column;gap:12px;padding:16px;transition:background-color .3s;display:flex}.user-profile{align-items:center;gap:12px;display:flex}.sidebar.collapsed .user-profile{justify-content:center}.avatar{background:var(--primary-gradient);width:40px;height:40px;color:var(--on-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:flex;box-shadow:0 4px 10px #4f46e533}.user-info{flex-direction:column;display:flex;overflow:hidden}.user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.user-role-badge{color:var(--primary-blue);text-transform:uppercase;background-color:#e0e7ff;border-radius:4px;width:fit-content;margin-top:2px;padding:2px 6px;font-size:.72rem;font-weight:600}.footer-actions{flex-direction:column;gap:6px;margin-top:4px;display:flex}.action-item{border-radius:var(--radius-md);color:var(--light-text);font-size:.88rem;font-family:var(--font-heading);text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:8px 12px;transition:all .2s;display:flex}.action-item:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.logout-btn:hover{color:var(--error-rose);background-color:#ffe4e6}.sidebar.collapsed .action-item{justify-content:center;padding:8px 0}.sidebar-overlay{display:none}@media (max-width:991px){.sidebar{box-shadow:none;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0);box-shadow:10px 0 30px #0f172a26}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:95;background-color:#0f172a66;display:block;position:fixed;inset:0}}
.dashboard-layout-container{background-color:var(--bg-secondary);min-height:100vh;transition:background-color .3s;display:flex}.dashboard-main-area{flex-direction:column;flex:1;min-height:100vh;margin-left:260px;transition:margin-left .3s cubic-bezier(.4,0,.2,1);display:flex}.dashboard-main-area.sidebar-collapsed{margin-left:80px}.dashboard-topbar{background-color:var(--surface);border-bottom:1px solid var(--border);z-index:90;justify-content:space-between;align-items:center;height:70px;padding:0 30px;transition:background-color .3s,border-color .3s;display:flex;position:sticky;top:0;box-shadow:0 2px 10px #0f172a03}.topbar-left{align-items:center;gap:16px;display:flex}.mobile-toggle-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;display:none}.mobile-toggle-btn:hover{background-color:var(--bg-secondary)}.topbar-header-info{flex-direction:column;display:flex}.topbar-title{color:var(--text-primary);font-size:1.25rem;font-weight:700;line-height:1.2}.topbar-breadcrumbs{color:var(--light-text);align-items:center;gap:6px;margin-top:2px;font-size:.75rem;font-weight:500;display:flex}.crumb-separator{color:#cbd5e1}.crumb-link{color:var(--light-text);transition:color .2s}.crumb-link:hover{color:var(--primary-blue)}.crumb-active{color:var(--text-primary);font-weight:600}.topbar-right{align-items:center;display:flex}.greeting-text{font-family:var(--font-heading);color:var(--text-primary);font-size:.95rem;font-weight:600}.dashboard-content-body{flex:1;padding:30px;overflow-y:auto}@media (max-width:991px){.dashboard-main-area,.dashboard-main-area.sidebar-collapsed{margin-left:0}.mobile-toggle-btn{display:inline-flex}.dashboard-topbar{padding:0 20px}.dashboard-content-body{padding:20px}}
