@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700;800&family=Fraunces:opsz,wght@9..144,600&display=swap";:root{font-family:Manrope,Avenir Next,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#0f172a;background:#e8efe9}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(130deg,#ffefd599,#ddeefc59),repeating-linear-gradient(-45deg,#ffffff73,#ffffff73 16px,#ffffff26 16px 32px)}h1,h2{font-family:Fraunces,Georgia,serif}.landing-page{width:min(1120px,100% - 2rem);margin:1.5rem auto;padding:1rem;border-radius:24px;background:radial-gradient(circle at 85% 8%,rgba(255,200,122,.28),transparent 28%),radial-gradient(circle at 12% 72%,rgba(107,197,190,.18),transparent 26%),#fbf8f2;border:1px solid #e8e2d6;box-shadow:0 24px 60px #1d1f2b1c}.site-header-shell{width:min(1120px,100% - 2rem);margin:1rem auto 0;padding:.8rem 1rem;border-radius:20px;background:#fbf8f2;border:1px solid #e8e2d6;box-shadow:0 12px 30px #1d1f2b14}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem .6rem}.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none}.brand-mark{width:2.2rem;height:2.2rem;border-radius:12px;display:grid;place-items:center;font-size:.75rem;font-weight:700;letter-spacing:.05em;color:#fff;background:linear-gradient(145deg,#0f766e,#155e75)}.brand-text{font-size:1.1rem;font-weight:700;color:#1f2937}.top-nav{display:flex;gap:1.2rem}.top-nav a{text-decoration:none;color:#334155;font-size:.95rem}.nav-inbox-link,.nav-booking-link{display:inline-flex;align-items:center;gap:.35rem}.nav-inbox-badge,.nav-booking-badge{min-width:1.25rem;height:1.25rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 .35rem;background:#0f766e;color:#fff;font-size:.72rem;font-weight:700;line-height:1}.nav-inbox-icon,.nav-booking-icon{width:1rem;height:1rem;color:#0f172a;display:inline-flex}.nav-inbox-icon svg{width:100%;height:100%;display:block}.nav-booking-icon svg{width:100%;height:100%;display:block}.auth-actions,.hero-cta{display:flex;gap:.6rem}.btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:.55rem 1rem;font-size:.92rem;font-weight:600;cursor:pointer}.btn-solid{color:#fff;background:linear-gradient(135deg,#0f766e,#1d4ed8)}.btn-google{color:#0f172a;background:#fff;border:1px solid #d1d5db}.btn-ghost{color:#0f172a;background:#fff;border:1px solid #d7deea}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:1.5rem;padding:2.3rem .6rem 1.5rem}.eyebrow{margin:0;color:#155e75;font-weight:700;letter-spacing:.05em;text-transform:uppercase;font-size:.74rem}.hero-copy h1{margin:.5rem 0 0;font-size:clamp(1.9rem,4.6vw,3.25rem);line-height:1.08;color:#111827;max-width:20ch}.lead{margin-top:1.05rem;color:#334155;max-width:58ch;font-size:1.02rem}.hero-cta{margin-top:1.4rem}.signed-in-card{margin-top:1rem;border:1px solid #c7d2fe;background:#f8faff;border-radius:14px;padding:.8rem .95rem}.signed-in-title{margin:0;color:#1e3a8a;font-weight:700}.signed-in-email{margin:.25rem 0 0;color:#334155;font-size:.92rem}.dashboard-panel,.public-stats-panel{margin-top:1rem;border:1px solid #dbeafe;border-radius:16px;background:#fff;padding:.9rem;display:grid;gap:.8rem}.public-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.dashboard-panel-header{display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.dashboard-title{margin:0;font-size:1.02rem;color:#0f172a}.dashboard-meta{margin:0;color:#475569;font-size:.86rem}.dashboard-error{margin:0;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.45rem .55rem}.dashboard-interval-controls{display:inline-flex;gap:.35rem;background:#f8fafc;border:1px solid #dbeafe;border-radius:999px;padding:.2rem}.dashboard-interval-button{border:0;border-radius:999px;background:transparent;color:#334155;font-weight:700;font-size:.77rem;padding:.26rem .58rem;cursor:pointer}.dashboard-interval-button.is-active{background:#0f766e;color:#fff}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.dashboard-kpi-card{border:1px solid #e2e8f0;border-radius:12px;padding:.62rem .7rem;background:#f8fbff}.dashboard-kpi-label{margin:0;color:#475569;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.dashboard-kpi-value{margin:.28rem 0 0;color:#0f172a;font-weight:800;font-size:clamp(1rem,2.6vw,1.35rem)}.dashboard-kpi-meta{margin:.2rem 0 0;color:#64748b;font-size:.78rem}.dashboard-chart-grid{display:grid;gap:.65rem;grid-template-columns:1fr}.dashboard-chart-card{border:1px solid #e2e8f0;border-radius:12px;padding:.65rem .7rem;background:#fff}.dashboard-chart-wrap{margin-top:.38rem}.dashboard-chart{width:100%;height:auto;display:block}.dashboard-grid-line{stroke:#e2e8f0;stroke-width:1}.dashboard-axis-label{fill:#64748b;font-size:10px;font-weight:600}.dashboard-chart-empty{margin:.4rem 0 0;color:#64748b;font-size:.86rem}.dashboard-subject-list{list-style:none;margin:.5rem 0 0;padding:0;display:grid;gap:.35rem}.dashboard-subject-list li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid #e2e8f0;border-radius:9px;padding:.42rem .5rem;color:#0f172a}.dashboard-subject-list strong{color:#0f172a}.info-grid{display:grid;gap:.85rem}.info-grid article{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1rem}.info-grid h2{margin:0;font-size:1.05rem;color:#0f172a}.info-grid p{margin:.45rem 0 0;color:#475569}.site-footer{margin-top:1rem;display:flex;justify-content:space-between;gap:1rem;padding:1rem .6rem .7rem;border-top:1px solid #e2e8f0;color:#475569;font-size:.88rem}.site-footer p{margin:0}.session-pill{border-radius:999px;padding:.42rem .85rem;background:#e0f2fe;color:#0c4a6e;font-size:.85rem;font-weight:600}.profile-chip{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;padding:.3rem .62rem .3rem .35rem;background:#e0f2fe;color:#0c4a6e;border:1px solid #bae6fd;text-decoration:none}.profile-chip-avatar,.profile-chip-fallback{width:1.65rem;height:1.65rem;border-radius:999px;flex:0 0 auto}.profile-chip-avatar{object-fit:cover;border:1px solid #93c5fd;background:#fff}.profile-chip-fallback{display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#fff;background:linear-gradient(145deg,#0f766e,#155e75)}.profile-chip-name{max-width:8.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:700}.account-shell{width:min(760px,100% - 2rem);margin:2.2rem auto}.account-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:1.5rem;box-shadow:0 16px 40px #0f172a14}.account-card h1{margin:0;color:#0f172a}.account-muted{margin:.5rem 0 0;color:#64748b}.account-profile{margin-top:1rem;padding:.9rem;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;display:flex;align-items:center;gap:.75rem}.account-avatar,.account-avatar-fallback{width:2.75rem;height:2.75rem;border-radius:999px;flex:0 0 auto}.account-avatar{object-fit:cover;border:1px solid #93c5fd;background:#fff}.account-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:#fff;background:linear-gradient(145deg,#0f766e,#155e75)}.account-name{margin:0;color:#0f172a;font-weight:700}.account-email{margin:.2rem 0 0;color:#475569;font-size:.92rem}.account-actions{margin-top:1rem;display:flex;gap:.6rem}.inbox-list{margin-top:.8rem;display:grid;gap:.6rem}.inbox-card{width:min(1100px,100%)}.inbox-layout{margin-top:.9rem;display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:.75rem;min-height:26rem}.inbox-senders{border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;padding:.45rem;overflow:auto;max-height:34rem;display:grid;gap:.4rem}.inbox-sender-item{border:1px solid #d7dbe4;border-radius:10px;background:#fff;padding:.55rem .6rem;text-align:left;cursor:pointer;display:grid;gap:.25rem}.inbox-sender-item.is-active{border-color:#0f766e;box-shadow:inset 0 0 0 1px #0f766e33;background:#f0fdfa}.inbox-sender-head{display:flex;align-items:center;justify-content:space-between;gap:.45rem}.inbox-sender-head>strong{color:#0f172a}.inbox-sender-head>span{min-width:1.1rem;border-radius:999px;background:#0f766e;border:1px solid #0f766e;color:#0f172a;font-size:.74rem;text-align:center;padding:.05rem .35rem;color:#fff}.inbox-sender-item p{margin:0;color:#475569;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-sender-item small{color:#64748b;font-size:.75rem}.inbox-conversation{border:1px solid #dbeafe;border-radius:12px;background:#fff;padding:.75rem;display:grid;grid-template-rows:auto minmax(0,1fr);gap:.6rem}.inbox-conversation-head h2{margin:0;color:#0f172a;font-size:1rem}.inbox-sender-profile-link{color:#0f172a;text-decoration:none;border-bottom:1px dashed #94a3b8}.inbox-sender-profile-link:hover{color:#0f766e;border-bottom-color:#0f766e}.inbox-conversation-head p{margin:.2rem 0 0;color:#64748b;font-size:.86rem}.inbox-messages{display:grid;gap:.5rem;max-height:28rem;overflow:auto;padding-right:.2rem}.inbox-message-item{border:1px solid #e2e8f0;border-radius:10px;background:#f8fbff;padding:.55rem .65rem;display:grid;gap:.35rem}.inbox-message-item.is-outgoing{border-color:#ccfbf1;background:#ecfeff}.inbox-message-item p{margin:0;color:#0f172a;white-space:pre-wrap}.inbox-message-item small{color:#64748b;font-size:.78rem}.inbox-reply-box{border-top:1px solid #e2e8f0;padding-top:.65rem;display:grid;gap:.4rem}.inbox-reply-box label{color:#0f172a;font-weight:600}.inbox-reply-box textarea{resize:vertical;min-height:4.5rem}.inbox-reply-actions{display:flex;justify-content:space-between;align-items:center;gap:.7rem}.inbox-reply-actions small{color:#64748b}.inbox-item{border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;padding:.7rem .8rem}.inbox-item-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.inbox-item-head p{margin:0}.inbox-item-head p span{color:#64748b;margin-left:.4rem}.inbox-item-head>span{color:#0f172a;font-size:.85rem;font-weight:700}.search-tutors-card{width:min(920px,100%)}.booking-requests-card{width:min(980px,100%)}.booking-requests-list{margin-top:.9rem;display:grid;gap:.7rem}.booking-requests-section-title{margin:1rem 0 .3rem;font-size:1rem;color:#0f172a}.booking-request-item{border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;padding:.75rem;display:grid;gap:.35rem}.booking-request-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.booking-request-head h2{margin:0;font-size:1rem;color:#0f172a}.booking-request-head small{color:#64748b;font-size:.78rem}.booking-request-actions{margin-top:.35rem;display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.booking-request-decision{width:2.1rem;height:2.1rem;border-radius:999px;border:1px solid #d7dbe4;background:#fff;color:#0f172a;font-weight:700;font-size:1rem;line-height:1;cursor:pointer}.booking-request-accept{border-color:#10b981;color:#047857;background:#ecfdf5}.booking-request-reject{border-color:#f43f5e;color:#be123c;background:#fff1f2}.booking-request-item-timedout{border-color:#d4d4d8;background:#f4f4f5;opacity:.86}.booking-request-collapse-toggle{width:100%;border:0;padding:0;margin:0;text-align:left;background:transparent;cursor:pointer;display:grid;gap:.3rem}.booking-request-timeout-badge{justify-self:start;border-radius:999px;border:1px solid #a1a1aa;color:#52525b;background:#e4e4e7;font-size:.74rem;font-weight:700;padding:.2rem .55rem}.booking-request-timedout-body{margin-top:.35rem;display:grid;gap:.3rem}.complaint-thread{gap:.55rem}.complaint-thread-title{margin:0;font-weight:700}.complaint-status-badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.76rem;font-weight:600;color:#fff;background:#64748b}.complaint-status-badge[data-status=pending_review]{background:#f59e0b}.complaint-status-badge[data-status=accepted_pending_tutor]{background:#3b82f6}.complaint-status-badge[data-status=tutor_responded]{background:#8b5cf6}.complaint-status-badge[data-status=denied]{background:#ef4444}.complaint-status-badge[data-status=approved]{background:#22c55e}.complaint-thread-entry{display:grid;gap:.35rem;padding:.55rem;border:1px solid #d9e2f2;border-radius:10px;background:#f8fafc}.complaint-thread-meta{margin:0;color:#334155}.complaint-thread-body{margin:0;color:#0f172a}.complaint-thread-message{margin:0;max-width:92%;border-radius:10px;padding:.45rem .6rem;border:1px solid #cbd5e1;background:#f1f5f9;display:grid;gap:.12rem}.complaint-thread-message.is-student{justify-self:end;border-color:#86efac;background:#f0fdf4}.complaint-thread-message.is-tutor{justify-self:start;border-color:#bfdbfe;background:#eff6ff}.complaint-thread-author{font-size:.75rem;color:#334155}.complaint-thread-time{font-size:.72rem;color:#64748b}.complaint-thread-text{color:#0f172a}@media(max-width:860px){.inbox-layout,.dashboard-kpi-grid,.public-stats-grid{grid-template-columns:1fr}.inbox-senders{max-height:18rem}}.search-tree-shell{margin-top:1rem;display:grid;grid-template-columns:1.6fr 1fr;gap:.9rem}.search-toolbar{margin-top:.85rem;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;padding:.7rem;display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.search-filter-pills{display:flex;gap:.4rem;flex-wrap:wrap}.search-mode-toggle{display:inline-flex;border:1px solid #bfdbfe;border-radius:999px;background:#fff;padding:.2rem;gap:.2rem}.search-mode-option{border:0;border-radius:999px;background:transparent;color:#334155;font-size:.8rem;font-weight:700;padding:.26rem .6rem;cursor:pointer}.search-mode-option.is-active{background:#dbeafe;color:#1d4ed8}.search-filter-pill{border-radius:999px;padding:.22rem .55rem;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;font-size:.78rem;font-weight:600}.search-filter-pill.is-empty{border-color:#d7dbe4;background:#fff;color:#64748b}.search-tree-panel,.search-level-panel{border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;padding:.8rem}.search-tree-panel-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.search-tree-title{margin:0;color:#0f172a;font-size:.95rem;font-weight:700}.search-tree-breadcrumbs{margin-top:.55rem;display:flex;flex-wrap:wrap;gap:.4rem}.search-tree-crumb{border:1px solid #bfdbfe;background:#fff;color:#1d4ed8;border-radius:999px;padding:.25rem .6rem;font-size:.78rem;cursor:pointer}.search-tree-crumb.is-active{border-color:#1d4ed8;background:#dbeafe}.search-tree-options{margin-top:.7rem;display:grid;gap:.45rem}.search-tree-option{border:1px solid #d7dbe4;background:#fff;border-radius:11px;padding:.6rem .7rem;color:#0f172a;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:.55rem;cursor:pointer}.search-tree-option:hover{border-color:#93c5fd;background:#eff6ff}.search-tree-option.is-selected{border-color:#0f766e;background:#ccfbf1}.search-tree-option.is-selected .search-tree-option-affordance{color:#0f766e}.search-tree-option-affordance{color:#475569;font-size:.82rem;font-weight:700}.search-level-options{margin-top:.6rem;display:flex;flex-wrap:wrap;gap:.45rem}.search-level-option{border:1px solid #d7dbe4;background:#fff;border-radius:999px;padding:.4rem .75rem;color:#0f172a;font-weight:600;cursor:pointer}.search-level-option.is-active{border-color:#0f766e;background:#ccfbf1;color:#0f766e}.search-selection-summary{margin-top:.85rem;border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:.7rem;display:grid;gap:.5rem}.search-location-tools{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.search-selection-summary .btn[disabled]{opacity:.6;cursor:not-allowed}.search-results-panel{margin-top:.9rem;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;padding:.8rem}.search-results-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.search-results-list{margin-top:.6rem;display:grid;gap:.55rem}.search-result-card{border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:.7rem}.search-result-card h3{margin:0;color:#0f172a}.search-result-actions{margin-top:.55rem;display:flex;gap:.45rem;flex-wrap:wrap}.tutor-public-card{max-width:min(1100px,100%)}.tutor-public-actions{margin-top:.6rem;display:flex;gap:.5rem;flex-wrap:wrap}.tutor-public-actions .field-textarea{min-height:5.5rem;width:min(36rem,100%);border:1px solid #d7dbe4;border-radius:10px;padding:.6rem .7rem;font-size:.95rem;resize:vertical;font-family:inherit}.tutor-public-message-feedback{margin-top:.45rem}.tutor-public-qualifications,.tutor-public-locations-section{margin-top:.9rem;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;padding:.75rem}.tutor-public-location-legend{margin-top:.45rem;display:flex;gap:.45rem;flex-wrap:wrap}.tutor-public-legend-item{border-radius:999px;padding:.18rem .55rem;font-size:.78rem;border:1px solid transparent}.tutor-public-legend-home{color:#115e59;border-color:#2dd4bf;background:#ccfbf1}.tutor-public-legend-rented{color:#9a3412;border-color:#fdba74;background:#ffedd5}.tutor-public-location-map{margin-top:.6rem;border-radius:12px;border:1px solid #d7dbe4;height:300px;overflow:hidden}.tutor-public-skill-list{margin-top:.55rem;display:flex;flex-wrap:wrap;gap:.4rem}.tutor-public-skill-chip{border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#1e3a8a;font-size:.8rem;padding:.2rem .55rem}.tutor-public-calendar-section{margin-top:.9rem;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;padding:.75rem}.tutor-public-calendar-head{display:flex;gap:.6rem;align-items:center;justify-content:space-between;flex-wrap:wrap}.tutor-public-week-nav{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.tutor-public-grid{margin-top:.65rem;overflow:auto;display:grid;grid-template-columns:5.2rem repeat(7,minmax(4.3rem,1fr));gap:.35rem;max-height:520px}.tutor-public-corner,.tutor-public-day-label,.tutor-public-time-label,.tutor-public-slot{border-radius:10px}.tutor-public-day-label{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;text-align:center;padding:.4rem .3rem;display:grid;gap:.12rem;position:sticky;top:0;z-index:3}.tutor-public-corner{position:sticky;top:0;z-index:4;background:#f8fbff}.tutor-public-day-label strong{font-size:.84rem}.tutor-public-day-label span{font-size:.74rem}.tutor-public-time-label{border:1px solid #e2e8f0;background:#fff;color:#64748b;text-align:center;font-size:.76rem;padding:.2rem}.tutor-public-slot{border:1px solid #e2e8f0;background:#fff;min-height:2rem;cursor:not-allowed}.tutor-public-slot.is-available{background:#ecfeff;border-color:#67e8f9;cursor:pointer}.tutor-public-slot.is-booked{background:#fee2e2;border-color:#fca5a5;cursor:not-allowed}.tutor-public-slot.is-selected{background:#ccfbf1;border-color:#0f766e}.tutor-public-booking-box{margin-top:.8rem;border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:.7rem}.tutor-public-booking-form{display:grid;gap:.35rem}.tutor-calendar-toolbar{margin-top:.9rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap}.tutor-calendar-week-nav{margin-top:.95rem;display:flex;gap:.55rem;flex-wrap:wrap;align-items:center}.tutor-calendar-week-summary{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;border-radius:12px;min-height:2.45rem;padding:.3rem .7rem;display:inline-flex;flex-direction:column;justify-content:center}.tutor-calendar-week-summary strong{font-size:.87rem}.tutor-calendar-week-summary span{font-size:.78rem}.tutor-calendar-toolbar-actions{display:flex;gap:.5rem;flex-wrap:wrap}.tutor-calendar-slot-legend{margin-top:.55rem;display:flex;gap:.45rem;flex-wrap:wrap}.tutor-calendar-legend-item{border-radius:999px;padding:.18rem .55rem;font-size:.78rem;border:1px solid transparent}.tutor-calendar-legend-available{color:#0f766e;border-color:#67e8f9;background:#ecfeff}.tutor-calendar-legend-booked{color:#991b1b;border-color:#fca5a5;background:#fee2e2}.tutor-calendar-legend-unavailable{color:#475569;border-color:#d7dbe4;background:#fff}.tutor-calendar-drag-help{margin:.4rem 0 0}.tutor-calendar-wrap{margin-top:.75rem;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;padding:.6rem;overflow:auto;position:relative;max-height:29.6rem}.tutor-calendar-drag-rect{position:absolute;border:1px dashed #0f766e;background:#14b8a62e;border-radius:8px;pointer-events:none;z-index:2}.tutor-calendar-grid{min-width:680px;display:grid;grid-template-columns:5.2rem repeat(7,minmax(4.7rem,1fr));gap:.4rem}.tutor-calendar-corner,.tutor-calendar-day-label,.tutor-calendar-time-label,.tutor-calendar-slot{border-radius:10px}.tutor-calendar-day-label{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;text-align:center;padding:.45rem .35rem;display:grid;gap:.12rem;position:sticky;top:0;z-index:3}.tutor-calendar-corner{position:sticky;top:0;z-index:4;background:#f8fbff}.tutor-calendar-day-label strong{font-size:.85rem}.tutor-calendar-day-label span{font-size:.75rem}.tutor-calendar-time-label{border:1px solid #d7dbe4;background:#fff;color:#475569;font-size:.82rem;text-align:center;padding:.4rem .3rem}.tutor-calendar-slot{border:1px solid #d7dbe4;background:#fff;height:2.2rem;cursor:pointer;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}.tutor-calendar-slot:hover{border-color:#93c5fd;background:#f8fbff}.tutor-calendar-slot.is-active{border-color:#67e8f9;background:#ecfeff;box-shadow:inset 0 0 0 1px #67e8f940}.tutor-calendar-slot.is-booked{border-color:#fca5a5;background:#fee2e2;cursor:not-allowed}.tutor-calendar-slot.is-drag-selected:not(.is-active){border-color:#0f766e;background:#ecfeff}.tutor-calendar-slot.is-drag-removing.is-active{border-color:#b91c1c;background:#fee2e2;box-shadow:inset 0 0 0 1px #b91c1c40}.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}.account-picture-editor{margin-top:.95rem;border:1px solid #dbeafe;border-radius:14px;padding:.8rem .9rem;background:#f8fbff}.account-picture-buttons{display:flex;flex-wrap:wrap;gap:.55rem}.account-upload-btn{position:relative;overflow:hidden}.account-upload-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.account-form{margin-top:1rem;display:grid;gap:.65rem}.account-form label{display:grid;gap:.35rem;color:#334155;font-size:.95rem}.account-form input{border:1px solid #d7dbe4;border-radius:10px;padding:.65rem .75rem;font-size:.96rem}.account-form textarea{border:1px solid #d7dbe4;border-radius:10px;padding:.65rem .75rem;font-size:.96rem;resize:vertical;min-height:7rem;font-family:inherit}.account-help-text{color:#64748b;font-size:.8rem}.account-form-error,.account-form-success{margin:0;font-size:.9rem}.account-form-error{color:#b91c1c}.account-form-success{color:#0f766e}.account-toast{position:fixed;left:1rem;bottom:1rem;z-index:50;min-width:15rem;max-width:min(24rem,calc(100vw - 2rem));border-radius:12px;padding:.65rem .8rem;border:1px solid transparent;box-shadow:0 14px 30px #0f172a29;animation:toast-in .18s ease-out}.account-toast-success{border-color:#86efac;background:#ecfdf5;color:#166534;font-size:.9rem;font-weight:700}.account-toast-error{border-color:#fecaca;background:#fef2f2;color:#991b1b;font-size:.9rem;font-weight:700}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.account-address-panel{margin-top:.25rem;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;padding:.85rem}.account-address-title{margin:0 0 .65rem;color:#0f172a;font-weight:700}.account-address-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.account-field-span-2{grid-column:span 2}.account-address-search-wrap{display:grid;gap:.5rem}.account-address-search-results{border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:.35rem;display:grid;gap:.3rem;max-height:13rem;overflow:auto}.account-address-search-item{border:1px solid transparent;border-radius:10px;background:#f8fafc;color:#0f172a;text-align:left;padding:.5rem .6rem;font-size:.9rem;cursor:pointer}.account-address-search-item:hover{border-color:#bfdbfe;background:#eff6ff}.account-roles-panel{border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;padding:.85rem}.account-publish-readiness-panel{border:1px solid #d7dbe4;border-radius:14px;background:#fff;padding:.85rem}.account-publish-ready{border-color:#86efac;background:#f0fdf4}.account-publish-not-ready{border-color:#fecaca;background:#fef2f2}.account-publish-readiness-list{margin:.25rem 0 0;padding-left:1.1rem;color:#7f1d1d;font-size:.86rem;display:grid;gap:.2rem}.account-location-panel,.account-rate-panel{border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;padding:.85rem}.account-rate-input-row{display:flex;align-items:center;gap:.55rem}.account-rate-input-row input{flex:1}.account-rate-currency-badge{display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;padding:0 .7rem;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff;color:#1e3a8a;font-size:.84rem;font-weight:700;white-space:nowrap}.account-location-summary{margin:-.35rem 0 .7rem;color:#475569;font-size:.88rem}.account-role-grid{display:grid;gap:.6rem}.account-location-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.account-location-full-width{grid-column:span 2}.account-role-option{display:flex;align-items:flex-start;gap:.6rem;border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:.65rem .75rem}.account-role-option input{margin-top:.15rem;width:1rem;height:1rem;accent-color:#0f766e}.account-role-option span{display:grid;gap:.15rem}.account-role-option strong{color:#0f172a;font-size:.95rem}.account-role-option small{color:#64748b;font-size:.82rem;line-height:1.35}.account-qualifications-panel{border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;padding:.85rem}.qualification-search-panel{margin-bottom:.8rem;display:grid;gap:.45rem}.qualification-search-results{border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:.35rem;display:grid;gap:.35rem;max-height:13rem;overflow:auto}.qualification-search-item{border:1px solid transparent;border-radius:10px;background:#f8fafc;color:#0f172a;text-align:left;padding:.5rem .6rem;font-size:.9rem;cursor:pointer}.qualification-search-item:hover{border-color:#bfdbfe;background:#eff6ff}.account-qualification-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.account-form select{border:1px solid #d7dbe4;border-radius:10px;padding:.65rem .75rem;font-size:.96rem;background:#fff}.account-qualification-list{margin-top:.7rem;display:grid;gap:.55rem}.qualification-item{display:flex;align-items:center;justify-content:space-between;gap:.65rem;border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:.6rem .7rem}.qualification-item p{margin:0;display:grid;gap:.1rem}.qualification-item span{color:#64748b;font-size:.82rem;text-transform:capitalize}.account-teaches-level-picker{border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:.6rem .7rem}.account-teaches-level-picker p{margin:0 0 .45rem;color:#0f172a;font-size:.9rem;font-weight:600}.account-teaches-level-options{display:flex;flex-wrap:wrap;gap:.45rem}.account-teaches-level-option{display:inline-flex;align-items:center;gap:.3rem;border:1px solid #d7dbe4;border-radius:999px;padding:.25rem .5rem;background:#f8fafc}.account-teaches-level-option input{width:.9rem;height:.9rem;accent-color:#0f766e}.account-teaches-level-option span{color:#0f172a;font-size:.82rem;text-transform:capitalize}.account-documents-panel{margin-top:.85rem;border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:.7rem}.account-documents-list{margin-top:.65rem;display:grid;gap:.5rem}.account-document-item{display:flex;align-items:center;justify-content:space-between;gap:.6rem;border:1px solid #d7dbe4;border-radius:10px;background:#f8fafc;padding:.55rem .65rem}.account-document-item p{margin:0;display:grid;gap:.15rem}.account-document-item span{color:#64748b;font-size:.82rem}.account-document-actions{display:inline-flex;gap:.45rem}.auth-page-shell{width:min(760px,100% - 2rem);margin:2.2rem auto}.auth-card{background:#fffdf9;border:1px solid #e4dfd2;border-radius:20px;padding:1.5rem;box-shadow:0 24px 52px #18181b17}.auth-brand{margin-bottom:1rem}.auth-card h1{margin:0;color:#0f172a}.auth-card p{color:#475569}.auth-form{display:grid;gap:.8rem;margin-top:1.1rem}.auth-form label{display:grid;gap:.35rem;color:#334155;font-size:.95rem}.auth-form input{border:1px solid #d7dbe4;border-radius:10px;padding:.65rem .75rem;font-size:.96rem}.auth-form button{margin-top:.35rem}.auth-form button:disabled{opacity:.7;cursor:not-allowed}.auth-error{margin:0;color:#b91c1c;font-size:.9rem}.auth-switch{margin-top:1rem}.auth-switch a{color:#155e75;text-decoration:none;font-weight:600}.signup-choice-grid{display:grid;gap:.8rem;margin-top:1.1rem}.signup-choice{text-decoration:none;color:inherit;border:1px solid #d7dbe4;border-radius:14px;padding:.9rem 1rem;background:#fff;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.signup-choice:hover{transform:translateY(-1px);border-color:#93c5fd;box-shadow:0 10px 20px #1e293b14}.signup-choice-primary{border-color:#93c5fd;background:linear-gradient(160deg,#f8fbff,#f0f9ff)}.signup-choice-headline{display:flex;align-items:center;justify-content:space-between;gap:.6rem;color:#0f172a;font-weight:700}.choice-badge{border-radius:999px;padding:.2rem .55rem;font-size:.75rem;font-weight:700;color:#0c4a6e;background:#e0f2fe}.signup-choice p{margin:.45rem 0 0;color:#475569}.x-signup-shell{width:min(520px,100% - 2rem);margin:2.2rem auto}.x-signup-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:1.5rem;box-shadow:0 16px 40px #0f172a14}.x-signup-card h1{margin:.4rem 0 0;color:#0f172a;font-size:clamp(1.55rem,4.2vw,2rem)}.x-signup-stack{display:grid;gap:.85rem;margin-top:1.2rem}.x-auth-error{margin:.8rem 0 0;border:1px solid #fecaca;border-radius:12px;padding:.6rem .75rem;color:#991b1b;background:#fef2f2;font-size:.9rem;line-height:1.4}.x-auth-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;min-height:2.7rem;font-weight:700;font-size:.94rem;padding:.3rem 1rem}.x-auth-btn-google{border:1px solid #cbd5e1;color:#0f172a;background:#fff}.x-google-icon{width:1.68rem;height:1.68rem;flex:0 0 auto;margin-right:.45rem}.x-auth-btn-primary{border:1px solid #0f172a;color:#fff;background:#0f172a}.x-auth-btn-secondary{border:1px solid #93c5fd;color:#1d4ed8;background:#f8fbff}.x-divider{display:flex;align-items:center;gap:.7rem;color:#64748b;font-size:.86rem}.x-divider:before,.x-divider:after{content:"";height:1px;flex:1;background:#e2e8f0}.x-terms{margin-top:1rem;color:#64748b;font-size:.82rem;line-height:1.45}.x-terms a{color:#1d4ed8;text-decoration:none}.x-login-block{margin-top:1.15rem;display:grid;gap:.55rem}.x-login-block p{margin:0;color:#0f172a;font-weight:600}.reveal{opacity:0;transform:translateY(12px);animation:reveal-up .65s ease forwards}.hero-copy.reveal{animation-delay:.08s}.info-grid.reveal{animation-delay:.17s}.site-footer.reveal{animation-delay:.25s}@keyframes reveal-up{to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.site-header{flex-wrap:wrap}.search-toolbar{align-items:stretch}.top-nav{order:3;width:100%;justify-content:center;padding-top:.2rem}.hero{grid-template-columns:1fr}.site-footer{flex-direction:column;gap:.45rem}.profile-chip-name{max-width:6.5rem}.account-picture-buttons{flex-direction:column}.tutor-calendar-toolbar-actions,.tutor-calendar-toolbar-actions .btn,.tutor-calendar-week-nav .btn{width:100%}.account-address-grid,.search-tree-shell{grid-template-columns:1fr}.account-field-span-2{grid-column:auto}.account-qualification-form-grid,.account-location-grid{grid-template-columns:1fr}.account-location-full-width{grid-column:auto}.qualification-item,.account-document-item{flex-direction:column;align-items:stretch}.account-document-actions{display:grid}}.tutor-public-reviews-section{margin-top:1.5rem;padding:1.25rem 1.5rem;background:#f8fbff;border:1px solid #dbeafe;border-radius:14px}.tutor-public-reviews-section h3{margin:0 0 1rem;font-size:1.05rem;font-weight:700;color:#1e3a5f;display:flex;align-items:center;gap:.4rem}.tutor-review-average{font-size:.95rem;color:#64748b}.tutor-review-list{display:flex;flex-direction:column;gap:.85rem}.tutor-review-item{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.85rem 1rem}.tutor-review-stars{display:flex;gap:.15rem;font-size:1.1rem;line-height:1}.star{display:inline-block}.star-filled{color:#f59e0b}.star-empty{color:#cbd5e1}.star-btn{appearance:none;background:none;border:none;padding:0 .1rem;font-size:1.4rem;line-height:1;cursor:pointer;transition:transform .1s}.star-btn:hover,.star-btn:focus-visible{transform:scale(1.2);outline:none}.star-btn.star-filled{color:#f59e0b}.star-btn.star-empty{color:#cbd5e1}.tutor-review-comment{margin:.45rem 0 0;font-size:.92rem;color:#334155;line-height:1.5}.tutor-review-meta{margin:.4rem 0 0;font-size:.8rem;color:#94a3b8}.tutor-review-form{padding:.85rem;background:#f8fbff;border:1px solid #dbeafe;border-radius:10px}.tutor-review-form label{display:block;font-size:.82rem;font-weight:600;color:#475569;margin-bottom:.35rem}.tutor-review-form textarea{width:100%;border:1px solid #bfdbfe;border-radius:8px;padding:.5rem .65rem;font-size:.88rem;color:#1e293b;resize:vertical;background:#fff;box-sizing:border-box}.tutor-review-form textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.tutor-review-submitted{padding:.75rem .85rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px}.settings-page{min-height:100vh;padding:20px;background-color:#f5f5f5}.settings-header{max-width:900px;margin:0 auto 24px;display:flex;align-items:center;gap:16px}.settings-header h1{margin:0;font-size:28px;font-weight:700}.settings-card{max-width:900px;margin:0 auto;background:#fff;padding:32px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.btn{display:inline-block;padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;text-decoration:none;transition:all .2s}.btn-ghost{background:transparent;color:#007bff;border:1px solid #007bff}.btn-ghost:hover,.btn-solid{background:#007bff;color:#fff}.btn-solid:hover{background:#0056b3}
