.reactEasyCrop_Container{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:none;cursor:move;display:flex;justify-content:center;align-items:center}.reactEasyCrop_Image,.reactEasyCrop_Video{will-change:transform}.reactEasyCrop_Contain{max-width:100%;max-height:100%;margin:auto;position:absolute;top:0;bottom:0;left:0;right:0}.reactEasyCrop_Cover_Horizontal{width:100%;height:auto}.reactEasyCrop_Cover_Vertical{width:auto;height:100%}.reactEasyCrop_CropArea{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.5);box-sizing:border-box;box-shadow:0 0 0 9999em;color:#00000080;overflow:hidden}.reactEasyCrop_CropAreaRound{border-radius:50%}.reactEasyCrop_CropAreaGrid:before{content:" ";box-sizing:border-box;position:absolute;border:1px solid rgba(255,255,255,.5);top:0;bottom:0;left:33.33%;right:33.33%;border-top:0;border-bottom:0}.reactEasyCrop_CropAreaGrid:after{content:" ";box-sizing:border-box;position:absolute;border:1px solid rgba(255,255,255,.5);top:33.33%;bottom:33.33%;left:0;right:0;border-left:0;border-right:0}:root{--color-primary: #d6336c;--color-primary-dark: #a61e4d;--color-secondary: #495057;--color-bg: #ffffff;--color-bg-alt: #f8f9fa;--color-border: #dee2e6;--color-text: #212529;--color-muted: #6c757d;--color-error: #c92a2a;--color-success: #2b8a3e;--radius: 8px;--max-width: 1200px}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Hiragino Sans,Noto Sans JP,sans-serif;color:var(--color-text);background:var(--color-bg);line-height:1.5}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}.app{display:flex;flex-direction:column;min-height:100vh}main{flex:1;width:100%;max-width:var(--max-width);margin:0 auto;padding:2rem 1rem}.btn{display:inline-block;padding:.6rem 1.2rem;border:1px solid transparent;border-radius:var(--radius);font-weight:600;cursor:pointer;font-size:.95rem;transition:background .15s,border-color .15s;text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:var(--color-secondary);color:#fff}.btn-ghost{background:transparent;color:var(--color-text);border-color:var(--color-border)}.btn-ghost:hover{background:var(--color-bg-alt)}.btn-danger{background:#c92a2a;color:#fff}.btn-danger:hover:not(:disabled){background:#a61e1e}.btn-lg{padding:.9rem 1.6rem;font-size:1.05rem}.navbar{background:var(--color-bg);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:10}.navbar-inner{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;gap:1.5rem;padding:.75rem 1rem}.navbar-logo{font-weight:700;font-size:1.15rem;color:var(--color-text);display:flex;align-items:center;gap:.5rem;white-space:nowrap}.navbar-logo-mark{display:block;width:auto;height:2rem;flex:0 0 auto}.env-badge{background:var(--color-primary);color:#fff;font-size:.7rem;padding:.1rem .4rem;border-radius:4px}.navbar-links{display:flex;gap:1rem;flex:1}.navbar-links a{color:var(--color-text)}.navbar-cart-link{display:inline-flex;align-items:center;gap:.45rem}.navbar-cart-badge{min-width:1.35rem;height:1.35rem;padding:0 .35rem;border-radius:999px;background:var(--color-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.navbar-actions{display:flex;gap:.5rem;align-items:center}.navbar-actions .btn{white-space:nowrap}.lang-switcher{min-width:120px}.navbar-menu-toggle{display:none;padding:.4rem;background:none;border:none;cursor:pointer;color:var(--color-text);align-items:center;justify-content:center;margin-left:auto;border-radius:8px;flex-shrink:0}@media (max-width: 767px){.navbar-menu-toggle{display:inline-flex}.navbar-inner{flex-wrap:wrap;gap:0}.navbar-links,.navbar-actions{display:none;width:100%;flex:none}.navbar.is-open .navbar-links{display:flex;flex-direction:column;gap:0;padding:.25rem 0 .5rem;margin-top:.75rem;border-top:1px solid var(--color-border)}.navbar.is-open .navbar-links a{padding:.75rem 0;font-size:.95rem;border-bottom:1px solid var(--color-border)}.navbar.is-open .navbar-links a:last-child{border-bottom:none}.navbar.is-open .navbar-actions{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 0;border-top:1px solid var(--color-border)}.navbar.is-open .navbar-actions .btn{width:100%;justify-content:center}.navbar.is-open .lang-switcher{width:100%;min-width:unset}}.snackbar-region{position:fixed;right:1rem;bottom:1rem;z-index:1000;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.snackbar{min-width:min(360px,calc(100vw - 2rem));max-width:min(420px,calc(100vw - 2rem));display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-radius:14px;box-shadow:0 12px 30px #21252929;border:1px solid var(--color-border);background:#fffffff5;color:var(--color-text);pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.snackbar-info{border-color:#49505729}.snackbar-success{border-color:#2b8a3e3d;background:#ebfbeef5}.snackbar-error{border-color:#c92a2a3d;background:#fff5f5f7}.snackbar-message{font-size:.95rem}.snackbar-close{border:0;background:transparent;color:var(--color-muted);cursor:pointer;font-size:1rem;line-height:1;padding:.1rem}.snackbar-close:hover{color:var(--color-text)}.confirm-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#2125296b;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1100}.confirm-dialog{width:min(480px,100%);background:#fff;border-radius:18px;padding:1.4rem;box-shadow:0 20px 50px #21252933;border:1px solid rgba(73,80,87,.12)}.confirm-dialog h2{margin:0 0 .5rem;font-size:1.15rem}.confirm-dialog p{margin:0;color:var(--color-secondary)}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}.footer{border-top:1px solid var(--color-border);padding:1.5rem 1rem;color:var(--color-muted);font-size:.9rem}.footer-inner{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.footer-links{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap}.footer-links a{color:var(--color-muted);font-size:.84rem}.footer-links a:hover{color:var(--color-text)}.top-hero{position:relative;min-height:520px;display:flex;align-items:center;border-radius:var(--radius);overflow:hidden;margin-bottom:3rem}.top-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}.top-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,#0a0a14b8,#0a0a147a 55%,#0a0a142e)}.top-hero-content{position:relative;z-index:1;max-width:600px;padding:3.5rem 2rem 3.5rem 3rem;color:#fff}.top-hero-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#ffffffa6;margin:0 0 .85rem}.top-hero-content h1{font-size:2.5rem;font-weight:800;line-height:1.18;margin:0 0 1.1rem;color:#fff}.top-hero-lead{font-size:1rem;line-height:1.7;color:#ffffffe0;margin:0 0 1.75rem;max-width:480px}.top-hero-cta{display:flex;gap:.75rem;flex-wrap:wrap}.top-values{margin-bottom:3rem}.top-section-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary);margin:0 0 1.25rem}.top-values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.top-value-card{background:#fff;border:1px solid var(--color-border);border-radius:18px;padding:1.5rem;display:flex;flex-direction:column;gap:.85rem;box-shadow:0 4px 16px #2125290a}.top-value-icon{width:3rem;height:3rem;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;color:#c0392b;background:#fdf0f2;flex-shrink:0}.top-value-card h3{font-size:1.05rem;font-weight:700;margin:0}.top-value-card p{font-size:.9rem;color:var(--color-muted);margin:0;line-height:1.65}.top-scene{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;margin-bottom:3rem;border-radius:var(--radius);overflow:hidden;border:1px solid var(--color-border)}.top-scene-image{min-height:320px}.top-scene-image img{width:100%;height:100%;object-fit:cover;display:block}.top-scene-text{padding:2.5rem;background:#fdf7f2;display:flex;flex-direction:column;gap:1rem;justify-content:center}.top-scene-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);margin:0}.top-scene-text h2{font-size:1.55rem;font-weight:800;line-height:1.3;margin:0}.top-scene-text>p{color:var(--color-muted);line-height:1.72;margin:0;font-size:.93rem}.hero{text-align:center;padding:3rem 1rem;background:var(--color-bg-alt);border-radius:var(--radius);margin-bottom:2rem}.hero h1{font-size:2.2rem;margin:0 0 .5rem}.hero-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}.top-recent-tutors{display:grid;gap:1rem;margin-bottom:2rem}.top-section-header{display:flex;align-items:end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.top-section-header h2,.top-section-header p{margin:0}.top-section-header p{color:var(--color-muted);margin-top:.35rem}.top-recent-state{margin:0;padding:1rem 1.25rem;background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-muted)}.top-role-note{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0 2rem}.top-role-note h2,.top-role-note p{margin:0}.top-role-note>div{display:grid;gap:.45rem}.faq-role-note{margin-top:1rem}.steps ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.steps li{display:grid;gap:.8rem;background:var(--color-bg-alt);padding:1.25rem;border-radius:var(--radius)}.steps li h3,.steps li p{margin:0}.top-step-icon{width:2.8rem;height:2.8rem;display:inline-flex;align-items:center;justify-content:center;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,white);border-radius:16px}.why-output-matters{display:grid;gap:1.25rem;margin-top:2rem;padding:1.5rem;background:linear-gradient(180deg,#fff8ef,#fff);border:1px solid #f2dec9;border-radius:var(--radius)}.why-output-header h2,.why-output-header p,.why-output-card h3,.why-output-card p,.why-output-footer p{margin:0}.why-output-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.why-output-card{display:grid;gap:.65rem;padding:1.1rem;background:#fff;border:1px solid #f0e0d1;border-radius:14px}.why-output-icon{width:2.5rem;height:2.5rem;display:inline-flex;align-items:center;justify-content:center;color:#9a4f00;background:#fff1de;border-radius:14px}.why-output-card h3{font-size:1.05rem}.why-output-footer{display:flex;gap:1rem;justify-content:space-between;align-items:center;flex-wrap:wrap}.why-output-footer p{color:var(--color-muted);max-width:52rem}.faq{display:grid;gap:.9rem;margin-top:2rem;padding:1.5rem;background:linear-gradient(180deg,#fff,#fff8fb);border:1px solid #f1d6df;border-radius:var(--radius)}.faq h2,.faq p{margin:0}@media (max-width: 768px){.top-hero{min-height:420px}.top-hero-content{padding:2.5rem 1.25rem}.top-hero-content h1{font-size:1.75rem}.top-scene{grid-template-columns:1fr}.top-scene-image{min-height:220px}.top-scene-text{padding:1.75rem 1.25rem}.top-scene-text h2{font-size:1.3rem}.top-role-note{align-items:flex-start;flex-direction:column}@media (max-width: 767px){.my-page-profile-head{flex-direction:column}.my-page-profile-grid{grid-template-columns:1fr}}}.faq-page{display:grid;gap:1rem}.terms-page{max-width:780px;margin:0 auto;display:grid;gap:1rem;padding-bottom:3rem}.terms-hero{padding:2rem}.terms-hero h1,.terms-hero p{margin:0}.terms-hero h1{font-size:1.6rem;margin:.4rem 0 .6rem}.terms-hero p{color:var(--color-text-muted);font-size:.95rem}.terms-body{display:grid;gap:.75rem}.terms-section{padding:1.25rem 1.5rem}.terms-section h2{font-size:1rem;font-weight:700;margin:0 0 .75rem;display:flex;gap:.4rem}.terms-section-num{color:var(--color-primary, #3182ce);flex-shrink:0}.terms-section p{font-size:.9rem;line-height:1.75;color:var(--color-text);margin:0 0 .5rem}.terms-section p:last-child{margin-bottom:0}.terms-section ul{margin:.5rem 0 0;padding-left:1.4rem;display:grid;gap:.35rem}.terms-section li{font-size:.9rem;line-height:1.7;color:var(--color-text)}.terms-footer{display:flex;gap:.75rem;justify-content:center;align-items:center;flex-wrap:wrap;padding-top:.5rem}.terms-updated{width:100%;text-align:center;font-size:.8rem;color:var(--color-text-muted);margin:0}.legal-notice-card{padding:0 1.5rem}.contact-page{display:flex;flex-direction:column;gap:1.5rem;max-width:680px;margin:0 auto;padding:2rem 1rem 4rem}.contact-hero{text-align:center;padding:2.5rem 2rem}.contact-hero h1{font-size:1.75rem;margin:.5rem 0}.contact-hero-desc{color:var(--color-text-muted);margin:0}.contact-body{display:flex;flex-direction:column;gap:1rem}.contact-main-card{display:flex;flex-direction:column;gap:1.5rem;padding:2rem}.contact-section-title{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin:0}.contact-categories{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.contact-category-chip{background:var(--color-surface, #f5f5f5);border:1px solid var(--color-border, #e0e0e0);border-radius:2rem;padding:.35rem .9rem;font-size:.85rem;color:var(--color-text)}.contact-meta{display:flex;flex-direction:column;gap:.6rem;padding:1rem 1.25rem;background:var(--color-surface, #f9f9f9);border-radius:.75rem;border:1px solid var(--color-border, #e8e8e8)}.contact-meta-item{display:flex;align-items:center;gap:.6rem;font-size:.9rem;color:var(--color-text-muted)}.contact-meta-item svg{flex-shrink:0;color:var(--color-primary, #c0392b)}.contact-hint{font-size:.85rem;color:var(--color-text-muted);margin:0;padding-left:.75rem;border-left:3px solid var(--color-border, #e0e0e0)}.contact-cta{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.5rem;font-size:1rem}.legal-notice-list{margin:0}.legal-notice-list>div{display:grid;grid-template-columns:10rem 1fr;gap:0 1.5rem;padding:1rem 0;border-bottom:1px solid var(--color-border);align-items:baseline}.legal-notice-list>div:last-child{border-bottom:none}.legal-notice-list dt{font-size:.8rem;font-weight:600;color:var(--color-text-muted);letter-spacing:.01em;margin:0;padding-top:.1rem}.legal-notice-list dd{font-size:.9rem;line-height:1.75;color:var(--color-text);margin:0}@media (max-width: 540px){.legal-notice-card{padding:0 1rem}.legal-notice-list>div{grid-template-columns:1fr;gap:.2rem}.legal-notice-list dt{font-size:.75rem}}.faq-page-hero h1,.faq-page-hero p,.faq-section h2,.faq-page-actions h2,.faq-page-actions p{margin-top:0}.faq-list{display:grid;gap:.75rem}.faq-item{border:1px solid var(--color-border);border-radius:14px;background:#fff;overflow:hidden}.faq-item summary{cursor:pointer;list-style:none;padding:1rem 1.1rem;font-weight:700}.faq-item summary::-webkit-details-marker{display:none}.faq-answer{padding:0 1.1rem 1rem;display:grid;gap:.75rem}.faq-answer p,.faq-answer ul{margin:0}.faq-answer ul{padding-left:1.2rem}.faq-note{color:var(--color-muted);font-size:.95rem}.faq-table-wrap{overflow-x:auto}.faq-table{width:100%;border-collapse:collapse}.faq-table th,.faq-table td{text-align:left;padding:.6rem;border-bottom:1px solid var(--color-border)}.faq-action-links{display:flex;gap:.75rem;flex-wrap:wrap}@media (max-width: 767px){.why-output-matters{padding:1.25rem}.why-output-footer{align-items:stretch}}.auth-page{max-width:420px;margin:2rem auto}.login-page{max-width:980px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:1.5rem;align-items:stretch;margin:0 auto;padding-top:2.5rem;padding-bottom:3rem}.login-page-hero{position:relative;overflow:hidden;border-radius:28px;padding:2rem;min-height:100%;display:flex;align-items:flex-end;box-shadow:0 24px 60px #21252924}.login-page-student .login-page-hero{background:radial-gradient(circle at top right,rgba(255,255,255,.34),transparent 32%),linear-gradient(145deg,#1d5fd0,#179a8c);color:#fff}.login-page-tutor .login-page-hero{background:radial-gradient(circle at top right,rgba(255,255,255,.24),transparent 30%),linear-gradient(145deg,#2f4858,#4c5c68 55%,#69747c);color:#fff}.login-page-hero-inner{max-width:440px;position:relative;z-index:1}.login-page-eyebrow{margin:0 0 .9rem;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.85}.login-page-hero h1{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.08}.login-page-lead{margin:1rem 0 0;max-width:34rem;font-size:1rem;color:#ffffffd6}.auth-card{align-self:center;display:grid;gap:1.25rem;padding:1.6rem;border:1px solid rgba(73,80,87,.12);border-radius:28px;background:#fffffff5;box-shadow:0 24px 60px #2125291f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.auth-card-header{display:grid;gap:.45rem}.auth-card-kicker{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary)}.auth-card-header h2{margin:0;font-size:1.75rem}.auth-card-header p:last-child{margin:0;color:var(--color-secondary)}.auth-card-body{gap:1rem}.auth-card input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #d6336c1a}.auth-submit,.auth-social-button{width:100%;display:inline-flex;justify-content:center;align-items:center;min-height:48px}.auth-divider{position:relative;text-align:center}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;border-top:1px solid rgba(73,80,87,.16)}.auth-divider span{position:relative;display:inline-block;padding:0 .75rem;background:#fff;color:var(--color-muted);font-size:.88rem}.auth-switch{margin:0;text-align:center;color:var(--color-secondary)}.auth-error{margin:0;padding:.7rem .8rem;border-radius:12px;background:#c92a2a14;border:1px solid rgba(201,42,42,.14)}.auth-forgot{margin:0;text-align:center}.auth-text-link{background:none;border:none;padding:0;cursor:pointer;font-size:.875rem;color:var(--color-muted);text-decoration:underline;text-underline-offset:2px}.auth-text-link:hover{color:var(--color-text)}.auth-reset-title{margin:0 0 .25rem;font-size:1.1rem}.auth-reset-desc{margin:0 0 .85rem;font-size:.9rem;color:var(--color-muted)}.auth-reset-success{padding:.75rem 1rem;border-radius:10px}.tutor-register-page{max-width:1080px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:1.5rem;align-items:stretch;margin:0 auto;padding-top:2.5rem;padding-bottom:3rem}.tutor-register-hero{position:relative;display:grid;grid-template-columns:1fr;gap:1rem;padding:1.8rem;overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.14);background:radial-gradient(circle at top right,rgba(255,255,255,.16),transparent 26%),linear-gradient(135deg,#441d12d6,#7e361dc2 44%,#d06f4885),var(--tutor-register-hero-image) center center / cover no-repeat;box-shadow:0 24px 60px #4f342a1f}.tutor-register-hero-inner{display:grid;align-content:center;gap:1rem;min-height:320px;max-width:42rem}.tutor-register-hero h1{margin:0;font-size:clamp(2rem,4vw,3.3rem);line-height:1.1;letter-spacing:-.03em;color:#fff}.tutor-register-lead,.tutor-register-note{margin:0;color:#ffffffd1}.tutor-register-points{margin-top:.1rem}.tutor-register-card{align-self:center;border-color:#8f3d2224}.tutor-register-card .auth-card-kicker{color:#8f3d22}.tutor-register-card input:focus{border-color:#c96a43;box-shadow:0 0 0 3px #c96a4324}.tutor-register-submit{background:#8f3d22}.tutor-register-submit:hover:not(:disabled){background:#74311b}.auth-form,.profile-form{display:flex;flex-direction:column;gap:1rem}.auth-form label,.profile-form label,.filters label{display:flex;flex-direction:column;font-size:.9rem;font-weight:600;gap:.25rem}.auth-form input,.profile-form input,.profile-form textarea,.filters input,.filters select{padding:.55rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.95rem;font-family:inherit;font-weight:400}.auth-form input[type=text],.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=date],.auth-form select,.profile-form input[type=text],.profile-form input[type=email],.profile-form input[type=password],.profile-form input[type=number],.profile-form input[type=date],.profile-form select,.profile-form textarea,.filters input[type=text],.filters input[type=number],.filters select{width:100%;min-width:0;padding:.55rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.95rem;font-family:inherit;font-weight:400;background-color:#fff;color:var(--color-text)}.auth-form .custom-select,.auth-form .custom-select-trigger{width:100%}.auth-form input:not([type=text]):not([type=email]):not([type=password]):not([type=date]),.profile-form input:not([type=text]):not([type=email]):not([type=password]):not([type=number]):not([type=date]),.filters input:not([type=text]):not([type=number]){width:auto;min-width:auto;padding:initial;border:initial;border-radius:initial;font-size:inherit;font-family:inherit;font-weight:inherit;background:initial;color:inherit}.custom-select{position:relative;width:100%}.custom-select-trigger{width:100%;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius);background:#fff;color:var(--color-text);font-size:.95rem;font-family:inherit;text-align:left;cursor:pointer}.custom-select.is-open .custom-select-trigger{border-color:var(--color-primary);box-shadow:0 0 0 3px #d6336c14}.custom-select.is-disabled .custom-select-trigger{opacity:.6;cursor:not-allowed}.custom-select-value.is-placeholder{color:var(--color-muted)}.custom-select-chevron{width:10px;height:10px;border-right:2px solid var(--color-muted);border-bottom:2px solid var(--color-muted);transform:rotate(45deg) translateY(-2px);flex:0 0 auto}.custom-select-menu{position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:30;display:grid;gap:.2rem;max-height:280px;overflow-y:auto;padding:.35rem;background:#fff;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 14px 32px #2125291f}.custom-select-option{width:100%;padding:.7rem .75rem;border:0;border-radius:8px;background:transparent;color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.custom-select-option:hover,.custom-select-option.is-selected{background:color-mix(in srgb,var(--color-primary) 10%,white)}.role-select{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0}.error{color:var(--color-error)}.field-note{margin:.35rem 0 0;color:var(--color-muted);font-size:.85rem}.profile-form-readonly-value,.profile-readonly-value{display:block;padding:.55rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.95rem;background:var(--color-surface-alt, #f7fafc);color:var(--color-text-muted);width:100%}.birthdate-select-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:.75rem}.birthdate-select-row[aria-invalid=true] .custom-select-trigger{border-color:var(--color-error)}.success{color:var(--color-success)}@media (max-width: 900px){.login-page{grid-template-columns:1fr;max-width:620px;padding-top:1.5rem}.login-page-hero{min-height:240px;padding:1.5rem}.tutor-register-page,.tutor-register-hero{grid-template-columns:1fr;max-width:680px}}@media (max-width: 640px){.login-page{gap:1rem;padding-top:1rem;padding-bottom:2rem}.login-page-hero,.auth-card{border-radius:22px}.auth-card{padding:1.1rem}.tutor-register-hero,.tutor-register-card{border-radius:22px}.tutor-register-hero{padding:1.2rem}}.search-layout{display:grid;grid-template-columns:260px 1fr;gap:2rem}@media (max-width: 1023px){.search-layout{grid-template-columns:1fr}}.filters{display:flex;flex-direction:column;gap:.85rem;background:var(--color-bg-alt);padding:1rem;border-radius:var(--radius);align-self:start}.municipality-filter{display:grid;gap:.65rem;padding:.75rem;border:1px solid var(--color-border);border-radius:14px;background:#fff}.municipality-filter-note{margin:0;font-size:.85rem;color:var(--color-muted)}.municipality-filter-list{display:grid;gap:.45rem;max-height:220px;overflow-y:auto}.municipality-filter-option{display:flex!important;flex-direction:row!important;align-items:center;gap:.55rem;padding:.55rem .65rem;border-radius:10px;background:var(--color-bg-alt);border:1px solid transparent;font-size:.9rem;font-weight:500!important}.municipality-filter-option:has(input:checked){border-color:#d6336c33;background:color-mix(in srgb,var(--color-primary) 8%,white)}.municipality-filter-option input{margin:0}.tutor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem}.tutor-card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.tutor-card-photo{aspect-ratio:4 / 3;background:var(--color-bg-alt);overflow:hidden}.tutor-card-photo img{width:100%;height:100%;object-fit:cover}.tutor-card-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:var(--color-muted)}.tutor-card-body{padding:1rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.tutor-card-body h3{margin:0}.tutor-card-tags{display:flex;gap:.3rem;flex-wrap:wrap}.tag{background:var(--color-bg-alt);padding:.15rem .5rem;border-radius:999px;font-size:.8rem}.tutor-card-meta{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;font-size:.85rem;color:var(--color-muted)}.tutor-card-meta .meta,.tutor-card-meta .badge{white-space:nowrap}.tutor-card-activity{margin:0;font-size:.82rem;color:var(--color-muted)}.badge{background:var(--color-primary);color:#fff;padding:.1rem .5rem;border-radius:4px;font-size:.75rem}.tutor-card-price{font-weight:700}.tutor-card-actions{display:grid;gap:.5rem;margin-top:auto}.tutor-not-available{max-width:480px;margin:4rem auto;text-align:center;padding:2.5rem 2rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.tutor-not-available h1{font-size:1.25rem;font-weight:700}.tutor-not-available p{color:var(--color-text-muted);font-size:.95rem}.tutor-detail-header{display:flex;gap:1.5rem;align-items:flex-start;margin-bottom:1.5rem}.tutor-detail-gallery{display:flex;flex-direction:column;gap:.75rem}.tutor-detail-photo-button{width:fit-content;padding:0;border:0;background:transparent;cursor:zoom-in}.tutor-detail-photo{width:160px;height:160px;border-radius:20px;object-fit:cover;box-shadow:0 10px 30px #21252914}.tutor-detail-thumbs{display:flex;gap:.5rem;flex-wrap:wrap}.tutor-detail-thumb{width:52px;height:52px;padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;background:#fff;cursor:pointer}.tutor-detail-thumb img{width:100%;height:100%;object-fit:cover}.tutor-detail-thumb.is-active{border-color:var(--color-primary)}.tutor-photo-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0e1319d1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.tutor-photo-overlay-dialog{position:relative;max-width:min(92vw,960px);max-height:92vh}.tutor-photo-overlay-image{display:block;max-width:100%;max-height:92vh;border-radius:20px;object-fit:contain;box-shadow:0 24px 60px #00000059}.tutor-photo-overlay-close{position:absolute;top:.75rem;right:.75rem;width:2.5rem;height:2.5rem;border:0;border-radius:999px;background:#ffffffeb;color:#111;font-size:1.4rem;line-height:1;cursor:pointer}.price-large{font-size:1.4rem;font-weight:700;margin:.5rem 0 0}.bio{white-space:pre-wrap}.tutor-detail-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin:1.5rem 0}.tutor-detail-meta-wide{grid-column:1 / -1}.tutor-contact{margin-top:2rem}.tutor-contact-locked{border:1px solid var(--color-border, #e2e8f0);border-radius:var(--radius-lg, 12px);padding:1.75rem;display:flex;flex-direction:column;gap:1.25rem;background:var(--color-surface, #fff)}.tutor-contact-locked-icon{font-size:2rem;line-height:1;color:var(--color-primary, #3182ce)}.tutor-contact-locked-body{display:flex;flex-direction:column;gap:.4rem}.tutor-contact-locked-body h3{font-size:1.05rem;font-weight:700;margin:0}.tutor-contact-locked-body p{font-size:.9rem;color:var(--color-text-muted);margin:0;line-height:1.6}.tutor-contact-locked-action{display:flex;flex-direction:column;gap:.6rem}.tutor-contact-locked-action .btn{width:100%;justify-content:center;text-align:center}.tutor-contact-locked-hint{font-size:.8rem;color:var(--color-text-muted);margin:0;line-height:1.5}.tutor-contact-revealed{border:2px solid var(--color-success, #38a169);border-radius:var(--radius-lg, 12px);padding:1.5rem;display:flex;flex-direction:column;gap:1rem;background:var(--color-surface, #fff)}.tutor-contact-revealed-badge{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.95rem;color:var(--color-success, #38a169)}.tutor-contact-check{width:1.4rem;height:1.4rem;border-radius:50%;background:var(--color-success, #38a169);color:#fff;font-size:.75rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.tutor-contact-field{display:flex;flex-direction:column;gap:.25rem}.tutor-contact-field-label{font-size:.75rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.tutor-contact-email{font-size:1rem;font-weight:600;color:var(--color-primary, #3182ce);word-break:break-all;text-decoration:none}.tutor-contact-email:hover{text-decoration:underline}.tutor-contact-note{font-size:.875rem;color:var(--color-text-muted);margin:0;padding-top:.75rem;border-top:1px solid var(--color-border, #e2e8f0);line-height:1.6}.hint{color:var(--color-muted);font-size:.9rem}.back-link{display:inline-block;margin-bottom:1rem;color:var(--color-muted)}.purchase-success{max-width:520px;margin:0 auto;padding:2rem 1rem 4rem;display:flex;flex-direction:column;gap:2rem}.purchase-success-hero{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem;padding-top:1rem}.purchase-success-icon{width:4rem;height:4rem;border-radius:50%;background:var(--color-success, #38a169);color:#fff;font-size:1.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.purchase-success-hero h1{font-size:1.5rem;font-weight:800;margin:0}.purchase-success-hero p{color:var(--color-text-muted);margin:0;font-size:.95rem}.purchase-success-card{display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem}.purchase-success-tutors{display:flex;flex-direction:column;gap:.5rem}.purchase-success-tutor-row{display:flex;align-items:center;gap:.75rem;padding:.65rem .75rem;border-radius:var(--radius, 6px);border:1px solid var(--color-border, #e2e8f0);text-decoration:none;color:var(--color-text);transition:background .15s}.purchase-success-tutor-row:hover{background:var(--color-surface-alt, #f7fafc)}.purchase-success-tutor-photo{width:2.5rem;height:2.5rem;border-radius:50%;object-fit:cover;flex-shrink:0}.purchase-success-tutor-photo--placeholder{background:var(--color-primary-light, #ebf4ff);color:var(--color-primary, #3182ce);font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:center}.purchase-success-tutor-name{flex:1;font-weight:600;font-size:.95rem}.purchase-success-tutor-arrow{color:var(--color-text-muted);font-size:.85rem}.purchase-success-meta{margin:0;padding:1rem 0;border-top:1px solid var(--color-border, #e2e8f0);border-bottom:1px solid var(--color-border, #e2e8f0)}.purchase-success-meta div{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem}.purchase-success-meta dt{color:var(--color-text-muted);margin:0}.purchase-success-meta dd{font-weight:600;margin:0}.purchase-success-notice{display:flex;flex-direction:column;gap:.25rem}.purchase-success-notice p{margin:0;font-size:.875rem;color:var(--color-text-muted)}.purchase-success-actions{display:flex;flex-direction:column;gap:.6rem}.purchase-success-actions .btn{width:100%;justify-content:center;text-align:center}.purchase-success-error{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;text-align:center}.is-full-width{width:100%}.card{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);padding:1.25rem}.cart-page{display:grid;gap:1.25rem}.cart-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.cart-layout{display:flex;align-items:flex-start;gap:1.25rem}.cart-list{flex:1 1 0;display:grid;gap:1rem}.cart-summary{flex:0 0 380px;width:min(100%,380px);display:grid;gap:1rem;position:sticky;top:5.5rem}.cart-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;padding:3rem 2rem}.cart-empty h2{font-size:1.15rem;font-weight:700;margin:0}.cart-empty p{color:var(--color-text-muted);font-size:.95rem;margin:0}.cart-summary h2,.cart-item h2{margin:0}.cart-summary-list{margin:0;display:flex;flex-direction:column;gap:.85rem}.cart-summary-list div{display:flex;justify-content:space-between;gap:1rem}.cart-summary-list dt,.cart-summary-list dd{margin:0}.cart-item{display:grid;grid-template-columns:96px minmax(0,1fr);gap:1rem}.cart-item-photo{width:96px;height:96px;border-radius:16px;overflow:hidden;background:var(--color-bg-alt);display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:var(--color-muted)}.cart-item-photo img{width:100%;height:100%;object-fit:cover}.cart-item-body{display:grid;gap:.75rem;min-width:0}.cart-item-head,.cart-item-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.cart-item-bio{margin:0;color:var(--color-muted)}.cart-fixed-price-note{font-size:.85rem;line-height:1.6;margin:0;padding:.75rem 1rem;background:color-mix(in srgb,var(--color-primary) 8%,white);border:1px solid color-mix(in srgb,var(--color-primary) 25%,white);border-radius:10px;color:var(--color-text)}.cart-checkout-form{display:grid;gap:.85rem}.cart-checkout-form .field{display:grid;gap:.35rem}.cart-checkout-form .field span{font-size:.9rem;font-weight:600}.cart-checkout-form input,.cart-checkout-form select{width:100%;min-width:0;padding:.55rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:.95rem;font-family:inherit;font-weight:400;background-color:#fff;color:var(--color-text);box-sizing:border-box}.cart-checkout-form input::placeholder{color:var(--color-muted)}.cart-checkout-form input:focus,.cart-checkout-form select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #e649801f}.cart-summary>.btn{display:inline-flex;justify-content:center;align-items:center}@media (max-width: 900px){.cart-layout{flex-direction:column}.cart-summary{width:100%;position:static}}@media (max-width: 640px){.cart-page-header,.cart-item-head,.cart-item-footer{flex-direction:column;align-items:stretch}.cart-item{grid-template-columns:1fr}}.my-page{display:flex;flex-direction:column;gap:1rem}.my-page-guide{display:grid;gap:.75rem}.my-page-profile{display:grid;gap:1rem}.my-page-profile-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.my-page-profile-head h2,.my-page-profile-head p{margin:0}.my-page-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.my-page-profile-actions{display:flex;justify-content:flex-start}.my-page-guide h2,.my-page-guide p{margin:0}.my-purchases{width:100%;border-collapse:collapse;margin-top:1rem}.my-purchases th,.my-purchases td{padding:.6rem;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.my-purchases-review-row td{padding-top:0}.status-chip{display:inline-flex;align-items:center;padding:.25rem .55rem;border-radius:999px;font-size:.8rem;font-weight:700}.status-chip.is-active{background:#e6fcf5;color:#087f5b}.status-chip.is-expired{background:#fff5f5;color:#c92a2a}.status-chip.is-positive{background:#e6fcf5;color:#087f5b}.status-chip.is-negative{background:#fff5f5;color:#c92a2a}.purchase-review-panel{display:grid;gap:.75rem;padding:.9rem 0}.purchase-review-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.purchase-review-form{display:grid;gap:.75rem}.purchase-review-note{margin:0;color:var(--color-muted);font-size:.9rem}.purchase-review-choices{display:flex;flex-wrap:wrap;gap:.75rem}.purchase-review-choice,.purchase-review-reason-option{display:inline-flex;align-items:center;gap:.45rem}.purchase-review-reasons{display:grid;gap:.6rem}.purchase-review-reason-list{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.purchase-review-actions{display:flex;justify-content:flex-start}.dashboard{display:flex;flex-direction:column;gap:1.5rem}.dashboard-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;padding:1.5rem 1.75rem;border-radius:20px;background:linear-gradient(135deg,#fff5f8,#fff 55%,#f8f9fa);border:1px solid #f3d4df}.dashboard-eyebrow,.dashboard-section-label{margin:0 0 .35rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;color:var(--color-primary-dark)}.dashboard-hero h1{margin:0}.dashboard-subtitle{margin:.5rem 0 0;color:var(--color-muted)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.9fr);gap:1rem;align-items:start}.card{background:#fff;border:1px solid var(--color-border);padding:1.25rem;border-radius:var(--radius);box-shadow:0 8px 24px #2125290a}.dashboard-profile-summary h2,.dashboard-stats h2,.dashboard-recent h2{margin:0}.dashboard-section-head{display:flex;justify-content:space-between;gap:1rem;align-items:start;margin-bottom:1rem}.dashboard-section-head.compact{margin-bottom:.75rem}.dashboard-profile-header{display:flex;gap:1.25rem;align-items:flex-start;margin-bottom:1rem}.dashboard-profile-photo{width:120px;height:120px;border-radius:50%;object-fit:cover;flex-shrink:0}.dashboard-profile-photo.placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary) 0%,#f783ac 100%);color:#fff;font-size:2rem;font-weight:700}.dashboard-profile-intro h3{margin:0;font-size:1.4rem}.dashboard-status{display:inline-flex;align-items:center;justify-content:center;min-width:76px;padding:.35rem .7rem;border-radius:999px;font-size:.85rem;font-weight:700}.dashboard-status.is-public{background:#e6fcf5;color:#087f5b}.dashboard-status.is-private{background:#fff3bf;color:#a66a00}.dashboard-profile-intro{display:flex;flex-direction:column;gap:.75rem}.dashboard-profile-intro .price-large{margin-bottom:.5rem}.dashboard-profile-section{margin:1.25rem 0;padding-top:1rem;border-top:1px solid var(--color-border)}.dashboard-profile-section h3,.dashboard-profile-meta h3{margin-top:0;margin-bottom:.35rem}.dashboard-profile-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.dashboard-meta-card{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius);padding:.9rem 1rem}.dashboard-meta-card span{display:block;margin-bottom:.4rem;font-size:.85rem;color:var(--color-muted)}.dashboard-meta-card strong{display:block;font-size:1rem}.dashboard-side{display:flex;flex-direction:column;gap:1rem}.dashboard-toggle-row{display:flex;gap:.75rem;align-items:center}.dashboard-toggle-copy{display:flex;flex-direction:column;gap:.2rem}.dashboard-toggle-copy strong,.dashboard-toggle-copy span{margin:0}.dashboard-toggle-copy span{color:var(--color-muted)}.dashboard-switch{padding:0;border:0;background:transparent;cursor:pointer}.dashboard-switch:disabled{cursor:not-allowed;opacity:.6}.dashboard-switch-track{width:54px;height:32px;border-radius:999px;background:#ced4da;display:inline-flex;align-items:center;padding:4px;transition:background .15s ease}.dashboard-switch-thumb{width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #00000026;transition:transform .15s ease}.dashboard-switch.is-on .dashboard-switch-track{background:var(--color-primary)}.dashboard-switch.is-on .dashboard-switch-thumb{transform:translate(22px)}.dashboard-stat-value{font-size:3rem;font-weight:800;line-height:1;margin-top:.35rem}.dashboard-stat-caption,.dashboard-empty-text{color:var(--color-muted)}.dashboard-recent-list{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.75rem}.dashboard-recent-hint{font-size:.85rem;color:var(--color-text-muted);line-height:1.6;margin:0 0 .75rem}.dashboard-recent-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dashboard-recent-info{display:flex;align-items:flex-start;gap:.65rem;min-width:0}.dashboard-recent-info>div{display:flex;flex-direction:column;gap:.1rem;min-width:0}.dashboard-recent-name{font-size:.9rem;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-recent-email{font-size:.78rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-recent-date{font-size:.75rem;color:var(--color-text-muted)}.dashboard-recent-dot{width:.6rem;height:.6rem;border-radius:50%;background:var(--color-primary);flex-shrink:0;margin-top:.35rem}.dashboard-report-btn{font-size:.75rem;padding:.2rem .6rem;flex-shrink:0;color:var(--color-danger, #e53e3e);border-color:var(--color-danger, #e53e3e)}.report-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.report-dialog{background:var(--color-surface, #fff);border-radius:var(--radius-lg, 12px);box-shadow:0 8px 32px #0000002e;width:100%;max-width:480px;display:flex;flex-direction:column;gap:0;overflow:hidden}.report-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem 1rem;border-bottom:1px solid var(--color-border, #e2e8f0)}.report-dialog-header h2{font-size:1rem;font-weight:700;margin:0}.report-dialog-student{padding:.75rem 1.5rem;background:var(--color-surface-alt, #f7fafc);display:flex;flex-direction:column;gap:.15rem}.report-dialog-student-name{font-size:.9rem;font-weight:600;color:var(--color-text)}.report-dialog-student-email{font-size:.8rem;color:var(--color-text-muted)}.report-dialog-body{padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.report-dialog-label{font-size:.85rem;font-weight:600;color:var(--color-text);margin:0}.report-dialog-label .required{color:var(--color-danger, #e53e3e);margin-left:.3rem;font-size:.75rem}.report-reason-list{display:flex;flex-direction:column;gap:.4rem}.report-reason-option{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer;padding:.4rem .6rem;border-radius:var(--radius-sm, 6px);border:1px solid var(--color-border, #e2e8f0);transition:background .15s}.report-reason-option.is-selected{background:var(--color-primary-light, #ebf4ff);border-color:var(--color-primary, #3182ce);font-weight:600}.report-reason-option input[type=radio]{accent-color:var(--color-primary, #3182ce);flex-shrink:0}.report-dialog-desc-label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--color-text-muted)}.report-dialog-desc-label textarea{width:100%;padding:.55rem .7rem;border:1px solid var(--color-border, #e2e8f0);border-radius:var(--radius, 6px);font-size:.875rem;font-family:inherit;line-height:1.5;resize:vertical;background:var(--color-input-bg, #fff);color:var(--color-text);min-width:0}.report-dialog-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid var(--color-border, #e2e8f0)}.btn-danger{background:var(--color-danger, #e53e3e);color:#fff;border-color:var(--color-danger, #e53e3e)}.btn-danger:hover:not(:disabled){background:#c53030;border-color:#c53030}.admin-report-list{display:flex;flex-direction:column;gap:1rem}.admin-report-card{padding:1.25rem 1.5rem}.admin-report-card.is-handled{opacity:.7}.admin-report-card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.admin-report-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.admin-report-status-badge{font-size:.75rem;font-weight:700;padding:.2rem .6rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.status-pending{background:#fff3cd;color:#7c4f00}.status-reviewed{background:#d4edda;color:#155724}.status-dismissed{background:#f1f1f1;color:#555}.admin-report-reason{font-size:.875rem;font-weight:600;color:var(--color-text)}.admin-report-date{font-size:.8rem;color:var(--color-text-muted)}.admin-report-actions{display:flex;gap:.5rem;flex-shrink:0}.admin-report-card-body{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 600px){.admin-report-card-body{grid-template-columns:1fr}}.admin-report-section{display:flex;flex-direction:column;gap:.2rem}.admin-report-section-label{font-size:.75rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0}.admin-report-name{font-size:.9rem;font-weight:600;color:var(--color-text);margin:0}.admin-report-email{font-size:.8rem;color:var(--color-text-muted);margin:0}.admin-report-link{font-size:.8rem;color:var(--color-primary);text-decoration:none}.admin-report-link:hover{text-decoration:underline}.admin-report-description{grid-column:1 / -1}.admin-report-description p:last-child{font-size:.875rem;color:var(--color-text);margin:0;white-space:pre-wrap}.admin-empty{padding:2rem;text-align:center;color:var(--color-text-muted)}.dashboard-actions{display:flex;gap:.75rem;flex-wrap:wrap}.dashboard-manual{display:flex;flex-direction:column;gap:.75rem}.dashboard-manual p,.dashboard-manual h2{margin:0}.dashboard-empty{max-width:640px}@media (max-width: 767px){.dashboard-hero,.dashboard-profile-header{flex-direction:column;align-items:flex-start}}@media (max-width: 1023px){.dashboard-grid{grid-template-columns:1fr}}.admin-page{display:flex;flex-direction:column;gap:1.5rem}.admin-hero{background:linear-gradient(135deg,#eef8ff,#fff 55%,#f6f8fb);border-color:#d4e6f7}.admin-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.admin-summary-card{min-height:170px}.admin-dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.85fr)}.admin-toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.admin-toolbar-field{display:flex;flex-direction:column;gap:.45rem}.admin-toolbar-field span{font-weight:600}.admin-toolbar>.admin-toolbar-field{flex:0 1 180px;min-width:140px}.admin-toolbar-search{flex:1 1 300px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:end}.admin-toolbar-search input{width:100%;border-radius:12px;border:1px solid var(--color-border);padding:.9rem 1rem;font:inherit;background:#fff}.admin-toolbar-search input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #f472b626}.admin-toolbar-actions{display:flex;gap:.75rem;flex-wrap:wrap}.admin-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.9fr);gap:1rem;align-items:start}.admin-table-card,.admin-detail-card,.admin-form-card,.admin-result-card{display:flex;flex-direction:column;gap:1rem}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.85rem .7rem;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle}.admin-table th{font-size:.85rem;color:var(--color-muted);white-space:nowrap}.admin-table tbody tr.is-selected{background:#f8fbff}.admin-status-pill{display:inline-flex;align-items:center;justify-content:center;padding:.28rem .6rem;border-radius:999px;font-size:.8rem;font-weight:700}.admin-status-pill.is-active{background:#e6fcf5;color:#087f5b}.admin-status-pill.is-banned{background:#fff1f0;color:#c92a2a}.admin-detail-stack{display:flex;flex-direction:column;gap:1rem}.admin-detail-list{gap:.75rem}.admin-detail-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:1rem;align-items:start}.admin-detail-section{display:flex;flex-direction:column;gap:1rem}.admin-history-list{display:flex;flex-direction:column;gap:.85rem}.admin-history-item{border:1px solid var(--color-border);border-radius:16px;padding:1rem;background:#fff}.admin-history-head{display:flex;justify-content:space-between;gap:.75rem;align-items:baseline;margin-bottom:.85rem}.admin-history-head strong,.admin-history-head span{margin:0}.admin-history-head span{color:var(--color-muted);font-size:.9rem}.admin-history-meta{gap:.65rem}.admin-form{gap:1rem}.admin-form textarea,.admin-form-field textarea{width:100%;border-radius:12px;border:1px solid var(--color-border);padding:.9rem 1rem;font:inherit;resize:vertical;background:#fff}.admin-form textarea:focus,.admin-form-field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #f472b626}.admin-form-field{display:flex;flex-direction:column;gap:.45rem}.admin-form-field span{font-weight:600}.admin-row-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-user-list{display:flex;flex-direction:column;gap:.6rem}.admin-user-card{border:1px solid var(--color-border);border-radius:14px;padding:.9rem 1.1rem;background:#fff;transition:background .15s,border-color .15s}.admin-user-card.is-selected{background:#f3f8ff;border-color:#b5d4f7}.admin-user-card-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.2rem}.admin-user-card-name{font-weight:600;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-card-email{font-size:.875rem;color:var(--color-muted);margin:0 0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-card-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.83rem;color:var(--color-muted);margin-bottom:.75rem}.admin-user-card-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-pagination{display:flex;justify-content:space-between;align-items:center;gap:1rem}.admin-pagination-actions{display:flex;gap:.75rem}@media (max-width: 1023px){.admin-detail-grid,.admin-dashboard-grid,.admin-grid{grid-template-columns:1fr}}@media (max-width: 540px){.admin-toolbar-search{grid-template-columns:1fr}.admin-toolbar>.admin-toolbar-field{flex:1 1 140px}}.tutor-manual,.student-manual{display:flex;flex-direction:column;gap:1rem}.student-manual-hero h1,.student-manual-hero p,.student-manual-note h2,.student-manual-note p,.tutor-manual-hero h1,.tutor-manual-hero p,.tutor-manual-note h2,.tutor-manual-note p{margin-top:0}.tutor-manual-grid,.student-manual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.student-manual-card h2,.tutor-manual-card h2{margin-top:0;font-size:1.1rem}.student-manual-card ul,.tutor-manual-card ul{margin:0;padding-left:1.2rem}.student-manual-email{display:flex;flex-direction:column;gap:1rem}.sample-email-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.sample-email-header h2{margin:0 0 .25rem}.sample-email-header .hint{margin:0}.sample-email-body{background:var(--color-bg-page, #f8f9fa);border:1px solid var(--color-border);border-radius:10px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.sample-email-subject{font-size:.9rem;margin:0;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.sample-email-label{font-weight:600;margin-right:.25rem}.sample-email-pre{margin:0;font-family:inherit;font-size:.9rem;line-height:1.7;white-space:pre-wrap;word-break:break-word}.sample-email-note{font-size:.82rem;color:var(--color-text-muted, #6c757d);margin:0}.profile-form{gap:1.25rem}.profile-form-section{display:flex;flex-direction:column;gap:1rem;padding:1.2rem;background:#fff;border:1px solid var(--color-border);border-radius:18px;box-shadow:0 12px 28px #2125290a}.profile-form-section-hero{background:linear-gradient(180deg,#fff,#fff7fa);border-color:#f1d6df}.profile-form-section-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.profile-form-section-head h2,.profile-form-section-head p{margin:0}.profile-form-section-label{font-size:.75rem;font-weight:800;letter-spacing:.08em;color:var(--color-primary);margin-bottom:.25rem}.profile-form-section-note{max-width:320px;color:var(--color-muted);font-size:.9rem}.profile-form-grid{display:grid;gap:1rem}.profile-form-grid-main{grid-template-columns:minmax(0,1fr) minmax(320px,1.1fr);align-items:start}.profile-form-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-form-stack{display:flex;flex-direction:column;gap:1rem}.profile-form label.profile-form-radio-label{flex-direction:row;align-items:flex-start;font-weight:400;cursor:pointer;gap:.6rem}.profile-form input[type=radio]{padding:0;border:none;border-radius:0;box-shadow:none;width:16px;height:16px;flex-shrink:0;margin-top:.15rem;accent-color:var(--color-primary);cursor:pointer}.profile-form-radio-content{display:flex;flex-direction:column;gap:.15rem}.profile-form-radio-label .field-note{margin:0;font-weight:400}.profile-form-radio-group{display:flex;flex-direction:column;gap:.75rem}.profile-form-radio-input{padding-left:calc(16px + .6rem);display:flex;flex-direction:column;gap:.25rem}.profile-form-field-wide{grid-column:1 / -1}.profile-form-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.25rem 0}.profile-form-footer-note{margin:0;color:var(--color-muted);font-size:.9rem}.photo-manager{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:linear-gradient(180deg,#fff,#fff7fa);border:1px solid #f1d6df;border-radius:16px}.photo-manager-preview{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:1rem;align-items:start}.profile-form-photo{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:18px;margin:0;background:#fff;border:1px solid var(--color-border)}.profile-form-photo-placeholder{display:flex;align-items:center;justify-content:center;color:var(--color-muted);font-weight:700}.photo-manager-copy{display:flex;flex-direction:column;gap:.75rem}.photo-manager-copy p,.photo-manager-copy strong,.photo-manager-help{margin:0}.photo-manager-input{display:none}.profile-form-language-block{display:grid;gap:.75rem}.profile-form-language-label{font-weight:700;color:var(--color-text)}.profile-form-language-list,.specialty-picker{display:grid;gap:.75rem}.specialty-picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem}.specialty-option{display:flex;align-items:center;gap:.6rem;padding:.8rem .9rem;border:1px solid var(--color-border);border-radius:12px;background:#fff;font-weight:500}.specialty-option input{margin:0}.specialty-option.is-selected{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,white)}.profile-form-language-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(180px,1fr) auto;gap:.75rem;align-items:center}.profile-form-language-row input,.profile-form-language-row .custom-select,.profile-form-control{width:100%;min-width:0}@media (max-width: 720px){.birthdate-select-row,.profile-form-language-row{grid-template-columns:1fr}}.photo-manager-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.photo-manager-item{display:flex;flex-direction:column;gap:.5rem;padding:.6rem;background:#fff;border:1px solid var(--color-border);border-radius:14px}.photo-manager-item.is-selected{border-color:var(--color-primary);box-shadow:0 0 0 3px #d6336c14}.photo-manager-item img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:10px}.photo-manager-item-actions{display:flex;flex-direction:column;gap:.5rem}.photo-cropper-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0f1218c7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.photo-cropper-dialog{width:min(92vw,880px);display:grid;gap:1rem;padding:1.25rem;background:#fff;border-radius:20px;box-shadow:0 32px 80px #0003}.photo-cropper-header{display:flex;align-items:start;justify-content:space-between;gap:1rem}.photo-cropper-header h2,.photo-cropper-header p,.photo-cropper-queue{margin:0}.photo-cropper-header p,.photo-cropper-queue,.photo-cropper-zoom span{color:var(--color-muted)}.photo-cropper-stage{position:relative;width:100%;min-height:min(62vh,520px);border-radius:18px;overflow:hidden;background:#111}.photo-cropper-footer{display:flex;align-items:end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.photo-cropper-zoom{display:grid;gap:.5rem;min-width:min(100%,280px)}.photo-cropper-zoom input{width:100%}.photo-cropper-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}@media (max-width: 720px){.photo-cropper-dialog{padding:1rem}.photo-cropper-header,.photo-cropper-footer{align-items:stretch;flex-direction:column}.photo-cropper-actions{justify-content:stretch}.photo-cropper-actions .btn{width:100%}}.station-picker{display:flex;flex-direction:column;gap:.75rem;padding:.9rem;background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:14px}.station-picker.station-picker-search-only{padding:0;background:transparent;border:0;border-radius:0}.station-picker-search{display:flex;flex-direction:column;gap:.5rem}.station-recommend-button{align-self:flex-start}.station-picker-help{margin:0;font-size:.85rem;color:var(--color-muted)}.station-suggestions{display:flex;flex-direction:column;gap:.5rem}.station-suggestion{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.7rem .85rem;border:1px solid var(--color-border);border-radius:12px;background:#fff;cursor:pointer;text-align:left}.station-suggestion strong,.station-suggestion span{margin:0}.station-suggestion span{font-size:.85rem;color:var(--color-muted)}.filters .station-suggestions{margin-top:.5rem}.station-selected-header{display:flex;flex-direction:column;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.station-selected-count{font-size:.8rem;font-weight:600;color:var(--color-primary);margin:0}.station-selected-list{display:flex;flex-wrap:wrap;gap:.5rem}.station-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;border-radius:999px;background:#fff;border:1px solid var(--color-border);font-size:.9rem}.station-chip button{border:0;background:transparent;cursor:pointer;color:var(--color-muted);padding:0;font-size:1rem;line-height:1}.station-selected-list.is-readonly .station-chip{background:var(--color-bg-alt)}.checkbox{flex-direction:row!important;align-items:center;gap:.5rem!important}.loading{text-align:center;padding:2rem;color:var(--color-muted)}.loading-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;min-height:260px;padding:2.5rem 1.5rem;background:transparent;text-align:center}.loading-panel.is-compact{min-height:160px;padding:1.25rem 1rem}.loading-panel-orb{position:relative;width:64px;height:64px}.loading-panel-ring,.loading-panel-core{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%}.loading-panel-ring{border:1.5px solid rgba(214,51,108,.16)}.loading-panel-ring-1{animation:loadingPulse 1.8s ease-in-out infinite}.loading-panel-ring-2{top:9px;right:9px;bottom:9px;left:9px;border-color:#d6336c4d;animation:loadingPulse 1.8s ease-in-out infinite .2s}.loading-panel-core{top:20px;right:20px;bottom:20px;left:20px;background:linear-gradient(135deg,var(--color-primary) 0%,#ff8fab 100%);box-shadow:0 10px 26px #d6336c38;animation:loadingFloat 1.6s ease-in-out infinite}.loading-panel-copy{display:flex;flex-direction:column;gap:.3rem}.loading-panel-copy strong,.loading-panel-copy p{margin:0}.loading-panel-copy strong{font-size:1.02rem;font-weight:700;color:#2b2527}.loading-panel-copy p{color:var(--color-muted);max-width:28rem;line-height:1.7}.page-fade-in{animation:pageFadeIn .42s ease backwards}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes loadingPulse{0%,to{transform:scale(.92);opacity:.55}50%{transform:scale(1);opacity:1}}@keyframes loadingFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (prefers-reduced-motion: reduce){.page-fade-in,.loading-panel-ring-1,.loading-panel-ring-2,.loading-panel-core{animation:none!important}}.purchase-button-wrap{margin-top:1rem}.availability-editor{display:flex;flex-direction:column;gap:.75rem}.availability-grid{display:grid;grid-template-columns:88px repeat(7,minmax(36px,1fr));gap:.4rem;align-items:center}.availability-grid-day,.availability-grid-band{font-size:.85rem;font-weight:700;text-align:center;color:var(--color-secondary)}.availability-grid-band{text-align:left}.availability-grid-cell{position:relative;display:flex!important;align-items:center;justify-content:center;min-height:38px;margin:0;border:1px solid var(--color-border);border-radius:10px;background:#fff;cursor:pointer}.availability-grid-cell input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;cursor:pointer}.availability-grid-cell span{width:18px;height:18px;border-radius:50%;border:2px solid #ced4da;background:#fff;transition:all .15s ease}.availability-grid-cell input:checked+span{background:var(--color-primary);border-color:var(--color-primary);box-shadow:inset 0 0 0 4px #fff}.availability-help{margin:0;color:var(--color-muted);font-size:.85rem}.tutor-price-list{display:flex;flex-direction:column;gap:.35rem}.tutor-price-list p{margin:0}@media (max-width: 1023px){.profile-form-grid-main,.profile-form-grid-compact{grid-template-columns:1fr}}@media (max-width: 767px){.profile-form-section-head,.profile-form-footer{flex-direction:column;align-items:stretch}.profile-form-section-note{max-width:none}}.availability-table-wrap{display:flex;flex-direction:column;gap:.75rem}.availability-table-scroll{overflow-x:auto}.tutor-detail-meta-wide .availability-table-scroll{overflow-x:visible}.availability-table{width:100%;min-width:460px;border-collapse:separate;border-spacing:0;font-size:.92rem}.availability-table th,.availability-table td{padding:.6rem .7rem;text-align:center;border-bottom:1px solid var(--color-border)}.availability-table thead th{background:var(--color-bg-alt);font-weight:700}.availability-table tbody th{text-align:left;background:#fff;white-space:nowrap}.availability-empty,.availability-note,.availability-disclaimer{margin:0}.availability-empty,.availability-disclaimer{color:var(--color-muted)}.availability-disclaimer{font-size:.85rem}.tutor-detail-meta-wide .availability-table{min-width:0}@media (max-width: 767px){.tutor-detail-header,.photo-manager-preview,.availability-grid{grid-template-columns:1fr}.tutor-detail-header{flex-direction:column}.availability-grid{grid-template-columns:72px repeat(7,minmax(28px,1fr));gap:.3rem}.availability-grid-day,.availability-grid-band{font-size:.75rem}}.tutor-recruit-page{display:grid;gap:2rem;padding-top:2rem;padding-bottom:4rem}.tutor-recruit-hero,.tutor-recruit-section,.tutor-recruit-final{position:relative;overflow:hidden;border-radius:28px}.tutor-recruit-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.85fr);gap:2rem;padding:3.5rem 3rem;background:linear-gradient(135deg,#1c0a10,#3e1528,#6c2040);border:none;box-shadow:0 32px 80px #6c20404d}.tutor-recruit-copy{display:grid;align-content:center;gap:1.35rem}.tutor-recruit-eyebrow{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#ff8fab;display:flex;align-items:center;gap:.55rem}.tutor-recruit-eyebrow:before{content:"";display:inline-block;width:1.5rem;height:2px;background:#ff8fab;border-radius:2px}.tutor-recruit-copy h1{max-width:14ch;font-size:clamp(2rem,4.5vw,3.5rem);letter-spacing:-.03em;line-height:1.12;margin:0;color:#fff}.tutor-recruit-lead{max-width:42rem;font-size:1rem;line-height:1.8;color:#ffffffb3;margin:0}.tutor-recruit-cta,.tutor-recruit-final-actions{display:flex;gap:.85rem;flex-wrap:wrap}.tutor-recruit-hero .btn-primary{background:linear-gradient(135deg,#e8436e,#c0174e);border:none;box-shadow:0 8px 24px #d6336c80;transition:transform .18s ease,box-shadow .18s ease}.tutor-recruit-hero .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#f5587f,#d6285e);transform:translateY(-2px);box-shadow:0 14px 36px #d6336c99;text-decoration:none}.tutor-recruit-hero .btn-ghost{background:#ffffff14;color:#ffffffd1;border-color:#ffffff38;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .18s ease,border-color .18s ease}.tutor-recruit-hero .btn-ghost:hover{background:#ffffff26;border-color:#fff6;text-decoration:none}.tutor-recruit-points{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem;padding:0;margin:.25rem 0 0}.tutor-recruit-points li{padding:.38rem .85rem;border-radius:999px;background:#ffffff1a;color:#ffffffe0;border:1px solid rgba(255,255,255,.2);font-size:.87rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tutor-recruit-points li:before{content:"✓ ";color:#ff8fab;font-weight:800}.tutor-recruit-visual,.tutor-recruit-side-visual{overflow:hidden;border-radius:20px;border:1px solid rgba(255,255,255,.1)}.tutor-recruit-visual{aspect-ratio:4 / 5;align-self:stretch;box-shadow:0 20px 60px #00000047}.tutor-recruit-photo,.tutor-recruit-illustration{width:100%;height:100%;display:block}.tutor-recruit-photo{object-fit:cover}.tutor-recruit-illustration{object-fit:contain;padding:1.5rem;background:linear-gradient(180deg,#fff0f5,#ffe0ea)}.tutor-recruit-section{padding:2.5rem;border:1px solid rgba(73,80,87,.08);background:#fff;box-shadow:0 4px 24px #2125290d}.tutor-recruit-mini-label{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--color-primary);display:flex;align-items:center;gap:.55rem}.tutor-recruit-mini-label:before{content:"";display:inline-block;width:1.5rem;height:2px;background:var(--color-primary);border-radius:2px}.tutor-recruit-section-head{display:grid;gap:.5rem;margin-bottom:2rem}.tutor-recruit-section-head h2{margin:0;font-size:clamp(1.6rem,3.2vw,2.4rem);line-height:1.2;letter-spacing:-.02em}.tutor-recruit-section-head p:last-child{margin:0;color:#5f5854}.tutor-recruit-problem{background:linear-gradient(180deg,#fff,#fdf6f8)}.tutor-recruit-problem-lead{max-width:640px;margin:0 0 2rem;color:#5f5854;font-size:1rem;line-height:1.75}.tutor-recruit-problem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.tutor-recruit-problem-card{padding:1.75rem 1.5rem;border-radius:16px;border:1px solid #f0e9e4;background:#fff;box-shadow:0 2px 8px #2125290a;transition:transform .2s ease,box-shadow .2s ease}.tutor-recruit-problem-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #d6336c14}.tutor-recruit-problem-icon{font-size:2rem;margin:0 0 .75rem;line-height:1}.tutor-recruit-problem-card h3{font-size:1.05rem;font-weight:700;color:#2c1a14;margin:0 0 .6rem}.tutor-recruit-problem-card p{font-size:.92rem;color:#5f5854;line-height:1.7;margin:0}.tutor-recruit-problem-conclusion{margin:2.5rem auto 0;max-width:600px;text-align:center;font-size:1.1rem;font-weight:700;color:#c0174e;line-height:1.6}.tutor-recruit-fit{background:linear-gradient(180deg,#fafafa,#fff)}.tutor-recruit-fit-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.6fr);gap:1.5rem}.tutor-recruit-fit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.tutor-recruit-fit-card{padding:1.35rem;border-radius:16px;border:1px solid #f0e9e4;background:#fff;font-size:.97rem;font-weight:700;color:#2c1a14;display:flex;align-items:flex-start;gap:.75rem;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 2px 8px #2125290a}.tutor-recruit-fit-card:before{content:"✓";flex-shrink:0;width:1.65rem;height:1.65rem;border-radius:50%;background:linear-gradient(135deg,#e8436e,#c0174e);color:#fff;font-size:.78rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:.05rem}.tutor-recruit-fit-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #d6336c1a}.tutor-recruit-side-visual{aspect-ratio:4 / 3;background:linear-gradient(180deg,#fff0f5,#ffe0ea);border-color:#d6336c1f}.tutor-recruit-fit .tutor-recruit-illustration{padding:0;background:transparent;object-fit:cover}.tutor-recruit-reasons{background:linear-gradient(180deg,#fff,#fdf6f8)}.tutor-recruit-reason-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.tutor-recruit-reason-card{display:grid;gap:.75rem;padding:1.75rem 1.75rem 1.75rem 2rem;border-radius:20px;border:1px solid rgba(214,51,108,.1);background:#fff;position:relative;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 2px 12px #2125290d}.tutor-recruit-reason-card:before{content:"";position:absolute;left:0;top:1.25rem;bottom:1.25rem;width:4px;background:linear-gradient(180deg,#e8436e,#c0174e);border-radius:0 3px 3px 0}.tutor-recruit-reason-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #d6336c21}.tutor-recruit-reason-number{margin:0;font-size:.7rem;font-weight:800;letter-spacing:.18em;color:var(--color-primary)}.tutor-recruit-reason-card h3{margin:0;font-size:1.05rem;line-height:1.4;color:#1c0a10}.tutor-recruit-reason-card p{margin:0;color:#5c5054;font-size:.92rem;line-height:1.75}.tutor-recruit-income{background:linear-gradient(180deg,#fffaf5,#fff)}.tutor-recruit-income-lead,.tutor-recruit-income-caption{margin:0;color:#5c5054}.tutor-recruit-income-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.tutor-recruit-income-card{display:grid;gap:1rem;padding:1.8rem 1.6rem;border-radius:20px;border:1px solid rgba(214,51,108,.1);background:#fff;box-shadow:0 4px 18px #2125290d;transition:transform .2s ease,box-shadow .2s ease}.tutor-recruit-income-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #d6336c21}.tutor-recruit-income-number,.tutor-recruit-income-label,.tutor-recruit-income-amount,.tutor-recruit-income-note,.tutor-recruit-income-card h3,.tutor-recruit-income-list dt,.tutor-recruit-income-list dd{margin:0}.tutor-recruit-income-number{font-size:.7rem;font-weight:800;letter-spacing:.18em;color:var(--color-primary)}.tutor-recruit-income-head{display:grid;gap:.35rem}.tutor-recruit-income-label{font-size:.8rem;font-weight:800;color:#8f3d22}.tutor-recruit-income-card h3{font-size:1.1rem;line-height:1.35;color:#1c0a10}.tutor-recruit-income-list{display:grid;gap:.8rem}.tutor-recruit-income-list div{display:grid;gap:.2rem}.tutor-recruit-income-list dt{font-size:.74rem;font-weight:800;letter-spacing:.08em;color:#8a6b61}.tutor-recruit-income-list dd{font-size:.94rem;line-height:1.7;color:#423638}.tutor-recruit-income-amount{padding-top:.9rem;border-top:1px solid rgba(214,51,108,.12);font-size:1.55rem;font-weight:800;line-height:1.2;color:#c0174e}.tutor-recruit-income-note{font-size:.9rem;line-height:1.7;color:#5c5054}.tutor-recruit-income-caption{margin-top:1rem;font-size:.85rem}.tutor-recruit-flow{background:#fdf5f8}.tutor-recruit-flow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.tutor-recruit-flow-card{display:grid;gap:.85rem;padding:2rem 1.5rem 1.75rem;border-radius:20px;border:1px solid rgba(214,51,108,.12);background:#fff;box-shadow:0 4px 16px #d6336c0f;transition:transform .2s ease,box-shadow .2s ease;text-align:center}.tutor-recruit-flow-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #d6336c21}.tutor-recruit-flow-step{width:2.6rem;height:2.6rem;margin:0 auto;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8436e,#c0174e);color:#fff;font-size:1rem;font-weight:700;box-shadow:0 4px 14px #d6336c66}.tutor-recruit-flow-card h3{margin:0;font-size:1.05rem;line-height:1.4}.tutor-recruit-flow-card p{margin:0;font-size:.92rem;color:#5c5054;line-height:1.75}.tutor-recruit-faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.tutor-recruit-faq-item{padding:1.5rem;border-radius:16px;border:1px solid #f0e4ea;background:#fff;transition:box-shadow .2s ease}.tutor-recruit-faq-item:hover{box-shadow:0 8px 24px #d6336c14}.tutor-recruit-faq-item h3{margin:0 0 .65rem;font-size:.97rem;line-height:1.5;color:#1c0a10;display:flex;align-items:flex-start;gap:.6rem}.tutor-recruit-faq-q{flex-shrink:0;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--color-primary);color:#fff;font-size:.78rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;margin-top:.05rem}.tutor-recruit-faq-item p{margin:0;font-size:.92rem;color:#5c5054;line-height:1.75;padding-left:2.1rem}.tutor-recruit-final{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:2.75rem 3rem;background:linear-gradient(135deg,#1c0a10,#3e1528,#6c2040);border:none;box-shadow:0 28px 70px #6c204047}.tutor-recruit-final>div{display:grid;gap:.5rem}.tutor-recruit-final .tutor-recruit-mini-label{color:#ff8fab}.tutor-recruit-final .tutor-recruit-mini-label:before{background:#ff8fab}.tutor-recruit-final h2{margin:0;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.2;color:#fff}.tutor-recruit-final .btn-primary{background:linear-gradient(135deg,#e8436e,#c0174e);border:none;box-shadow:0 8px 24px #d6336c80;transition:transform .18s ease,box-shadow .18s ease;white-space:nowrap}.tutor-recruit-final .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 36px #d6336c99;text-decoration:none}.tutor-recruit-final .btn-secondary{background:#ffffff1a;color:#ffffffd9;border:1px solid rgba(255,255,255,.24);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap;transition:background .18s ease,border-color .18s ease}.tutor-recruit-final .btn-secondary:hover:not(:disabled){background:#ffffff2e;border-color:#fff6;text-decoration:none}@media (max-width: 1023px){.tutor-recruit-hero,.tutor-recruit-fit-layout,.tutor-recruit-final{grid-template-columns:1fr}.tutor-recruit-final{display:grid}.tutor-recruit-visual{aspect-ratio:16 / 9}.tutor-recruit-reason-grid,.tutor-recruit-problem-grid,.tutor-recruit-income-grid,.tutor-recruit-faq-list{grid-template-columns:1fr}}@media (max-width: 767px){.tutor-recruit-page{gap:1rem;padding-top:1rem;padding-bottom:2rem}.tutor-recruit-hero{padding:2rem 1.5rem;border-radius:24px}.tutor-recruit-section{padding:1.75rem 1.5rem;border-radius:22px}.tutor-recruit-final{padding:2rem 1.5rem;border-radius:22px}.tutor-recruit-fit-grid,.tutor-recruit-problem-grid,.tutor-recruit-flow-grid,.tutor-recruit-income-grid{grid-template-columns:1fr}.tutor-recruit-visual,.tutor-recruit-side-visual{aspect-ratio:16 / 10}.tutor-recruit-cta,.tutor-recruit-final-actions{align-items:stretch}.tutor-recruit-cta .btn,.tutor-recruit-final-actions .btn{width:100%;text-align:center}}.tutor-recruit-share{max-width:680px;margin:0 auto;padding:2.5rem 1.5rem;text-align:center}.tutor-recruit-share-label{font-size:.85rem;color:var(--color-text-muted, #888);margin-bottom:1rem;letter-spacing:.05em}.tutor-recruit-share-buttons{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.share-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.1rem;border-radius:999px;font-size:.875rem;font-weight:600;cursor:pointer;border:none;text-decoration:none;transition:opacity .15s,transform .1s;white-space:nowrap;color:#fff}.share-btn:hover{opacity:.85;transform:translateY(-1px)}.share-btn:active{transform:translateY(0)}.share-btn-x{background:#000}.share-btn-line{background:#06c755}.share-btn-facebook{background:#1877f2}.share-btn-instagram{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)}
