:root{color-scheme:dark;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#080808;color:#f5f5f5;font-size:16px;line-height:1.7;scroll-behavior:smooth;text-rendering:optimizeLegibility;--surface: rgba(255, 255, 255, .05);--surface-strong: rgba(255, 255, 255, .1);--surface-soft: rgba(255, 255, 255, .02);--accent: #d7b761;--shadow: 0 28px 90px rgba(0, 0, 0, .35)}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:radial-gradient(circle at top,rgba(201,168,76,.18),transparent 18%),radial-gradient(circle at 15% 20%,rgba(255,255,255,.06),transparent 8%),radial-gradient(circle at 82% 10%,rgba(255,255,255,.04),transparent 12%),#060606;background-attachment:fixed}.reveal{opacity:0;transform:translateY(18px) scale(.998);transition:opacity .56s cubic-bezier(.2,.9,.2,1) var(--reveal-delay, 0ms),transform .56s cubic-bezier(.2,.9,.2,1) var(--reveal-delay, 0ms),filter .56s ease var(--reveal-delay, 0ms);will-change:opacity,transform;filter:blur(.6px) saturate(.98)}@media (prefers-reduced-motion: reduce){.reveal,.piano-key,[data-parallax],.hero h1,.hero-panel,.topbar{transition:none!important;animation:none!important;will-change:auto!important}}.reveal.show{opacity:1;transform:none;filter:none}[data-parallax]{transform:translateY(0);transition:transform .6s cubic-bezier(.2,.9,.2,1);will-change:transform}.topbar{transition:backdrop-filter .26s ease,box-shadow .26s ease,background .26s ease}.topbar.scrolled{-webkit-backdrop-filter:blur(6px) saturate(1.06);backdrop-filter:blur(6px) saturate(1.06);box-shadow:0 10px 24px #00000073}.section-active{transform:translateY(-6px) scale(1.01);box-shadow:0 36px 80px #00000073;transition:transform .42s cubic-bezier(.2,.9,.2,1),box-shadow .42s ease}:root{--scroll-velocity: 0}.section-surface{transform-origin:center;transition:transform .36s cubic-bezier(.2,.9,.2,1);will-change:transform}.section-surface.section-active{transform:translateY(-6px) rotateX(calc(var(--scroll-velocity) * .6deg))}.scrolling-down .section-surface{transform:translateY(-8px)}.scrolling-up .section-surface{transform:translateY(4px)}@keyframes keyPulse{0%{transform:translateY(0) scale(1);filter:drop-shadow(0 0 0 rgba(213,182,98,0))}40%{transform:translateY(-6px) scale(1.02);filter:drop-shadow(0 18px 28px rgba(213,182,98,.06))}to{transform:translateY(0) scale(1);filter:drop-shadow(0 0 0 rgba(213,182,98,0))}}.piano-key.pulse{animation:keyPulse .9s cubic-bezier(.2,.9,.2,1) var(--key-delay, 0ms) both}.keyboard-shell.keyboard-inview .piano-key.white{transition:box-shadow .42s ease,transform .42s ease}.keyboard-shell.keyboard-inview .piano-key.active{box-shadow:0 26px 60px #d5b66229,inset 0 -6px 18px #0000001f;transform:translateY(-4px)}.piano-key.white:hover{transform:translateY(-4px) scale(1.01)}@keyframes shine{0%{background-position:-120% 0}to{background-position:220% 0}}.hero h1{background:linear-gradient(90deg,#fffffffa,#d7b761f2 40%,#fffffffa 60%);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:220% 100%}.hero h1.reveal.show{animation:shine 2.2s linear .3s both}a{color:inherit;text-decoration:none}button{font:inherit}.page-shell{max-width:1280px;margin:0 auto;padding:1rem 1.25rem 3rem;animation:fadeInUp .75s ease both}main{scroll-snap-type:y proximity}section{scroll-snap-align:start;scroll-snap-stop:always}.topbar{display:flex;justify-content:center;align-items:center;gap:1.5rem;padding:.5rem 0 1rem}.brand,.logo-brand{display:flex;align-items:center;gap:.9rem}.brand-logo{width:72px;height:72px;border-radius:0;background:transparent;padding:0;object-fit:contain;image-rendering:-webkit-optimize-contrast}.brand-text{display:grid;gap:.15rem}.brand-title-row{display:inline-flex;align-items:center;gap:.55rem}.brand-globe{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;border-radius:999px;background:#c9a84c1f;color:#c9a84c;font-size:.95rem}.brand-name{margin:0;font-size:1.1rem;font-family:Playfair Display,Georgia,serif;font-weight:700}.brand-tag{margin:0;color:#b1b1b1;font-size:.88rem;font-weight:500}.nav-links{display:flex;flex-wrap:wrap;gap:1rem}.nav-links a{color:#d9d9d9;font-size:.95rem;transition:color .2s ease,transform .2s ease}.nav-links a:hover{color:#fff;transform:translateY(-1px)}.hero-logo-marker{display:inline-flex;justify-content:center;align-items:center;border-radius:6px;padding:.25rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);width:fit-content;margin-bottom:1rem}.hero-logo-marker .brand-text{display:none}.hero-logo-marker .brand-logo{width:64px;height:64px}.section-surface{background:linear-gradient(180deg,#ffffff0d,#ffffff05);border:1px solid rgba(255,255,255,.09);border-radius:2rem;padding:2.25rem;margin-top:2rem;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);transition:transform .26s ease,border-color .26s ease,background .26s ease}.hero{display:grid;align-items:center;gap:2rem;grid-template-columns:1.4fr 1fr;min-height:calc(100vh - 4rem)}.hero-copy{max-width:600px}.eyebrow{margin:0 0 1rem;color:#c9a84c;font-size:.9rem;letter-spacing:.24em;text-transform:uppercase}h1,h2,h3{margin:0;line-height:1.05;font-family:Playfair Display,Georgia,serif}h1{font-size:clamp(3rem,5vw,4.8rem);letter-spacing:-.04em}.hero-text,.section-copy,.feature-card p,.studio-card p,.preview-copy p,.scale-details,.footer p,.about-copy p,.contact-card p,.social-panel p{color:#dcdcdc}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:1rem 1.8rem;font-weight:700;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease;border:1px solid transparent;will-change:transform,box-shadow}.button:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 20px 50px #c9a84c2e}.button-primary{background:#c9a84c;color:#090909}.button-secondary{background:#ffffff14;color:#fff;border-color:#ffffff1f}.hero-panel{display:flex;justify-content:flex-end}.hero-card{position:relative;overflow:hidden;background:linear-gradient(180deg,#ffffff0d,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:2rem;padding:2rem;width:100%;max-width:420px;box-shadow:var(--shadow);transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}.hero-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top right,rgba(215,183,97,.18),transparent 32%);opacity:.85;pointer-events:none}.hero-card>*{position:relative;z-index:1}.hero-card:hover{transform:translateY(-4px);box-shadow:0 34px 98px #0006}.hero-badge{display:inline-flex;align-items:center;padding:.55rem 1rem;border-radius:999px;color:#090909;background:#c9a84c;font-size:.82rem;margin-bottom:1.25rem}.hero-list{margin:1.5rem 0 0;padding:0;list-style:none;display:grid;gap:.9rem}.hero-list li{color:#e5e5e5}.section-grid,.studio-grid,.pricing-grid,.contact-cards,.social-links{display:grid}.section-grid{gap:2rem}.section-intro h2{font-size:clamp(2rem,3vw,2.9rem)}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.feature-card,.studio-card,.pricing-card,.contact-card,.plan-card{background:var(--surface);border:1px solid rgba(255,255,255,.1);border-radius:1.8rem;padding:1.7rem;box-shadow:0 18px 60px #00000047;transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease,background .26s ease}.feature-card:hover,.studio-card:hover,.pricing-card:hover,.contact-card:hover,.plan-card:hover{transform:translateY(-4px);box-shadow:0 30px 90px #00000061}.feature-card h3,.studio-card h3,.pricing-card h3{margin-bottom:1rem}.studio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:1.5rem}.studio-card{min-height:180px}.section-preview{display:grid;gap:2rem}.preview-copy{max-width:520px}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.pricing-card{position:relative;min-height:290px;display:flex;flex-direction:column;justify-content:space-between}.pricing-card-highlight{background:#c9a84c1f;border-color:#c9a84c59}.plan-badge{display:inline-flex;padding:.5rem .9rem;border-radius:999px;font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;background:#ffffff14;color:#f4f4f4;margin-bottom:1.25rem}.plan-price{font-size:2.1rem;font-weight:800;margin:1rem 0}.pricing-card ul{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;gap:.8rem}.pricing-card li{color:#d9d9d9}.plan-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1rem}.plan-buy-button{min-width:160px}.payment-section{margin-top:2rem}.payment-panel{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:1.8rem;padding:1.8rem}.payment-panel-header{margin-bottom:1.5rem}.selected-plan-card{margin-bottom:1rem;padding:1rem 1.2rem;border-radius:1rem;background:#c9a84c1f;color:#f7f1d1}.payment-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.payment-form label{display:grid;gap:.5rem;color:#d9d9d9}.payment-status{margin-top:1rem;border-radius:1rem;padding:1rem 1.2rem;font-weight:600}.payment-status.success{background:#2b6a3c2e;color:#dff5e1}.payment-status.error{background:#a12a2a2e;color:#ffddd8}.payment-note,.payment-hint{margin-top:1rem;color:#bfbfbf}.scale-description{margin:0 0 .75rem;color:#e0d9c1}.scale-notes{display:flex;flex-wrap:wrap;gap:.6rem}.scale-note{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:.55rem .9rem;color:#fff;font-size:.95rem}.keyboard-shell{background:#080a10e6;border:1px solid rgba(255,255,255,.08);border-radius:2rem;padding:2rem;box-shadow:inset 0 0 0 1px #ffffff05;margin:auto;justify-self:center;max-width:900px;display:grid;gap:1.2rem;overflow-x:auto}.keyboard-actions{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;align-items:center}.keyboard-sustain-toggle{min-width:160px}.keyboard-note{margin:0;color:#babbc2;font-size:.95rem;text-align:center}.keyboard{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:.22rem;position:relative;justify-items:center}.piano-key span small{display:block;font-size:.65rem;color:inherit;opacity:.7;margin-top:.15rem}.piano-key{position:relative;border-radius:1rem;border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:transform .18s ease,background .18s ease,box-shadow .18s ease;display:flex;align-items:flex-end;justify-content:center;padding-bottom:.8rem;font-weight:700;-webkit-user-select:none;user-select:none;will-change:transform}.piano-key span{display:block;font-size:.82rem}.piano-key.white{background:linear-gradient(180deg,#fbf7ef,#e3d7be);color:#1f1f1f;height:6rem;box-shadow:inset 0 0 0 1px #00000008,0 12px 24px #00000014}.piano-key.black{background:linear-gradient(180deg,#121212,#1f1f1f);color:#f3f1eb;height:4.4rem;margin-top:0;z-index:2;grid-column:span 1;box-shadow:0 12px 20px #0000003d;transform:translateY(0)}.piano-key.black:before{content:"";position:absolute;top:.4rem;left:12%;width:76%;height:40%;background:#ffffff0f;border-radius:.55rem}.piano-key.active{background:#d5b662;color:#111;box-shadow:0 20px 42px #d5b66240}.piano-key:hover{transform:translateY(-2px)}.avatar-upload-label{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;padding:.85rem 1.1rem;border-radius:.95rem;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#fff}.avatar-upload-label input[type=file]{display:none}.avatar-help-text{margin:.35rem 0 0;color:#bfbfbf;font-size:.93rem}.section-explore{display:grid;gap:2rem;align-items:center}.explore-copy{max-width:560px}.scale-selector{display:flex;flex-wrap:wrap;gap:.85rem;margin:1.5rem 0}.scale-button{background:#ffffff0d;color:#efefef;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:.9rem 1.2rem;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.scale-button:hover,.scale-button.active{border-color:#c9a84c;background:#c9a84c29;transform:translateY(-1px)}.scale-details{margin:.75rem 0 0}.keyboard-caption{margin-top:1rem;color:#bdbdbd;text-align:center}.section-about{display:grid;gap:2rem;align-items:start}.contact-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.contact-card{padding:1.4rem}.contact-label{margin:0 0 .35rem;color:#c9a84c;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase}.contact-value{margin:0;font-size:1.1rem}.social-panel{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:1.8rem;padding:1.8rem}.social-title{margin:0 0 1rem;font-size:1rem}.social-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.social-links a{display:inline-flex;align-items:center;justify-content:center;min-height:3.4rem;border-radius:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);transition:transform .18s ease,border-color .18s ease}.social-links a:hover{transform:translateY(-2px);border-color:#c9a84c}.footer{display:flex;justify-content:space-between;gap:1.5rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.08);margin-top:2.5rem}.footer-logo{font-size:1.1rem;font-weight:800}.footer-copy{color:#b1b1b1;margin-top:.35rem;font-size:.95rem}.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap}@media (max-width: 980px){.hero,.section-preview,.section-about,.feature-grid,.pricing-grid,.studio-grid,.contact-cards,.social-links{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}}@media (max-width: 660px){.page-shell{padding:1rem}.nav-links{gap:.75rem;font-size:.92rem}.keyboard{grid-template-columns:repeat(12,minmax(0,1fr))}}.dashboard-layout{max-width:1280px;margin:0 auto;padding:1rem 1.25rem 2rem}.dashboard-main{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:2rem;padding:2rem}.dashboard-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.75rem}.dashboard-header h1{font-size:2rem;margin:0}.dashboard-header p{margin:0;color:#d1d1d1}.admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:1.5rem}.admin-upload-section,.admin-content-section,.admin-quick-actions,.admin-stats,.admin-recent{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:2rem;padding:1.75rem}.admin-content-section h2,.admin-recent h2,.admin-stats h2{margin-top:0;margin-bottom:1rem}.admin-quick-actions{display:grid;gap:1rem;margin-bottom:1.5rem}.action-card{display:grid;gap:.8rem;padding:1.35rem;border-radius:1.8rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);text-decoration:none;color:inherit;transition:transform .18s ease,border-color .18s ease,background .18s ease}.action-card:hover{transform:translateY(-2px);border-color:#c9a84c59;background:#c9a84c1a}.action-icon{width:3rem;height:3rem;display:grid;place-items:center;border-radius:1rem;background:#c9a84c29;font-weight:700}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.stat-card{display:grid;gap:.5rem;padding:1.2rem;border-radius:1.6rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.stat-card.highlight{background:#c9a84c1f;border-color:#c9a84c47}.stat-value{font-size:2rem;font-weight:800}.stat-label{color:#d3d3d3}.recent-list{display:grid;gap:1rem}.recent-item{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;padding:1rem;border-radius:1.4rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08)}.recent-icon{width:3rem;height:3rem;display:grid;place-items:center;border-radius:1rem;background:#c9a84c29}.recent-info h4{margin:0;font-size:1rem}.recent-info p{margin:.25rem 0 0;color:#bfbfbf;font-size:.95rem}.dashboard-header-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem}.account-card{display:flex;align-items:center;gap:.75rem;background:linear-gradient(180deg,#ffffff05,#ffffff03);padding:.6rem .9rem;border-radius:12px;border:1px solid rgba(255,255,255,.04)}.account-avatar{width:54px;height:54px;border-radius:50%;background:var(--accent, #c9a84c);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.account-info{font-size:.9rem}.account-name{font-weight:700}.account-meta{color:#ffffffb3;font-size:.85rem}.role-tag{background:#ffffff08;padding:.1rem .4rem;border-radius:6px;margin-left:.4rem}.status-indicator{color:#4ade80}.admin-grid{display:grid;grid-template-columns:380px 1fr;gap:1.25rem}.admin-upload-section{background:var(--card-bg, rgba(255,255,255,.02));padding:1rem;border-radius:10px;box-shadow:var(--card-shadow, 0 6px 18px rgba(0,0,0,.45))}.admin-content-section{background:transparent}.content-table-wrapper{overflow:auto;border-radius:10px;border:1px solid rgba(255,255,255,.04)}.content-table{width:100%;border-collapse:collapse;min-width:760px}.content-table thead th{text-align:left;padding:.8rem 1rem;background:#ffffff05;font-size:.9rem}.content-table tbody td{padding:.75rem 1rem;border-top:1px solid rgba(255,255,255,.02);vertical-align:middle}.input-readonly{opacity:.85;cursor:not-allowed;background:#ffffff0a}.students-panel{display:grid;gap:1rem}.students-summary{display:flex;align-items:baseline;gap:.5rem;color:#b0b0b0}.students-count{font-size:1.8rem;font-weight:700;color:#c9a84c}.student-table-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid rgba(201,168,76,.4);display:inline-flex;align-items:center;justify-content:center}.student-table-avatar-placeholder{background:#c9a84c26;color:#c9a84c;font-weight:700;font-size:.95rem}.role-badge-student{color:#9ecbff}.role-badge-premium,.role-badge-basico,.role-badge-pro,.role-badge-master{color:#c9a84c}.plan-select{background:#ffffff0f;border:1px solid rgba(255,255,255,.14);border-radius:.65rem;color:#f5f5f5;padding:.45rem .65rem;font-size:.9rem;min-width:160px;color-scheme:dark}.plan-select option{background:#141414;color:#f5f5f5}.students-table td,.students-table th{color:#f0f0f0}.plan-assign-cell{display:flex;flex-wrap:wrap;gap:.4rem;min-width:280px}.plan-assign-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#e8e8e8;cursor:pointer;font-size:.78rem;padding:.35rem .65rem;transition:background .18s ease,border-color .18s ease,color .18s ease}.plan-assign-btn:hover:not(:disabled){background:#c9a84c24;border-color:#c9a84c73;color:#f5f5f5}.plan-assign-btn.active{background:#c9a84c38;border-color:#c9a84c;color:#f8e7b0;font-weight:700}.plan-assign-btn:disabled{opacity:.55;cursor:wait}.field-hint{margin:.35rem 0 0;color:#9a9a9a;font-size:.82rem}.td-title-inner{display:flex;gap:.75rem;align-items:center}.content-icon-inline{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff05;border-radius:8px}.row-title{font-weight:700}.row-desc{color:#ffffffb3;font-size:.9rem}.td-actions{display:flex;gap:.5rem}.button.small{padding:.35rem .6rem;font-size:.85rem}.badge.small{padding:.25rem .5rem;border-radius:6px}.badge.success{background:#16a34a;color:#fff}.upload-form{display:flex;flex-direction:column;gap:.75rem}.upload-form .form-group label{font-weight:600}.upload-form input[type=file]{padding:.4rem 0}.hint{color:#ffffffbf;font-size:.95rem}@media (min-width: 900px){.admin-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 980px){.stats-grid{grid-template-columns:1fr}}@media (max-width: 760px){.admin-upload-section,.admin-content-section,.admin-quick-actions,.admin-stats,.admin-recent{padding:1.3rem}}.upload-form{display:grid;gap:1rem}.upload-form h2{margin-top:0;margin-bottom:.75rem;font-size:1.6rem}.upload-form .form-group,.upload-form .form-row{display:grid;gap:.85rem}.upload-form .form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-form label{color:#e3e3e3;font-weight:600}.upload-form textarea,.upload-form select,.upload-form input{width:100%;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:1rem;padding:1rem 1.1rem;color:#f4f4f4}.upload-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(to top,#ffffff14,#ffffff05),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 5'%3E%3Cpath fill='rgba(255,255,255,0.82)' d='M0 0l4 5 4-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:10px 6px}.upload-form textarea{min-height:126px}.upload-form select option{background:#101010;color:#f4f4f4}.scale-sign-selector{display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0 .6rem}.scale-sign{background:#ffffff0d;color:#efefef;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:.75rem 1rem;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease}.scale-sign.active,.scale-sign:hover{border-color:#c9a84c;background:#c9a84c24;transform:translateY(-1px)}.upload-form input:focus,.upload-form textarea:focus,.upload-form select:focus{outline:none;border-color:#c9a84c;background:#c9a84c17}.upload-form .hint{color:#b0b0b0;font-size:.92rem}.content-section{display:grid;gap:1.5rem}.content-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:center}.content-header h2{margin:0}.content-filters{display:flex;flex-wrap:wrap;gap:.75rem}.filter-btn{border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#f2f2f2;padding:.8rem 1rem;border-radius:999px;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.filter-btn:hover,.filter-btn.active{border-color:#c9a84c;background:#c9a84c24;transform:translateY(-1px)}.content-grid{display:grid;gap:1rem}.content-card{display:grid;gap:.9rem;padding:1.4rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:1.75rem}.content-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:1rem;background:#c9a84c29}.content-desc{color:#d8d8d8;margin:0;min-height:50px}.content-type .badge{display:inline-flex;padding:.4rem .75rem;border-radius:999px;background:#ffffff12;color:#f5f5f5;font-size:.82rem}.content-author{margin:0;color:#bdbdbd;font-size:.95rem}.content-actions{display:flex;flex-wrap:wrap;gap:.85rem}.button-danger{background:#ff4c4c1f;color:#ff7d7d;border-color:#ff4c4c40}.button-danger:hover{background:#ff4c4c2e}.button-outline{background:transparent;color:#fff;border-color:#ffffff2e}.upload-form .form-row{grid-template-columns:1fr}@media (min-width: 900px){.upload-form .form-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 980px){.dashboard-layout{padding:1rem}}@media (max-width: 760px){.dashboard-main{padding:1.5rem}}.navbar{position:relative;z-index:10;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.07);padding:1rem 0;margin-bottom:1rem;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.navbar-container{max-width:1280px;margin:0 auto;padding:0 1.25rem;display:flex;justify-content:space-between;align-items:center}.header-extra,.free-pill{display:none}.navbar-brand{display:flex;align-items:center;gap:.9rem;text-decoration:none;color:inherit}.navbar-brand .brand-logo{width:48px;height:48px;object-fit:contain}.navbar-brand .brand-name{width:auto;height:auto}.navbar-avatar-link{display:inline-flex;text-decoration:none;flex-shrink:0}.navbar-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid rgba(201,168,76,.55);transition:border-color .18s ease,transform .18s ease}.navbar-avatar-placeholder{display:inline-flex;align-items:center;justify-content:center;background:#c9a84c2e;color:#c9a84c;font-weight:700;font-size:.95rem}.navbar-avatar-link:hover .navbar-avatar{border-color:#e5c158;transform:scale(1.05)}.navbar-menu{display:flex;align-items:center;gap:1rem}.navbar-user{display:flex;align-items:center;gap:1rem;font-size:.95rem}.user-name{color:#f5f5f5;font-weight:600;display:none}.user-role{color:#c9a84c;font-size:.9rem;font-weight:700}.button-settings{background:transparent;border:none;color:#c9a84c;font-size:1.2rem;padding:.5rem;cursor:pointer;transition:transform .18s ease,color .18s ease;position:relative}.button-settings:hover{transform:rotate(15deg);color:#e5c158}.settings-dropdown-container{position:relative;display:inline-block}.settings-dropdown{position:absolute;top:calc(100% + .35rem);right:0;background:#121212f2;border:1px solid rgba(255,255,255,.16);border-radius:1.2rem;padding:.5rem 0;min-width:210px;box-shadow:0 14px 40px #00000059;z-index:1100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.settings-option{display:block;width:100%;padding:.75rem 1.2rem;text-align:left;background:transparent;border:none;color:#f5f5f5;cursor:pointer;transition:background .18s ease,color .18s ease;text-decoration:none;font-size:.9rem}.settings-option:hover{background:#c9a84c26;color:#c9a84c}.settings-divider{height:1px;background:#ffffff1a;margin:.5rem 0}.logout-option{color:#ff7d7d}.logout-option:hover{background:#ff4c4c26;color:#ff6b6b}.profile-tabs{display:flex;gap:1rem;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:2rem}.profile-tab{background:transparent;border:none;color:#b0b0b0;padding:1rem 0;cursor:pointer;font-size:.95rem;font-weight:600;border-bottom:3px solid transparent;transition:color .18s ease,border-color .18s ease}.profile-tab:hover{color:#e5e5e5}.profile-tab.active{color:#c9a84c;border-bottom-color:#c9a84c}.profile-content{display:grid;grid-template-columns:1fr;gap:2rem;align-items:start;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:1.8rem;padding:1.75rem}.profile-section h2{margin-top:0;margin-bottom:1rem}.profile-section{width:100%}.profile-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:1.6rem;padding:2rem;display:grid;gap:1.4rem;width:100%;max-width:980px;min-width:0;margin:0 auto}.profile-page{padding-bottom:2rem}.profile-header{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.75rem}.profile-header p{color:#c9c9c9;max-width:760px}.plan-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.plan-card{background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:1.4rem;padding:1.3rem;display:grid;gap:1rem}.plan-card.active{border-color:#c9a84c73;box-shadow:0 18px 48px #c9a84c1f}.plan-card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.plan-card h3{margin:0;font-size:1.05rem}.plan-price{margin:.35rem 0 0;color:#c9a84c;font-weight:700}.plan-card-details{padding-top:.5rem}.plan-card-details ul{margin:.75rem 0 0;padding-left:1.2rem;color:#d9d9d9}.plan-card-details li{margin-bottom:.55rem}.subscription-info-bottom{margin-top:1rem}.profile-field label{color:#b0b0b0;font-size:.9rem;font-weight:600}.profile-field{display:flex;align-items:center;gap:.75rem}.profile-value{margin:0;color:#f5f5f5;font-size:.95rem}.profile-value.role-badge{margin:0}.role-badge{display:inline-block;background:#c9a84c26;border:1px solid rgba(201,168,76,.3);color:#c9a84c;padding:.35rem .8rem;border-radius:999px;font-size:.85rem;font-weight:600}.profile-fields .role-badge{margin-top:.25rem;display:inline-flex;align-items:center}.status-active{color:#4ade80;font-weight:700}.password-form{display:grid;gap:1rem}@media (max-width: 720px){.profile-row{grid-template-columns:1fr;gap:1rem}.avatar-preview-card{justify-self:center;align-items:center}.profile-fields .role-badge{margin-top:.5rem}}.password-form .form-group{display:flex;flex-direction:column;gap:.5rem}.password-form label{color:#e5e5e5;font-weight:600}.password-form input{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.9rem;padding:.9rem 1.2rem;color:#f5f5f5;transition:border-color .18s ease}.password-form input:focus{outline:none;border-color:#c9a84c;background:#c9a84c14}.subscription-info{display:grid;gap:1rem}.sub-label{margin:0;color:#b0b0b0;font-size:.9rem}.sub-value{margin:0;font-size:1.8rem;font-weight:700;color:#c9a84c}.profile-form{display:grid;gap:1.5rem}.profile-row{display:grid;grid-template-columns:220px minmax(0,1fr);gap:1.5rem;align-items:start;width:100%;min-width:0}.avatar-preview-card{display:grid;gap:1rem;align-items:start;justify-items:start;justify-self:start;padding:.9rem;background:#ffffff05;border-radius:1.25rem;border:1px solid rgba(255,255,255,.02);width:100%;max-width:260px}.avatar-preview-shell{width:180px;height:180px;max-width:100%;aspect-ratio:1 / 1;border-radius:1.75rem;background:linear-gradient(180deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.14);display:grid;place-items:center;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff05}.profile-avatar-image{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;display:grid;place-items:center;font-size:3rem;color:#ffffffb3}.avatar-upload-label{width:100%;justify-content:center;display:inline-flex;align-items:center}.avatar-upload-label .button{margin-top:.5rem}.avatar-selected-tag{background:#c9a84c29;color:#f7f0c5;border-radius:999px;padding:.55rem .95rem;font-size:.9rem;border:1px solid rgba(201,168,76,.22)}.profile-form>.button.button-primary{margin-top:1rem;width:100%;max-width:340px}.profile-fields{display:grid;gap:1rem}.profile-form input,.payment-form input,.profile-fields input{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.95rem;padding:.95rem 1.1rem;color:#f5f5f5;transition:border-color .18s ease,background .18s ease}.profile-form input:focus,.payment-form input:focus,.profile-fields input:focus{outline:none;border-color:#c9a84c;background:#c9a84c14}.password-group{position:relative}.password-field{position:relative;display:flex;align-items:center}.password-field input{flex:1}.password-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);border:none;background:transparent;color:#c9a84c;font-size:1rem;cursor:pointer;padding:0}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.half-width{width:100%}.plan-details{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:1rem;padding:1rem;color:#d9d9d9}.payment-form{display:grid;gap:1rem}.error-message,.success-message{padding:.95rem 1rem;border-radius:.95rem;font-size:.95rem}.error-message{background:#ff4c4c1f;color:#ffb3b3}.success-message{background:#4ade801f;color:#d7ffd7}.sub-description{margin:0;color:#d1d1d1;font-size:.95rem}.navbar-logout{padding:.7rem 1.2rem}.navbar-links{display:flex;gap:.75rem}.auth-page{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.auth-container{width:100%;max-width:420px}.auth-card{background:#ffffff05;border:1px solid rgba(255,255,255,.07);border-radius:2rem;padding:2.5rem;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.auth-card h1{font-size:2rem;margin-bottom:.5rem;text-align:center}.auth-subtitle{text-align:center;color:#b1b1b1;margin-bottom:1.5rem}.auth-form{display:flex;flex-direction:column;gap:1.25rem;margin:1.5rem 0}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#e5e5e5;font-size:.95rem;font-weight:600}.form-group input{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.9rem;padding:.9rem 1.2rem;color:#f5f5f5;font-size:.95rem;transition:border-color .18s ease,background .18s ease}.form-group input:focus{outline:none;border-color:#c9a84c;background:#c9a84c14}.form-group input::placeholder{color:gray}.error-message{background:#ff4c4c1a;border:1px solid rgba(255,76,76,.3);border-radius:.9rem;padding:.9rem 1.2rem;color:#ff6b6b;margin-bottom:1rem}.success-message{background:#4cd17c1a;border:1px solid rgba(76,209,124,.25);border-radius:.9rem;padding:.9rem 1.2rem;color:#d4ffd4;margin-bottom:1rem}.button-block{width:100%}.button:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;color:#b1b1b1;margin-top:1.5rem}.auth-footer a{color:#c9a84c;text-decoration:none;font-weight:600;transition:opacity .18s ease}.auth-link-row{text-align:right;margin-top:-.5rem;margin-bottom:1rem}.auth-link-row a{color:#d9d9d9;font-size:.95rem}.auth-link-row .link-button,.link-button{background:none;border:none;padding:0;color:#d9d9d9;font-size:.95rem;cursor:pointer;text-decoration:underline;font-family:inherit}.auth-link-row .link-button:hover,.link-button:hover{color:#fff}.auth-footer a:hover{opacity:.8}.loading{display:flex;align-items:center;justify-content:center;height:100vh;color:#c9a84c;font-size:1.1rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.button-ghost{background:#ffffff0f;color:#f5f5f5;border-color:#ffffff1a}.button-ghost:hover{background:#ffffff1f}.button-ghost.nav-active{background:#c9a84c33;border-color:#c9a84c73;color:#f8e7b0}.section-surface{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.section-surface:hover{transform:translateY(-4px);box-shadow:0 24px 80px #00000029;border-color:#ffffff1f}.hero,.section-surface,.content-card,.pricing-card,.feature-card{opacity:0;animation:fadeInUp .85s ease forwards}.hero{animation-delay:.1s}.feature-card{animation-delay:.15s}.pricing-card{animation-delay:.2s}.content-card{animation-delay:.18s}.navbar-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.navbar-toggle{display:none;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.75rem;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#f5f5f5;font-size:1.15rem;cursor:pointer}.navbar-links-inline{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}@media (max-width: 1100px){.navbar-links-inline .button{font-size:.85rem;padding:.55rem .95rem}.navbar-user{flex-wrap:wrap;justify-content:flex-end;gap:.65rem}}@media (max-width: 900px){.admin-grid{grid-template-columns:1fr!important}.dashboard-header-inner{flex-direction:column;align-items:flex-start}.account-card{width:100%}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-row{grid-template-columns:1fr}.avatar-preview-shell{width:160px;height:160px}.profile-tabs{flex-wrap:wrap;gap:.5rem}.plan-grid,.form-row,.upload-form .form-row{grid-template-columns:1fr!important}.footer{flex-direction:column}.hero{min-height:auto;padding-top:.5rem}h1{font-size:clamp(2rem,8vw,3rem)}.dashboard-header h1{font-size:1.6rem}.section-surface{padding:1.35rem;border-radius:1.35rem;margin-top:1.25rem}.hero-actions .button{width:100%}.hero-actions{flex-direction:column}.button{padding:.85rem 1.25rem}.content-table-wrapper{-webkit-overflow-scrolling:touch}.plan-assign-cell{min-width:0}.plan-assign-btn{font-size:.72rem;padding:.3rem .5rem}}@media (max-width: 768px){.navbar-container{flex-wrap:wrap;gap:.65rem}.navbar-toggle{display:inline-flex}.navbar-menu{display:none;order:3;width:100%;flex-basis:100%}.navbar-menu.is-open{display:block;padding:.85rem;border-radius:1rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.navbar-actions{margin-left:auto}.navbar-avatar-desktop{display:none}.navbar-user,.navbar-links{flex-direction:column;align-items:stretch;width:100%;gap:.65rem}.navbar-links-inline{flex-direction:column;width:100%}.navbar-links-inline .button,.navbar-links .button{width:100%;justify-content:center}.user-role{text-align:center;font-size:.85rem}.settings-dropdown{right:0;left:auto;min-width:200px}.page-shell,.dashboard-layout{padding:.75rem .85rem 2rem}.dashboard-main{padding:1.15rem;border-radius:1.25rem}.auth-card{padding:1.5rem;border-radius:1.25rem}.auth-page{padding:1rem .75rem;align-items:flex-start}.topbar{align-items:stretch}.nav-links{justify-content:center;gap:.5rem .85rem}.nav-links a{font-size:.88rem}.stats-grid{grid-template-columns:1fr 1fr}.stat-value{font-size:1.5rem}.content-grid{grid-template-columns:1fr!important}.content-header{flex-direction:column;align-items:flex-start;gap:.75rem}.content-filters{flex-wrap:wrap}.profile-header h1{font-size:1.6rem}.students-table{min-width:640px}}@media (max-width: 480px){.navbar-brand .brand-name{font-size:.95rem}.navbar-brand .brand-logo{width:44px;height:44px}.navbar-avatar{width:34px;height:34px}.stats-grid{grid-template-columns:1fr}.hero-card{padding:1.25rem}.eyebrow{letter-spacing:.12em;font-size:.78rem}.auth-card h1{font-size:1.6rem}.plan-assign-cell{flex-direction:column;align-items:stretch}.plan-assign-btn{width:100%;text-align:center}.keyboard-shell{padding:1rem;border-radius:1.25rem}.piano-key.white{height:4.5rem}.piano-key.black{height:3rem}.piano-key span{font-size:.62rem}.scale-note{font-size:.82rem;padding:.4rem .65rem}}
