@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,600&family=Jost:wght@300;400;500;600&display=swap");:root{--navy:#0d1b2e;--navy-mid:#152035;--navy-light:#1e2f47;--gold:#c9a84c;--gold-light:#e2c97e;--gold-dim:#8a6e2f;--star-white:#f5f0e8;--muted:#8a9ab5;--error:#e07070;--warning:#e0b467;--ok:#6fbf8b;--calendar-competition:#c9a84c;--calendar-school:#6fa8dc}*{box-sizing:border-box;margin:0;padding:0}body,html{overflow-x:clip}body{font-family:Jost,sans-serif;background-color:var(--navy);color:var(--star-white)}.auth-page,body{min-height:100vh}.auth-page{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:2rem 1rem}.stars-bg{position:fixed;inset:0;pointer-events:none;z-index:0}.star{position:absolute;background:var(--star-white);border-radius:50%;animation:twinkle var(--d,3s) ease-in-out infinite;animation-delay:var(--delay,0s);opacity:var(--op,.6)}@keyframes twinkle{0%,to{opacity:var(--op,.6);transform:scale(1)}50%{opacity:.15;transform:scale(.7)}}.auth-card{position:relative;z-index:1;width:100%;max-width:440px;background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:16px;padding:2.5rem 2rem;box-shadow:0 0 60px rgba(201,168,76,.06),0 24px 48px rgba(0,0,0,.4)}.auth-logo{text-align:center;margin-bottom:2rem}.auth-logo-title{font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:600;color:var(--gold-light);letter-spacing:.02em}.auth-logo-subtitle{font-size:.75rem;font-weight:300;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;margin-top:2px}.gold-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold-dim),transparent);margin:.75rem 0 1.75rem}.auth-heading{font-family:Cormorant Garamond,serif;font-size:1.4rem;font-weight:500;color:var(--star-white);margin-bottom:.25rem}.auth-subheading{font-size:.85rem;color:var(--muted);margin-bottom:1.75rem;font-weight:300}.form-group{margin-bottom:1.1rem}.form-label{display:block;font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem}.form-input{width:100%;background:var(--navy-light);border:1px solid rgba(201,168,76,.2);border-radius:8px;padding:.75rem 1rem;color:var(--star-white);font-family:Jost,sans-serif;font-size:.95rem;font-weight:300;transition:border-color .2s,box-shadow .2s;outline:none}.form-input::placeholder{color:rgba(138,154,181,.5)}.form-input:focus{border-color:var(--gold-dim);box-shadow:0 0 0 3px rgba(201,168,76,.08)}.password-field{position:relative}.password-field .form-input{padding-right:2.9rem}.password-toggle{position:absolute;top:0;bottom:0;right:.4rem;display:flex;align-items:center;justify-content:center;width:2.2rem;background:none;border:none;cursor:pointer;color:rgba(138,154,181,.7);transition:color .15s}.password-toggle:focus-visible,.password-toggle:hover{color:var(--gold-light);outline:none}.form-input.error{border-color:var(--error)}.btn-primary{width:100%;padding:.85rem 1.5rem;background:linear-gradient(135deg,var(--gold-dim),var(--gold));border:none;border-radius:8px;color:var(--navy);font-family:Jost,sans-serif;font-size:.9rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:opacity .2s,transform .1s;margin-top:.5rem}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.upload-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1rem;border-radius:10px;border:1px solid var(--gold-light);background:transparent;color:var(--gold-light);font-family:Jost,sans-serif;font-size:.85rem;font-weight:600;cursor:pointer}.upload-btn:hover{background:rgba(201,168,76,.1)}.upload-btn:disabled{opacity:.5;cursor:not-allowed}.touch-only{display:none}@media (pointer:coarse){.touch-only{display:inline-flex}}.auth-link{color:var(--gold);text-decoration:none;font-weight:500;transition:color .2s}.auth-link:hover{color:var(--gold-light)}.auth-footer{text-align:center;margin-top:1.5rem;font-size:.85rem;color:var(--muted);font-weight:300}.error-message{background:rgba(224,112,112,.1);border:1px solid rgba(224,112,112,.3);border-radius:8px;color:var(--error)}.error-message,.success-message{padding:.75rem 1rem;font-size:.85rem;margin-bottom:1rem}.success-message{background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.25);border-radius:8px;color:var(--gold-light)}.payment-pastdue-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:rgba(224,112,112,.12);border:1px solid rgba(224,112,112,.4);border-radius:10px;padding:.75rem 1rem;margin:0 auto 1.25rem;max-width:960px}.payment-pastdue-banner-text{color:var(--error);font-size:.9rem;flex:1 1 280px}.payment-pastdue-banner-error{display:block;margin-top:.25rem;opacity:.85}.payment-pastdue-banner-actions{display:flex;align-items:center;gap:.5rem}.payment-pastdue-banner-dismiss{background:none;border:none;color:var(--error);font-size:1rem;line-height:1;cursor:pointer;padding:.25rem .4rem;opacity:.7}.payment-pastdue-banner-dismiss:hover{opacity:1}.forgot-link{display:block;text-align:right;font-size:.8rem;color:var(--muted);text-decoration:none;margin-top:-.6rem;margin-bottom:1rem;transition:color .2s}.forgot-link:hover{color:var(--gold)}.admin-page{min-height:100vh;padding:3rem 1.5rem}.calendar-toolbar{justify-content:space-between;gap:1rem;max-width:720px;margin:0 auto 1.25rem}.calendar-geo,.calendar-toolbar{display:flex;align-items:center;flex-wrap:wrap}.calendar-geo{gap:.5rem;width:100%}.calendar-geo-select{flex:1 1 140px;min-width:0;padding:.45rem .6rem;font-size:.85rem}.calendar-nav{display:flex;align-items:center;gap:.75rem}.calendar-nav-button{background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:8px;color:var(--star-white);width:32px;height:32px;cursor:pointer;font-size:1rem}.calendar-nav-button:hover{border-color:var(--gold-dim)}.calendar-month-label{font-family:Cormorant Garamond,serif;font-size:1.3rem;color:var(--gold-light);min-width:160px;text-align:center}.calendar-toggle{display:flex;gap:.4rem}.calendar-toggle-button{background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:20px;color:var(--muted);padding:.35rem .9rem;font-size:.8rem;cursor:pointer;font-family:Jost,sans-serif}.calendar-toggle-button-active{background:rgba(201,168,76,.15);border-color:var(--gold-dim);color:var(--gold-light)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.4rem;max-width:720px;margin:0 auto 2rem}.calendar-weekday{text-align:center;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-bottom:.4rem}.calendar-day{aspect-ratio:1/1;border-radius:10px;border:1px solid rgba(201,168,76,.15);background:var(--navy-mid);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;cursor:pointer;color:var(--star-white);font-size:.85rem;padding:0}.calendar-day:hover{border-color:var(--gold-dim)}.calendar-day-outside{opacity:.3}.calendar-day-today{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.calendar-day-selected{background:rgba(201,168,76,.12)}.calendar-dots{display:flex;gap:3px}.calendar-dot{width:6px;height:6px;border-radius:50%}.calendar-feis-mark{font-size:.8rem;line-height:1;margin-top:1px}.calendar-day-feis{border-color:var(--calendar-competition)}.calendar-week-list{max-width:640px;margin:0 auto}.calendar-week-day-heading{font-family:Cormorant Garamond,serif;font-size:1.05rem;color:var(--gold-light);margin:1.25rem 0 .5rem}.calendar-category-badge{display:inline-block;border-radius:20px;padding:.15rem .6rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem}.media-edit-wrap{position:relative;display:inline-block}.media-edit-button{position:absolute;bottom:4px;right:4px;width:28px;height:28px;border-radius:50%;background:rgba(13,27,46,.85);border:1px solid rgba(201,168,76,.35);color:var(--star-white);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1;z-index:2}.media-edit-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:10;background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:10px;padding:.4rem;min-width:240px;box-shadow:0 8px 24px rgba(0,0,0,.4)}.media-edit-menu-item{display:block;width:100%;text-align:left;padding:.5rem .6rem;border-radius:6px;background:none;border:none;color:var(--star-white);font-family:Jost,sans-serif;font-size:.85rem;cursor:pointer;text-decoration:none;box-sizing:border-box}.media-edit-menu-item:hover{background:rgba(201,168,76,.1);color:var(--gold-light)}.media-edit-menu-item.is-danger{color:var(--error)}.media-edit-menu-item.is-danger:hover{background:rgba(201,168,76,.1);color:var(--error)}.media-edit-menu-item:disabled{opacity:.6;cursor:default}.profile-menu-wrap{position:absolute;top:1.25rem;right:1.25rem}.profile-menu-button{width:32px;height:32px;border-radius:50%;background:rgba(13,27,46,.85);border:1px solid rgba(201,168,76,.35);color:var(--star-white);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1}.avatar-thumb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:.5rem;margin-top:.5rem}.avatar-thumb{position:relative;aspect-ratio:1/1;border-radius:10px;overflow:hidden;border:1px solid rgba(201,168,76,.2);background:var(--navy-light)}.avatar-thumb img{width:100%;height:100%;object-fit:cover}.avatar-thumb-remove{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;border:none;background:rgba(13,27,46,.85);color:var(--star-white);font-size:.7rem;line-height:18px;cursor:pointer}.avatar-add-tile{aspect-ratio:1/1;border-radius:10px;border:1px dashed rgba(201,168,76,.35);display:flex;align-items:center;justify-content:center;color:var(--muted);cursor:pointer;font-size:1.5rem;background:var(--navy-light)}.avatar-add-tile:disabled{opacity:.4;cursor:not-allowed}.admin-heading{font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:600;color:var(--gold-light);max-width:640px;margin:0 auto 2rem}.admin-empty{max-width:640px;margin:0 auto;color:var(--muted);font-weight:300}.skeleton-wrap{max-width:960px;margin:0 auto}.skeleton{position:relative;overflow:hidden;background:var(--navy-mid);border-radius:6px}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(201,168,76,.1),transparent);animation:skeleton-shimmer 1.4s ease-in-out infinite}@keyframes skeleton-shimmer{to{transform:translateX(100%)}}.skeleton-title{height:2rem;width:240px;max-width:55%;margin-bottom:1.5rem}.skeleton-card{display:flex;flex-direction:column;gap:.85rem;background:var(--navy-mid);border:1px solid rgba(201,168,76,.12);border-radius:16px;padding:1.5rem 1.75rem;margin-bottom:1rem}.skeleton-line{height:.85rem;width:100%}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.school-card{max-width:640px;margin:0 auto 1rem;background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:16px;padding:1.5rem 1.75rem}.school-card-name{font-family:Cormorant Garamond,serif;font-size:1.3rem;font-weight:600;color:var(--star-white)}.school-card-meta{font-size:.85rem;color:var(--muted);font-weight:300;margin-top:.2rem}.school-card-actions{display:flex;gap:.75rem;margin-top:1.25rem}.btn-approve{padding:.6rem 1.4rem;background:linear-gradient(135deg,var(--gold-dim),var(--gold));border:none;border-radius:8px;color:var(--navy);font-family:Jost,sans-serif;font-size:.85rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:opacity .2s}.btn-approve:hover:not(:disabled){opacity:.9}.btn-approve:disabled{opacity:.45;cursor:not-allowed}.btn-reject{padding:.6rem 1.4rem;background:transparent;border:1px solid rgba(224,112,112,.4);border-radius:8px;color:var(--error);font-family:Jost,sans-serif;font-size:.85rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:background .2s}.btn-reject:hover{background:rgba(224,112,112,.1)}.tab-bar{display:flex;gap:.25rem;max-width:640px;margin:1.5rem auto;border-bottom:1px solid rgba(201,168,76,.2);overflow-x:auto}.tab-button{padding:.6rem 1rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--muted);font-family:Jost,sans-serif;font-size:.85rem;font-weight:500;letter-spacing:.03em;cursor:pointer;white-space:nowrap;transition:color .2s,border-color .2s}.tab-button:hover{color:var(--star-white)}.tab-button-active{color:var(--gold-light);border-bottom-color:var(--gold)}.app-shell{display:flex;min-height:100vh}.app-sidebar{width:240px;flex-shrink:0;background:var(--navy-mid);border-right:1px solid rgba(201,168,76,.15);padding:1.5rem 1rem;display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:0;height:100vh;overflow-y:auto}.app-sidebar-brand{display:block;font-family:Cormorant Garamond,serif;font-size:1.4rem;font-weight:600;color:var(--gold-light);padding:0 .5rem;text-decoration:none}.app-sidebar-search{padding:0 .5rem}.app-sidebar-search .form-input{padding:.5rem .75rem;font-size:.85rem}.app-mobile-search{flex:1;min-width:0}.app-mobile-search .form-input{padding:.4rem .65rem;font-size:.8rem}.search-bar{position:relative}.search-dropdown{position:absolute;top:calc(100% + .4rem);left:.5rem;right:.5rem;z-index:60;max-height:72vh;overflow-y:auto;background:var(--navy-mid);border:1px solid rgba(201,168,76,.3);border-radius:14px;box-shadow:0 16px 40px rgba(13,27,46,.28);padding:.5rem}:root[data-theme=light] .search-dropdown{box-shadow:0 16px 40px rgba(34,48,31,.14);border-color:rgba(124,94,20,.28)}.search-dropdown-loading{padding:.6rem .5rem;display:flex;flex-direction:column;gap:.5rem}.search-dropdown-empty{padding:.85rem .65rem;font-size:.92rem;color:var(--muted,#9aa4bf)}.search-dropdown-heading{padding:.55rem .6rem .25rem;font-size:.78rem;letter-spacing:.07em;font-weight:600;text-transform:uppercase;color:var(--gold,#d4af37)}.search-dropdown-row{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .5rem;border-radius:10px}.search-dropdown-row.is-active,.search-dropdown-row:hover{background:rgba(212,175,55,.12)}.search-dropdown-nav{display:flex;align-items:center;gap:.85rem;flex:1;min-width:0;padding:.3rem .2rem;border:none;background:transparent;cursor:pointer;text-align:left}.search-dropdown-nav-static{cursor:default}.search-dropdown-follow{flex-shrink:0;padding:.4rem .9rem;border-radius:999px;border:1px solid var(--gold,#d4af37);background:var(--gold,#d4af37);color:#0d1b2e;font-size:.8rem;font-weight:600;cursor:pointer}.search-dropdown-follow.is-following{background:transparent;color:var(--gold,#d4af37)}.search-dropdown-follow:disabled{opacity:.6;cursor:default}.search-dropdown-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;flex-shrink:0}.search-dropdown-avatar-fallback{display:flex;align-items:center;justify-content:center;background:rgba(201,168,76,.18);color:var(--gold,#d4af37);font-weight:600;font-size:1.2rem}.search-dropdown-text{display:flex;flex-direction:column;min-width:0;gap:.1rem}.search-dropdown-label{color:var(--star-white,#f5f5f5);font-size:1.02rem;font-weight:500}.search-dropdown-label,.search-dropdown-meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-dropdown-meta{color:var(--muted,#9aa4bf);font-size:.85rem}@media (max-width:719.98px){.search-dropdown{padding:.35rem}.search-dropdown-heading{padding:.4rem .5rem .1rem;font-size:.68rem}.search-dropdown-row{padding:.1rem .35rem;border-radius:8px}.search-dropdown-nav{gap:.55rem;padding:.15rem}.search-dropdown-avatar{width:30px;height:30px}.search-dropdown-avatar-fallback{font-size:.8rem}.search-dropdown-text{gap:0}.search-dropdown-label{font-size:.9rem}.search-dropdown-meta{font-size:.74rem}.search-dropdown-follow{padding:.25rem .7rem;font-size:.78rem}}.search-dropdown-all{width:100%;margin-top:.35rem;padding:.7rem;border:none;border-top:1px solid rgba(201,168,76,.2);background:transparent;color:var(--gold,#d4af37);font-size:.92rem;font-weight:600;cursor:pointer;border-radius:0 0 10px 10px}.search-dropdown-all:hover{background:rgba(212,175,55,.1)}.app-sidebar-group{display:flex;flex-direction:column;gap:.15rem}.app-sidebar-group-bottom{margin-top:auto}.app-sidebar-label{font-family:Jost,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:.5rem .5rem .25rem}.app-sidebar-link{display:block;padding:.5rem;border-radius:8px;color:var(--star-white);font-family:Jost,sans-serif;font-size:.9rem;font-weight:400;text-decoration:none;background:none;border:none;text-align:left;cursor:pointer;transition:background .15s,color .15s}.app-sidebar-link:hover{background:rgba(201,168,76,.1);color:var(--gold-light)}.app-sidebar-parent{display:flex;align-items:center}.app-sidebar-expander{flex:0 0 auto;width:32px;align-self:stretch;padding:.5rem .4rem;border:none;border-radius:8px;background:none;color:var(--star-white);font-size:1rem;line-height:1;cursor:pointer;opacity:.7;transition:background .15s,color .15s,opacity .15s}.app-sidebar-expander:hover{background:rgba(201,168,76,.1);color:var(--gold-light);opacity:1}.app-sidebar-badge{float:right;min-width:18px;height:18px;padding:0 6px;border-radius:9px;background:var(--error);color:#fff;font-size:.72rem;font-weight:600;line-height:18px;text-align:center}.app-sidebar-signout{color:var(--muted)}.app-main{flex:1;min-width:0}.app-back-wrap{padding:1rem 1.25rem 0}.back-button{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border-radius:8px;border:1px solid rgba(201,168,76,.3);background:transparent;color:var(--gold);font-family:Jost,sans-serif;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s}.back-button:hover{background:rgba(201,168,76,.1)}.app-mobile-topbar,.app-sidebar-backdrop,.bottom-tab-bar{display:none}@media (max-width:719.98px){.app-shell{flex-direction:column}.app-mobile-topbar{display:flex;align-items:center;gap:.75rem;position:sticky;top:0;z-index:30;background:var(--navy-mid);border-bottom:1px solid rgba(201,168,76,.15);padding:calc(.75rem + env(safe-area-inset-top)) 1rem .75rem}.app-menu-button{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--star-white);padding:.25rem;cursor:pointer}.app-mobile-topbar-brand{font-family:Cormorant Garamond,serif;font-size:1.15rem;font-weight:600;color:var(--gold-light)}.app-sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(6,12,26,.6);z-index:45}.app-sidebar{display:flex;position:fixed;top:0;left:0;height:100vh;width:260px;max-width:80vw;transform:translateX(-100%);transition:transform .25s ease;z-index:50;box-shadow:2px 0 16px rgba(0,0,0,.35);padding-top:env(safe-area-inset-top)}.app-sidebar-open{transform:translateX(0)}.app-main{padding-bottom:4.5rem}.bottom-tab-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--navy-mid);border-top:1px solid rgba(201,168,76,.15);padding:.4rem .5rem calc(.4rem + env(safe-area-inset-bottom))}.bottom-tab-link{flex:1;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.35rem .25rem;color:var(--muted);text-decoration:none;transition:color .15s}.bottom-tab-link-active{color:var(--gold-light)}.bottom-tab-icon{display:flex}.bottom-tab-badge-dot{position:absolute;top:-2px;right:-4px;width:8px;height:8px;border-radius:50%;background:var(--gold,#c9a84c);border:1px solid var(--navy-mid)}.bottom-tab-label{font-family:Jost,sans-serif;font-size:.65rem;font-weight:400}}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;max-width:960px;margin:0 auto}.dashboard-card{display:block;background:var(--navy-mid);border:1px solid rgba(201,168,76,.15);border-radius:14px;padding:1.25rem;text-decoration:none;transition:border-color .2s,transform .15s}.dashboard-card:hover{border-color:rgba(201,168,76,.5);transform:translateY(-2px)}.dashboard-card-title{font-family:Cormorant Garamond,serif;font-size:1.15rem;font-weight:600;color:var(--gold-light);margin-bottom:.35rem}.dashboard-card-description{font-family:Jost,sans-serif;font-size:.85rem;font-weight:300;color:var(--muted);line-height:1.4}.dashboard-section-label{font-family:Jost,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);max-width:960px;margin:2rem auto .75rem}.market-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;max-width:1040px;margin:0 auto}@media (min-width:560px){.market-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:820px){.market-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}}@media (min-width:1040px){.market-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.market-card{position:relative;display:flex;flex-direction:column;min-width:0}.market-card-media{position:relative;width:100%;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:var(--navy-light);border:1px solid rgba(201,168,76,.15)}.market-card-media img,.market-card-media>a{display:block;width:100%;height:100%}.market-card-media img{object-fit:cover;transition:transform .25s ease}.market-card:hover .market-card-media img{transform:scale(1.04)}.market-card:hover .market-card-media{border-color:rgba(201,168,76,.45)}.market-card-featured .market-card-media{border:2px solid var(--gold);box-shadow:0 0 0 1px var(--gold),0 4px 18px rgba(201,168,76,.4)}.market-card-empty{width:100%;height:100%;color:var(--muted);font-family:Cormorant Garamond,serif;font-size:.95rem}.market-card-empty,.market-fav{display:flex;align-items:center;justify-content:center}.market-fav{position:absolute;top:8px;right:8px;width:34px;height:34px;border-radius:50%;border:none;cursor:pointer;background:rgba(13,27,46,.55);color:var(--star-white);font-size:1.05rem;line-height:1;transition:background .15s,transform .1s}.market-fav:hover{background:rgba(13,27,46,.82)}.market-fav:active{transform:scale(.9)}.market-fav-active{color:var(--gold-light)}.market-badge{position:absolute;top:8px;left:8px;background:var(--gold);color:var(--navy);font-size:.6rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:3px 7px;border-radius:6px}.market-badge-muted{background:rgba(13,27,46,.8);color:var(--gold-light);border:1px solid rgba(201,168,76,.4)}.market-badges{position:absolute;top:8px;left:8px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;z-index:1}.market-badges .market-badge{position:static}.market-badge-featured{background:var(--gold);color:var(--navy);box-shadow:0 0 0 1px rgba(201,168,76,.6),0 2px 8px rgba(201,168,76,.35)}.market-body{display:block;text-decoration:none;padding:.5rem .15rem 0}.market-price{font-family:Jost,sans-serif;font-weight:600;font-size:1rem;color:var(--star-white)}.market-title{font-family:Jost,sans-serif;font-size:.82rem;font-weight:300;color:var(--star-white)}.market-meta,.market-title{margin-top:.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-meta{font-size:.74rem;color:var(--muted)}.market-meta-brand{color:var(--gold-light)}.market-verified{color:var(--gold)}.account-switch{position:relative;margin-bottom:1.25rem}.account-box{display:flex;align-items:center;gap:.6rem;width:100%;padding:.5rem .6rem;background:var(--navy-light);border:1px solid rgba(201,168,76,.25);border-radius:12px;cursor:pointer;text-align:left;font-family:Jost,sans-serif;transition:border-color .15s,background .15s}.account-box:hover{border-color:var(--gold-dim);background:rgba(201,168,76,.08)}.account-box-avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--navy-mid);border:1px solid rgba(201,168,76,.4)}.account-box-avatar img{width:100%;height:100%;object-fit:cover}.account-box-initial{color:var(--gold-light);font-family:Cormorant Garamond,serif;font-weight:600;font-size:1rem;line-height:1}.account-box-text{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.2}.account-box-name{color:var(--star-white);font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-box-hint{color:var(--muted);font-size:.7rem;transition:color .15s}.account-box:hover .account-box-hint{color:var(--gold-light)}.account-box-chevron{color:var(--muted);font-size:.9rem;flex-shrink:0}.account-quick{display:flex;gap:.4rem;margin-top:.45rem}.account-quick-link{flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:.35rem;min-height:34px;padding:.3rem .5rem;border:1px solid rgba(201,168,76,.25);border-radius:10px;background:var(--navy-light);color:var(--star-white);font-size:.8rem;font-weight:500;text-decoration:none;transition:border-color .15s,background .15s}.account-quick-link-active,.account-quick-link:hover{border-color:var(--gold-dim);background:rgba(201,168,76,.08);color:var(--gold-light)}.account-quick-badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--error);color:#fff;font-size:.68rem;font-weight:600;line-height:18px;text-align:center}.account-box-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:60;background:var(--navy-mid);border:1px solid rgba(201,168,76,.3);border-radius:12px;padding:.35rem;box-shadow:0 12px 28px rgba(0,0,0,.45)}.account-menu-item{display:flex;flex-direction:column;gap:1px;width:100%;box-sizing:border-box;padding:.5rem 1.6rem .5rem .6rem;border:0;background:none;border-radius:8px;text-align:left;text-decoration:none;font-family:inherit;cursor:pointer;color:var(--star-white);position:relative;transition:background .12s}.account-menu-item:hover{background:rgba(201,168,76,.12)}.account-menu-item-active{background:rgba(201,168,76,.1);box-shadow:inset 2px 0 0 var(--gold,#c9a84c)}.account-menu-item-active:after{content:"✓";position:absolute;right:.6rem;top:50%;transform:translateY(-50%);color:var(--gold,#c9a84c);font-size:.8rem;line-height:1}.account-menu-item-label{font-size:.88rem;font-weight:500}.account-menu-item-sub{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.account-menu-item-add{color:var(--gold-light);font-size:.85rem;font-weight:500;border-top:1px solid rgba(201,168,76,.15);margin-top:.2rem}.account-menu-item-signout{width:100%;background:none;border:0;border-top:1px solid rgba(201,168,76,.15);margin-top:.2rem;font-family:inherit;font-size:.85rem;font-weight:500;text-align:left;cursor:pointer;color:var(--muted)}.account-menu-item-signout:hover{color:var(--star-white)}.plan-panel{border:1px solid rgba(201,168,76,.25);border-radius:14px;background:var(--navy-light);padding:1.1rem 1.2rem;margin-bottom:1.25rem}.plan-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.plan-panel-title{font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:600;color:var(--gold-light)}.plan-badge{font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:.25rem .65rem;border-radius:999px;border:1px solid rgba(201,168,76,.35);color:var(--muted)}.plan-badge-basic{color:var(--gold-light);border-color:var(--gold-dim)}.plan-badge-pro{background:linear-gradient(135deg,var(--gold-dim),var(--gold))}.plan-badge-premium,.plan-badge-pro{color:var(--navy);border-color:transparent}.plan-badge-premium{background:linear-gradient(135deg,var(--gold),var(--gold-light));font-weight:700}.plan-panel-sub{font-size:.85rem;font-weight:300;color:var(--muted);line-height:1.45;margin-top:.5rem}.plan-tiers{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1rem}@media (max-width:559.98px){.plan-tiers{grid-template-columns:1fr}}.plan-tier{border:1px solid rgba(201,168,76,.2);border-radius:12px;background:var(--navy-mid);padding:1rem;display:flex;flex-direction:column}.plan-tier-current{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.plan-tier-name{font-family:Cormorant Garamond,serif;font-size:1.15rem;font-weight:600;color:var(--star-white)}.plan-tier-price{font-family:Jost,sans-serif;font-size:1.05rem;font-weight:600;color:var(--gold-light);margin-top:.15rem}.plan-tier-price span{font-size:.78rem;font-weight:300;color:var(--muted)}.plan-tier-desc{font-size:.8rem;font-weight:300;color:var(--muted);line-height:1.4;margin-top:.4rem;flex:1}.plan-tier-actions{display:flex;flex-direction:column;gap:.4rem;margin-top:.85rem}.plan-tier-actions .biz-btn-secondary,.plan-tier-actions .btn-primary,.plan-tier-actions .btn-reject{width:100%;padding:.55rem 1rem;font-size:.8rem;margin-top:0}.plan-tier-current-tag{margin-top:.85rem;font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--gold)}.feed-heading{font-family:Cormorant Garamond,serif;font-size:1.8rem;font-weight:600;color:var(--gold-light);max-width:470px;margin:0 auto 1.5rem;text-align:center}.feed{max-width:470px;margin:0 auto}.feed-card{background:var(--navy-mid);border:1px solid rgba(201,168,76,.22);border-radius:14px;overflow:hidden;margin:0 auto 1.5rem}.feed-card-header{display:flex;align-items:center;gap:.65rem;padding:.7rem .85rem}.feed-avatar-ring{flex-shrink:0;width:40px;height:40px;border-radius:50%;padding:2px;background:linear-gradient(135deg,var(--gold),var(--gold-dim));display:flex}.feed-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;background:var(--navy-light);display:flex;align-items:center;justify-content:center;border:2px solid var(--navy-mid)}.feed-avatar-initial{color:var(--gold-light);font-family:Cormorant Garamond,serif;font-size:1.1rem;font-weight:600;line-height:1}.feed-card-headtext{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.25}.feed-card-user{font-family:Jost,sans-serif;font-size:.88rem;font-weight:600;color:var(--star-white);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-card-user:hover{color:var(--gold-light)}.feed-card-sub{font-size:.72rem;color:var(--muted);font-weight:300;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-card-sub-sponsored{color:var(--gold);letter-spacing:.03em}.feed-card-sub-official{align-self:flex-start;color:var(--gold-light);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:500;border:1px solid var(--gold);border-radius:999px;padding:.05rem .4rem}.feed-card-menu{margin-left:auto;flex-shrink:0}.feed-card-header{flex-wrap:wrap}.feed-card-menu:has(.report-form){flex:1 1 100%;margin-left:0}.report-form{width:100%;margin-top:.5rem}.report-form .form-input{width:100%;box-sizing:border-box}.report-form .school-card-actions{justify-content:center;flex-wrap:wrap;margin-top:.6rem}.feed-media{position:relative;width:100%;background:#0a1420}.feed-media img,.feed-media video{display:block;width:100%;max-height:585px;object-fit:contain;background:#0a1420}.feed-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.feed-carousel::-webkit-scrollbar{display:none}.feed-carousel-slide{flex:0 0 100%;scroll-snap-align:center}.feed-carousel-dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:6px;padding:5px 8px;border-radius:999px;background:rgba(10,20,32,.55)}.feed-carousel-dot{width:6px;height:6px;padding:0;border:none;border-radius:50%;background:rgba(255,255,255,.45);cursor:pointer;transition:background .18s ease,transform .18s ease}.feed-carousel-dot-active{background:var(--gold);transform:scale(1.25)}.feed-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:rgba(10,20,32,.6);color:var(--star-white);font-size:1.25rem;line-height:1;cursor:pointer}.feed-carousel-arrow:hover{background:rgba(10,20,32,.85)}.feed-carousel-arrow-prev{left:8px}.feed-carousel-arrow-next{right:8px}@media (prefers-reduced-motion:reduce){.feed-carousel-dot{transition:none}}.feed-carousel-count{position:absolute;top:10px;right:10px;background:rgba(10,20,32,.7);color:var(--star-white);font-size:.68rem;font-weight:500;letter-spacing:.03em;padding:2px 9px;border-radius:999px;pointer-events:none}.feed-actions{gap:.9rem;padding:.6rem .85rem .2rem}.feed-action-btn,.feed-actions{display:flex;align-items:center}.feed-action-btn{background:none;border:none;padding:0;cursor:pointer;color:var(--star-white);transition:color .15s,transform .1s}.feed-action-btn:hover{color:var(--gold-light)}.feed-action-btn:active{transform:scale(.88)}.feed-action-btn-active{color:var(--gold)}.feed-action-copied{font-size:.72rem;color:var(--gold-light);margin-left:-.4rem}.feed-body{padding:.15rem .9rem .9rem}.feed-caption{font-family:Jost,sans-serif;font-size:.88rem;font-weight:300;color:var(--star-white);line-height:1.45;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.feed-caption-user{font-weight:600;color:var(--star-white);margin-right:.35rem}.feed-time{font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.55rem}.feed-note{color:var(--muted);font-size:.75rem;margin-top:.6rem}.feed-engagement{margin-top:.5rem}.feed-report{margin-top:.6rem}.feed-divider{text-align:center;color:var(--muted);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;max-width:470px;margin:.5rem auto 1.5rem;display:flex;align-items:center;gap:.75rem}.feed-divider:after,.feed-divider:before{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(201,168,76,.3),transparent)}.feed-section-heading{font-family:Cormorant Garamond,serif;font-size:1.3rem;font-weight:600;color:var(--gold-light);max-width:470px;margin:2.25rem auto 1rem;text-align:center}.listing-detail{display:grid;grid-template-columns:1fr;gap:1.5rem;max-width:960px;margin:0 auto}@media (min-width:820px){.listing-detail{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start}.listing-gallery{position:sticky;top:1rem}}.listing-gallery-main{position:relative;width:100%;aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:var(--navy-light);border:1px solid rgba(201,168,76,.15)}.listing-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(13,27,46,.82);color:#fff;font-size:1.7rem;font-weight:700;line-height:1;padding-bottom:3px;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.4);transition:background .15s}.listing-gallery-arrow:hover{background:var(--gold);color:var(--navy);border-color:var(--gold)}.listing-gallery-arrow-prev{left:8px}.listing-gallery-arrow-next{right:8px}.listing-gallery-count{position:absolute;bottom:8px;right:8px;background:rgba(13,27,46,.7);color:#fff;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:10px}.listing-gallery-main img,.listing-gallery-main video{width:100%;height:100%;object-fit:cover;display:block}.listing-thumbs{display:flex;gap:.5rem;margin-top:.6rem;flex-wrap:wrap}.listing-thumb{width:60px;height:60px;border-radius:8px;overflow:hidden;border:1px solid rgba(201,168,76,.25);cursor:pointer;padding:0;background:var(--navy-light)}.listing-thumb img,.listing-thumb video{width:100%;height:100%;object-fit:cover;display:block}.listing-thumb-active{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.listing-thumb-video{display:flex;align-items:center;justify-content:center;color:var(--gold-light);font-size:1.2rem}.listing-title{font-family:Cormorant Garamond,serif;font-weight:600;font-size:1.7rem;line-height:1.15;color:var(--star-white)}.listing-brand{color:var(--gold-light);font-size:.9rem;margin-top:.15rem}.listing-detail-price{font-family:Jost,sans-serif;font-weight:600;font-size:1.65rem;color:var(--star-white);margin-top:.9rem}.listing-detail-price-sub{font-size:.9rem;color:var(--muted);font-weight:300}.listing-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.85rem}.listing-chip{font-size:.74rem;color:var(--gold-light);background:var(--navy-light);border:1px solid rgba(201,168,76,.3);padding:.28rem .62rem;border-radius:999px}.listing-chip-alert{color:var(--star-white);background:rgba(201,168,76,.18);border-color:var(--gold)}.filter-chips{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.filter-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .7rem;border:1px solid var(--gold);border-radius:999px;background:transparent;color:var(--gold-light);font:inherit;font-size:.85rem;cursor:pointer}.filter-chip-x{opacity:.7}.filter-section-summary{cursor:pointer;font-weight:700;color:var(--gold-light)}.marketplace-actions{display:flex;gap:.6rem;flex-wrap:wrap;width:100%}.marketplace-actions>.btn-primary{width:auto;flex:1 1 0;padding-inline:.9rem;white-space:nowrap}.btn-primary.btn-outline{background:transparent;border:1px solid var(--gold)}.btn-primary.btn-outline,:root[data-theme=light] .btn-primary.btn-outline{background-image:none;color:var(--gold-light)}.marketplace-quiet-links{display:flex;align-items:center;gap:.2rem .9rem;flex-wrap:wrap;width:100%}.marketplace-quiet-links .sep{color:var(--muted)}@media (pointer:coarse){.filter-chip{min-height:44px;padding-inline:.9rem}.filter-section-summary{padding-block:.8rem}.filter-clear-all{min-height:44px}.marketplace-quiet-links a{padding-block:.6rem}}.listing-protect{display:flex;gap:.5rem;align-items:flex-start;margin-top:1rem;padding:.65rem .8rem;background:var(--navy-light);border:1px solid rgba(201,168,76,.2);border-radius:10px;font-size:.78rem;color:var(--muted);line-height:1.4}.listing-actions{display:flex;flex-direction:column;gap:.6rem;margin-top:1.1rem}.listing-actions>.btn-primary,.listing-actions>.btn-reject{width:100%;text-align:center;justify-content:center}.listing-actions-row{display:flex;gap:.6rem}.listing-actions-row>*{flex:1}.share-wrap{position:relative}.share-wrap>.btn-reject{width:100%;text-align:center;justify-content:center}.share-menu{position:absolute;bottom:calc(100% + .4rem);left:0;right:0;z-index:20;display:flex;flex-direction:column;padding:.3rem;background:var(--navy-light);border:1px solid rgba(201,168,76,.3);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.4)}.share-menu-item{display:flex;align-items:center;gap:.55rem;width:100%;padding:.6rem .7rem;background:transparent;border:none;border-radius:7px;color:var(--star-white);font-family:Jost,sans-serif;font-size:.9rem;font-weight:500;text-align:left;text-decoration:none;cursor:pointer;transition:background .15s}.share-menu-item:hover{background:rgba(201,168,76,.12)}.listing-section{margin-top:1.6rem}.listing-section-title{font-family:Jost,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}.listing-detail-desc{color:var(--star-white);font-weight:300;line-height:1.6;margin:0}.listing-facts{display:flex;flex-direction:column;gap:.3rem}.listing-fact{display:flex;gap:.6rem;font-size:.85rem}.listing-fact-label{color:var(--muted);min-width:120px;flex:0 0 auto}.listing-fact-value{color:var(--star-white);font-weight:300}:root[data-theme=light]{--navy:#f4f7f1;--navy-mid:#ffffff;--navy-light:#e9efe4;--gold:#a67c1e;--gold-light:#7d5e14;--gold-dim:#c7ad63;--star-white:#22301f;--muted:#5c6d59;--error:#b23b2e;--warning:#8a6212;--ok:#1f7a4d}:root[data-theme=light] .bottom-tab-badge-dot,:root[data-theme=light] .btn-approve,:root[data-theme=light] .btn-primary,:root[data-theme=light] .market-badge{color:#1c2b18}:root[data-theme=light] .auth-card{box-shadow:0 8px 28px rgba(34,48,31,.12)}:root[data-theme=light] .avatar-thumb-remove,:root[data-theme=light] .market-fav,:root[data-theme=light] .media-edit-button,:root[data-theme=light] .profile-menu-button{color:#ffffff}:root[data-theme=light] .market-fav-active{color:#f2c14e}:root[data-theme=light] .market-badge-muted{color:#ecd9a0}:root[data-theme=light] .auth-card,:root[data-theme=light] .dashboard-card,:root[data-theme=light] .feed-card,:root[data-theme=light] .school-card{border-color:rgba(124,94,20,.22);box-shadow:0 2px 10px rgba(34,48,31,.06)}:root[data-theme=light] .form-input{background:#ffffff;border-color:rgba(124,94,20,.3)}.biz-page{max-width:960px;margin:0 auto;padding:0 1rem 3rem}.biz-hero{background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:16px;overflow:hidden;margin-bottom:1.25rem}.biz-hero-banner{height:200px;background:linear-gradient(135deg,var(--navy-light),var(--navy-mid));background-size:cover;background-position:50%}.biz-hero-body{padding:0 1.75rem 1.5rem}.biz-hero-logo{width:120px;height:120px;border-radius:20px;object-fit:cover;border:4px solid var(--navy-mid);background:var(--navy);margin-top:-60px;justify-content:center;font-size:3rem;color:var(--gold);overflow:hidden}.biz-hero-logo,.biz-hero-name{display:flex;align-items:center;font-family:Cormorant Garamond,serif;font-weight:600}.biz-hero-name{font-size:1.9rem;color:var(--star-white);margin-top:.75rem;flex-wrap:wrap;gap:.6rem}.biz-badge{font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(201,168,76,.5);border-radius:999px;padding:.15rem .6rem}.biz-hero-headline{color:var(--star-white);font-weight:300;margin-top:.35rem}.biz-hero-meta{color:var(--muted);font-size:.85rem;margin-top:.3rem}.biz-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.1rem}.biz-btn,.biz-btn-secondary{padding:.55rem 1.2rem;border-radius:8px;font-family:Jost,sans-serif;font-size:.82rem;font-weight:600;letter-spacing:.03em;cursor:pointer;text-decoration:none;transition:opacity .2s,background .2s}.biz-btn{background:linear-gradient(135deg,var(--gold-dim),var(--gold));border:none;color:var(--navy)}.biz-btn:hover{opacity:.9}.biz-btn-secondary{background:transparent;border:1px solid rgba(201,168,76,.5);color:var(--gold)}.biz-btn-secondary:hover{background:rgba(201,168,76,.12)}.biz-layout{display:grid;grid-template-columns:1fr 300px;gap:1.25rem;align-items:start}@media (max-width:819.98px){.biz-layout{grid-template-columns:1fr}}.biz-card{background:var(--navy-mid);border:1px solid rgba(201,168,76,.25);border-radius:16px;padding:1.5rem 1.75rem;margin-bottom:1.25rem}.biz-card-title{font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:600;color:var(--star-white);margin:0 0 .75rem}.biz-main .school-card{max-width:none;margin-left:0;margin-right:0}.biz-detail-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:.9rem}.biz-detail-value{color:var(--star-white);font-weight:300;font-size:.9rem;margin-top:.15rem;word-break:break-word}.biz-detail-value a{color:var(--gold);text-decoration:none}.biz-detail-value a:hover{text-decoration:underline}:root[data-theme=light] .biz-card,:root[data-theme=light] .biz-hero{box-shadow:0 2px 10px rgba(34,48,31,.06);border-color:rgba(124,94,20,.22)}@keyframes bizFade{0%{opacity:0}to{opacity:1}}.biz-showcase-media{animation:bizFade .6s ease}@media (prefers-reduced-motion:reduce){.biz-showcase-media{animation:none}}.policy-dialog{width:min(640px,calc(100vw - 2rem));max-height:min(80vh,44rem);padding:0;border:1px solid rgba(201,168,76,.25);border-radius:16px;background:var(--navy-mid);color:var(--star-white);overflow:hidden}.policy-dialog::backdrop{background:rgba(0,0,0,.6)}.policy-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid rgba(201,168,76,.25);position:sticky;top:0;background:var(--navy-mid)}.policy-dialog-body{padding:1rem 1.25rem 1.5rem;overflow-y:auto;max-height:calc(min(80vh, 44rem) - 4.5rem)}.file-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.media-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;background:var(--navy-light);border:1px dashed rgba(201,168,76,.35);color:var(--muted);font-family:Jost,sans-serif;font-size:.8rem;text-align:center;cursor:pointer}.media-placeholder:focus-within,.media-placeholder:hover{border-color:rgba(201,168,76,.7);color:var(--gold-light)}.media-placeholder-icon{font-size:1.3rem;line-height:1}.diary-entry{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.diary-entry-main{flex:1 1 14rem;min-width:0}.diary-entry-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--field-min,170px),1fr));gap:.25rem .75rem;margin-bottom:1.1rem}.field-row>.form-group{display:grid;grid-template-rows:subgrid;grid-row:span 2;align-content:start;margin-bottom:0}.place-row{display:grid;gap:.4rem .75rem;grid-template-columns:1fr 1fr 1.2fr;grid-template-areas:"placedLabel fieldLabel scoreLabel" "placedInput fieldInput scoreInput";margin-bottom:.4rem}@media (max-width:559.98px){.place-row{grid-template-columns:1fr 1fr;grid-template-areas:"placedLabel fieldLabel" "placedInput fieldInput" "scoreLabel  scoreLabel" "scoreInput  scoreInput"}}.ceili-row{display:flex;flex-wrap:wrap;gap:.4rem .5rem;padding:.6rem 0;border-top:1px solid rgba(201,168,76,.18)}.ceili-field{display:flex;flex-direction:column;gap:.2rem;flex:1 1 10rem;min-width:8rem}.ceili-field-num{flex:0 1 5.5rem;min-width:5rem}.ceili-field-wide{flex:2 1 13rem}.ceili-field-label{font-size:.72rem;color:var(--muted)}.banner-frame{position:relative;width:100%;height:120px;border-radius:10px;overflow:hidden;touch-action:none;cursor:grab}.banner-frame:active{cursor:grabbing}.banner-frame img{width:100%;height:100%;object-fit:cover;display:block;user-select:none;-webkit-user-drag:none}.banner-position-row{display:flex;align-items:center;gap:.6rem;margin-top:.5rem}.banner-position-row input[type=range]{flex:1;accent-color:var(--gold-light)}.modal-card{width:min(420px,calc(100vw - 2rem));margin:auto;max-height:min(85vh,46rem);overflow-y:auto;padding:1rem 1.1rem 1.25rem;border:1px solid rgba(201,168,76,.25);border-radius:16px;background:var(--navy-mid);color:var(--star-white)}.modal-card::backdrop{background:rgba(0,0,0,.6)}.modal-card--wide{width:min(560px,calc(100vw - 2rem))}.modal-title{font-family:Cormorant Garamond,serif;font-size:1.15rem;font-weight:600;margin-bottom:.75rem}.colours-button{display:inline-flex;align-items:center;gap:.35rem;margin:.5rem auto 0;padding:.3rem .8rem;border-radius:20px;border:1px solid rgba(201,168,76,.5);background:transparent;color:var(--gold-dim);font-family:Jost,sans-serif;font-size:.78rem;font-weight:600;cursor:pointer}.colours-button:hover{background:rgba(201,168,76,.1)}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:.6rem;margin-top:1rem}.cropper-stage{position:relative;width:100%;aspect-ratio:1;overflow:hidden;border-radius:12px;background:var(--navy);touch-action:none;cursor:grab;user-select:none}.cropper-stage:active{cursor:grabbing}.cropper-stage:focus-visible{outline:2px solid var(--gold-light);outline-offset:2px}.cropper-photo{top:0;left:0;transform-origin:0 0;max-width:none;display:block;-webkit-user-drag:none}.cropper-photo,.cropper-ring{position:absolute;pointer-events:none}.cropper-ring{inset:0;margin:auto;width:100%;aspect-ratio:1;border-radius:50%;border:2px solid rgba(245,240,232,.9);box-shadow:0 0 0 9999px rgba(13,27,46,.5)}.cropper-hint{color:var(--muted);font-size:.75rem;margin-top:.6rem}.cropper-zoom{display:flex;align-items:center;gap:.6rem;margin-top:.5rem}.cropper-zoom input[type=range]{flex:1;accent-color:var(--gold-light)}.cropper-zoom-step{width:2rem;height:2rem;flex:none;border-radius:50%;border:1px solid var(--gold-light);background:transparent;color:var(--gold-light);font-size:1.1rem;line-height:1;cursor:pointer}.cropper-zoom-step:disabled{opacity:.4;cursor:not-allowed}.modal-error{color:var(--error);font-size:.8rem;margin-top:.6rem}.coachmark{position:relative}.coachmark-on{border-radius:12px;outline:2px solid var(--gold-light);outline-offset:5px;animation:coach-pulse 1.9s ease-in-out infinite}@keyframes coach-pulse{0%,to{outline-color:rgba(201,168,76,.3)}50%{outline-color:rgba(201,168,76,.85)}}.coachmark-tip{display:inline-flex;align-items:center;gap:.5rem;background:var(--gold-light);color:var(--navy);font-size:.72rem;font-weight:600;padding:.2rem .4rem .2rem .6rem;border-radius:999px;margin-bottom:.5rem}.coachmark-dismiss{all:unset;cursor:pointer;text-decoration:underline;padding:0 .15rem}@media (prefers-reduced-motion:reduce){.coachmark-on{animation:none;outline-color:rgba(201,168,76,.7)}}.feed-composer{display:flex;align-items:center;gap:.75rem;background:var(--navy-mid);border:1px solid rgba(201,168,76,.22);border-radius:14px;padding:.7rem .85rem;margin:0 auto 1.25rem;text-decoration:none;transition:border-color .2s,box-shadow .2s}.feed-composer:hover{border-color:var(--gold)}.feed-composer-plus{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;line-height:1;color:#1c2b18;background:linear-gradient(135deg,var(--gold-dim),var(--gold))}.feed-composer-text{color:var(--muted);font-size:.9rem}.feed-filter{position:relative;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin:0 0 .85rem}.feed-filter-chips{display:flex;gap:.4rem;flex-wrap:wrap}.feed-filter-chip{background:var(--navy-mid);border:1px solid rgba(201,168,76,.3);border-radius:999px;color:var(--star-white);font-size:.82rem;padding:.35rem .85rem;cursor:pointer}.feed-filter-chip-active{border-color:var(--gold);color:var(--gold-light);background:rgba(201,168,76,.12)}.feed-filter-age{flex:0 1 170px;padding:.35rem .6rem;font-size:.82rem}.feed-filter-btn{display:inline-flex;align-items:center;gap:.45rem;background:var(--navy-mid);border:1px solid rgba(201,168,76,.3);border-radius:999px;color:var(--star-white);padding:.35rem .9rem;font-family:Jost,sans-serif;font-size:.8rem;cursor:pointer}.feed-filter-icon{font-size:1rem;line-height:1}.feed-filter-menu{position:absolute;top:calc(100% + .35rem);right:0;z-index:30;min-width:190px;background:var(--navy-mid);border:1px solid rgba(201,168,76,.3);border-radius:12px;padding:.3rem;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(34,48,31,.18)}.feed-filter-item{text-align:left;background:none;border:none;color:var(--star-white);font-family:Jost,sans-serif;font-size:.85rem;padding:.5rem .7rem;border-radius:8px;cursor:pointer}.feed-filter-item:hover{background:rgba(201,168,76,.12)}.feed-filter-item-active{color:var(--gold-light);font-weight:600}.feed-following-strip{display:flex;gap:.75rem;overflow-x:auto;padding:.15rem .1rem .85rem}.feed-following-chip{flex:0 0 auto;width:68px;display:flex;flex-direction:column;align-items:center;gap:.35rem;text-decoration:none;color:var(--star-white)}.feed-following-avatar{width:56px;height:56px;border-radius:50%;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:rgba(201,168,76,.15);border:2px solid var(--gold-dim);color:var(--gold-light);font-weight:600}.feed-following-avatar img{width:100%;height:100%;object-fit:cover}.feed-following-name{font-size:.72rem;line-height:1.2;text-align:center;max-width:68px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-filter-item-parent{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.feed-filter-submenu{display:flex;flex-direction:column;max-height:280px;overflow-y:auto}.feed-filter-back{color:var(--muted)}.dress-ring{border-radius:50%}.dress-frame,.dress-ring{display:inline-block;padding:4px;position:relative;line-height:0}.dress-frame{border-radius:24px}.dress-band{height:5px;border-radius:3px;margin:0 auto;max-width:260px;position:relative;overflow:hidden}.dress-band,.dress-frame,.dress-ring{box-shadow:inset 0 0 0 1px rgba(31,36,48,.25)}.dress-band:after,.dress-frame:after,.dress-ring:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,0) 35%,rgba(255,255,255,.55) 50%,rgba(255,255,255,0) 65%);background-size:300% 100%;animation:dressSparkle 5.5s ease-in-out infinite}@keyframes dressSparkle{0%{background-position:160% 0}60%{background-position:-60% 0}to{background-position:-60% 0}}@media (prefers-reduced-motion:reduce){.dress-band:after,.dress-frame:after,.dress-ring:after{animation:none;background:none}}.dress-band--crystals:after,.dress-frame--crystals:after,.dress-ring--crystals:after{background:linear-gradient(115deg,rgba(255,255,255,0) 38%,rgba(255,255,255,.9) 50%,rgba(255,255,255,0) 62%);background-size:300% 100%}.dress-band--pearls:after,.dress-frame--pearls:after,.dress-ring--pearls:after{background:linear-gradient(115deg,rgba(255,255,255,0) 20%,rgba(255,244,248,.45) 38%,rgba(236,246,255,.5) 50%,rgba(255,250,235,.45) 62%,rgba(255,255,255,0) 80%);background-size:260% 100%;animation-duration:7.5s}.dress-frame--pearls,.dress-ring--pearls{border:3px dotted rgba(255,253,248,.92);padding:3px}.dress-band--pearls{border-top:1px dotted rgba(255,253,248,.85);border-bottom:1px dotted rgba(255,253,248,.85)}.dress-backdrop{position:relative;overflow:hidden}.dress-backdrop:before{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.5) 0 1.5px,transparent 1.5px 26px),repeating-linear-gradient(45deg,rgba(255,255,255,.5) 0 1.5px,transparent 1.5px 26px)}.dress-backdrop--crystals:after,.dress-backdrop:before{content:"";position:absolute;inset:0;pointer-events:none}.dress-backdrop--crystals:after{background-image:radial-gradient(circle at 11% 24%,rgba(255,255,255,.95) 0 1.6px,transparent 2.4px),radial-gradient(circle at 27% 71%,rgba(255,255,255,.85) 0 1.3px,transparent 2.1px),radial-gradient(circle at 43% 33%,rgba(255,255,255,.95) 0 1.8px,transparent 2.6px),radial-gradient(circle at 58% 82%,rgba(255,255,255,.8) 0 1.2px,transparent 2px),radial-gradient(circle at 69% 18%,rgba(255,255,255,.95) 0 1.7px,transparent 2.5px),radial-gradient(circle at 82% 57%,rgba(255,255,255,.88) 0 1.4px,transparent 2.2px),radial-gradient(circle at 93% 30%,rgba(255,255,255,.95) 0 1.6px,transparent 2.4px),radial-gradient(circle at 36% 92%,rgba(255,255,255,.8) 0 1.2px,transparent 2px);animation:dressTwinkle 4.5s ease-in-out infinite}@keyframes dressTwinkle{0%,to{opacity:.4}50%{opacity:1}}.dress-backdrop--pearls:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,253,248,.75) 0 2.5px,transparent 3.2px);background-size:34px 34px;background-position:8px 8px}@media (prefers-reduced-motion:reduce){.dress-backdrop--crystals:after{animation:none;opacity:.75}}.data-limit-backdrop{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(20,30,24,.55);overflow-y:auto}.data-limit-panel{width:100%;max-width:460px;display:flex;flex-direction:column;align-items:center;gap:.5rem;margin:auto}.data-limit-panel .school-card{width:100%;margin:0}.data-limit-panel>button{background:none;border:none;cursor:pointer;color:rgba(255,255,255,.92);padding:.35rem .75rem}.data-limit-panel>button:hover{color:#fff;text-decoration:underline}.composer-sticky{position:sticky;bottom:.75rem;z-index:5;margin-bottom:.75rem;padding:.9rem 1.1rem;box-shadow:0 -8px 20px rgba(0,0,0,.18)}@media (max-width:719.98px){.composer-sticky{bottom:0;margin-bottom:0;padding-bottom:calc(.9rem + env(safe-area-inset-bottom));border-bottom-left-radius:0;border-bottom-right-radius:0}}:root{--chat-mine:#1f3d33;--chat-theirs:#1e2f47;--chat-edge:rgba(201,168,76,0.14)}:root[data-theme=light]{--chat-mine:#dff0d6;--chat-theirs:#ffffff;--chat-edge:rgba(34,48,31,0.10)}.chat-thread{display:flex;flex-direction:column}.chat-row{display:flex;width:100%;margin-top:.1rem}.chat-row.chat-turn{margin-top:.55rem}.chat-row.mine{justify-content:flex-end}.chat-stack{max-width:78%;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.chat-row.mine .chat-stack{align-items:flex-end}.chat-sender{font-size:.74rem;font-weight:500;color:var(--gold-light);margin:0 0 .12rem .6rem}.chat-bubble{position:relative;padding:.4rem .62rem .3rem;border-radius:14px;background:var(--chat-theirs);border:1px solid var(--chat-edge);color:var(--star-white);font-weight:300;line-height:1.38;overflow-wrap:anywhere}.chat-bubble.mine{background:var(--chat-mine)}.chat-row.chat-turn .chat-bubble{border-top-left-radius:4px}.chat-row.chat-turn.mine .chat-bubble{border-top-left-radius:14px;border-top-right-radius:4px}.chat-time{float:right;margin:.3rem 0 0 .6rem;font-size:.64rem;line-height:1;color:var(--muted);white-space:nowrap}.chat-bubble:after{content:"";display:block;clear:both}.chat-undertray{display:flex;align-items:center;gap:.15rem;min-height:1.1rem}.chat-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.15rem;padding:0 .3rem}.chat-more{background:none;border:none;padding:0 .3rem;cursor:pointer;color:var(--muted);font-size:.95rem;line-height:1;opacity:0;transition:opacity .12s ease}.chat-more.is-open,.chat-more:focus-visible,.chat-stack:hover .chat-more{opacity:1}@media (hover:none){.chat-more{opacity:.55}}.chat-main{min-height:0}.chat-page{display:flex;flex-direction:column;min-height:calc(100dvh - 10rem)}@media (max-width:719.98px){.app-shell:has(.immersive-page) .bottom-tab-bar{display:none}.app-shell:has(.immersive-page){height:100dvh;display:flex;flex-direction:column;overflow:hidden}.app-shell:has(.immersive-page) .app-main{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}.app-shell:has(.immersive-page) .app-main>.immersive-page,.app-shell:has(.immersive-page) .app-main>:has(.immersive-page){flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding-bottom:0}.immersive-page.chat-page{flex:1 1 auto;min-height:0}.immersive-page .chat-thread{flex:1 1 auto;min-height:0;overflow-y:auto}.immersive-page .composer-sticky{position:static}.immersive-page{--chat-gutter:1.5rem}.app-shell:has(.immersive-page) .app-main>.immersive-page,.app-shell:has(.immersive-page) .app-main>:has(.immersive-page){padding-left:0;padding-right:0}.immersive-page>.chat-thread,.immersive-page>:first-child{padding-left:var(--chat-gutter);padding-right:var(--chat-gutter)}.immersive-page .composer-sticky{margin-left:0;margin-right:0;border-radius:0;border-left:0;border-right:0}}.chat-attach-sheet{grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:.6rem;padding-top:.6rem;border-top:1px solid rgba(201,168,76,.18)}.attach-tile{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.6rem .2rem;background:none;border:none;border-radius:12px;cursor:pointer;color:inherit;font:inherit}.attach-tile.is-on,.attach-tile:hover{background:rgba(201,168,76,.1)}.attach-tile-icon{width:48px;height:48px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1.35rem;background:var(--navy-light,rgba(201,168,76,.12));border:1px solid rgba(201,168,76,.25)}.attach-tile.is-on .attach-tile-icon{border-color:var(--gold,#c9a84c)}.attach-tile-label{font-size:.72rem;opacity:.85;line-height:1.2}.chat-page .chat-thread{flex:1 1 auto}.chat-icon-button{width:36px;height:36px;flex:0 0 auto;border-radius:50%;border:1px solid var(--chat-edge);background:transparent;color:var(--gold-light);font-size:1rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.chat-icon-button.is-on,.chat-icon-button:hover{background:var(--navy-light)}.chat-menu{position:absolute;right:0;top:42px;z-index:20;min-width:190px;padding:.35rem;border-radius:12px;border:1px solid var(--chat-edge);background:var(--navy-mid);box-shadow:0 10px 28px rgba(0,0,0,.18)}.chat-menu button{display:block;width:100%;text-align:left;padding:.5rem .6rem;border:none;border-radius:8px;background:none;color:var(--star-white);font:inherit;cursor:pointer}.chat-menu button:hover{background:var(--navy-light)}.chat-menu button.is-danger{color:var(--error)}@media (max-width:719.98px){.chat-page{min-height:calc(100dvh - 14rem)}}.chat-composer-row{display:flex;gap:.5rem;align-items:flex-end}.chat-add{width:40px;min-width:40px;height:40px;flex:0 0 auto;border-radius:50%;border:1px solid var(--chat-edge);background:var(--navy-light);color:var(--gold-light);font-size:1.25rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.chat-add.is-open{background:var(--gold);color:var(--navy)}