@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.grid{display:grid}.hidden{display:none}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--paper:#f4efe4;--paper-deep:#ebe3d4;--paper-light:#fbf8f1;--ink:#17211d;--muted:#74766e;--line:#ded5c5;--line-soft:#ebe4d8;--forest:#173f34;--forest-deep:#0f2e26;--forest-light:#2d5b4b;--sage:#6e887b;--sage-soft:#e2e9e2;--gold:#b48b4e;--gold-soft:#f3e8cf;--rose:#a95245;--rose-soft:#f5e5df;--shadow:0 22px 60px #2b261d1a;--serif:"Songti SC", "STSong", "Noto Serif SC", "Source Han Serif SC", serif;--sans:"Avenir Next", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif}*{box-sizing:border-box}html,body{background:var(--paper);min-height:100%;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}body{overflow:hidden}button,input{font:inherit}button{color:inherit}button:not(:disabled){cursor:pointer}button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}::selection{background:var(--gold-soft);color:var(--forest)}.app-stage{background:radial-gradient(circle at 10% 8%,#b48b4e1f,#0000 28rem),linear-gradient(135deg,#e9e2d4 0%,#f4efe4 46%,#e6dfd1 100%);justify-content:center;min-height:100dvh;display:flex}.stage-aside{color:#f6f0e4;background:radial-gradient(circle at 24% 16%,#7e9b8742,#0000 32%),linear-gradient(145deg,#0d241e 0%,#173f34 56%,#102e26 100%);flex-direction:column;justify-content:space-between;width:min(48vw,620px);padding:44px 56px 36px;display:none;position:relative;overflow:hidden}.stage-aside:after{pointer-events:none;content:"";background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:52px 52px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 88%);mask-image:linear-gradient(#000,#0000 88%)}.stage-aside__top,.stage-aside__copy,.stage-aside__footer{z-index:3;position:relative}.stage-aside__top{align-items:center;gap:20px;display:flex}.stage-aside__rule{background:#f6f0e433;flex:1;height:1px}.stage-aside__copy{max-width:420px}.stage-aside__copy h2{font-family:var(--serif);letter-spacing:-.04em;margin:20px 0;font-size:clamp(36px,3.4vw,54px);font-weight:500;line-height:1.28}.stage-aside__copy p{color:#f6f0e4a8;max-width:360px;margin:0;font-size:14px;line-height:2}.stage-aside__art{z-index:2;opacity:.72;filter:saturate(.82);width:min(72%,430px);height:58%;position:absolute;top:13%;right:-6%}.stage-aside__footer{color:#f6f0e46b;letter-spacing:.22em;justify-content:space-between;font-size:9px;font-weight:600;display:flex}.phone-shell{background:var(--paper);flex-direction:column;width:min(100%,480px);height:100dvh;display:flex;position:relative;overflow:hidden}.app-content{scrollbar-width:none;flex:1;min-height:0;overflow:hidden auto}.app-content::-webkit-scrollbar{display:none}.page{background:radial-gradient(circle at 100% 0%, #b48b4e17, transparent 18rem), var(--paper);min-height:100%;padding:22px 20px 42px;position:relative}.page:before{pointer-events:none;opacity:.2;content:"";background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.11'/%3E%3C/svg%3E");position:absolute;inset:0}.page>*{z-index:1;position:relative}.page>.booking-dock{z-index:8;position:sticky}.page--inner{padding-top:30px;padding-bottom:50px}.brand{align-items:center;gap:11px;display:flex}.brand__mark{background:var(--forest);color:#f7f2e8;width:40px;height:40px;font-family:var(--serif);border:1px solid #173f342e;border-radius:50%;flex:none;place-items:center;font-size:17px;display:grid;box-shadow:inset 0 0 0 4px #f7f2e812}.stage-aside .brand__mark{background:#f7f2e817;border-color:#f7f2e842}.brand__word{color:var(--ink);font-family:var(--serif);letter-spacing:.06em;flex-direction:column;font-size:16px;font-weight:600;line-height:1.25;display:flex}.brand__word small{color:var(--muted);font-family:var(--sans);letter-spacing:.22em;margin-top:2px;font-size:7px;font-weight:600}.stage-aside .brand__word{color:#f6f0e4}.stage-aside .brand__word small{color:#f6f0e46b}.brand--compact .brand__mark{width:34px;height:34px;font-size:14px}.app-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.icon-button,.round-button{border:1px solid var(--line);width:40px;height:40px;color:var(--forest);background:#fbf8f1b8;border-radius:50%;place-items:center;transition:background .16s,border-color .16s,transform .16s;display:grid;position:relative}.icon-button:hover,.round-button:hover{background:var(--paper-light);border-color:#c9b78f;transform:translateY(-1px)}.icon-button__dot{border:1.5px solid var(--paper);background:var(--gold);border-radius:50%;width:5px;height:5px;position:absolute;top:8px;right:8px}.icon-button__count{border:2px solid var(--paper);background:var(--rose);color:#fffaf0;border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 4px;font-size:7px;font-weight:700;line-height:1;display:grid;position:absolute;top:-4px;right:-5px;box-shadow:0 4px 10px #5f2a222e}.icon-button--quiet{background:0 0;border-color:#0000}.round-button{width:44px;height:44px}.eyebrow{color:var(--gold);letter-spacing:.24em;text-transform:uppercase;font-size:8px;font-weight:700;line-height:1.5;display:block}.eyebrow--light{color:#d7c29b}.hero-card p{color:#f7f2e89e;max-width:250px;margin:0;font-size:12px;line-height:1.9}.stat-strip{border:1px solid var(--line);background:#fbf8f1b8;border-radius:18px;grid-template-columns:repeat(3,1fr);margin-top:14px;display:grid;box-shadow:0 8px 28px #372e200a}.stat-strip>div{flex-direction:column;align-items:center;gap:4px;padding:15px 8px 14px;display:flex}.stat-strip>div+div{border-left:1px solid var(--line-soft)}.stat-strip strong{font-family:var(--serif);font-size:23px;font-weight:600;line-height:1}.stat-strip span{color:var(--muted);font-size:9px}.schedule-section{margin-top:32px}.section-title{justify-content:space-between;align-items:flex-end;margin-bottom:18px;display:flex}.section-title h2{font-family:var(--serif);letter-spacing:-.035em;margin:6px 0 0;font-size:24px;font-weight:600}.section-title__trailing{color:var(--muted);padding-bottom:3px;font-size:10px}.date-strip{scrollbar-width:none;scroll-snap-type:x proximity;gap:7px;margin-inline:-20px;padding:0 20px 8px;display:flex;overflow-x:auto}.date-strip::-webkit-scrollbar{display:none}.date-chip{border:1px solid var(--line);width:56px;height:82px;color:var(--muted);scroll-snap-align:start;background:#fbf8f1a6;border-radius:17px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:5px;transition:all .17s;display:flex;position:relative}.date-chip span{font-size:9px}.date-chip strong{color:var(--ink);font-family:var(--serif);font-size:20px;font-weight:600}.date-chip i{background:0 0;border-radius:50%;width:4px;height:4px}.date-chip i.is-open{background:var(--sage)}.date-chip--active{border-color:var(--forest);background:var(--forest);color:#f7f2e8a3;transform:translateY(-2px);box-shadow:0 10px 22px #173f342e}.date-chip--active strong{color:#f7f2e8}.date-chip--active i.is-open{background:#d6c093}.slot-heading{justify-content:space-between;align-items:center;margin:20px 0 12px;display:flex}.slot-heading>div{align-items:center;gap:8px;display:flex}.slot-heading strong{font-size:12px;font-weight:600}.slot-heading>span{color:var(--muted);font-size:9px}.slot-heading__dot{background:var(--gold);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #b48b4e1f}.slot-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.slot{border:1px solid var(--line);text-align:left;background:#fbf8f1bd;border-radius:15px;flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;min-height:69px;padding:13px 14px;transition:all .16s;display:flex;position:relative}.slot:hover:not(:disabled){background:var(--paper-light);border-color:#c9b78f;transform:translateY(-1px)}.slot>span:first-child{font-family:var(--serif);letter-spacing:-.02em;font-size:17px;font-weight:600}.slot small{color:var(--muted);font-size:8px}.slot--taken{color:#9d9b93;background:#ebe3d499;border-color:#0000}.slot--taken small{color:#a8a59c}.slot--selected{border-color:var(--forest);background:var(--forest);color:#f7f2e8;box-shadow:0 10px 22px #173f342b}.slot--selected small{color:#f7f2e89e}.slot__check{width:18px;height:18px;color:var(--forest);background:#d6c093;border-radius:50%;place-items:center;display:grid;position:absolute;top:9px;right:9px}.quiet-note{color:var(--muted);align-items:flex-start;gap:8px;margin-top:14px;font-size:9px;line-height:1.7;display:flex}.quiet-note svg{color:var(--gold);flex:none;margin-top:1px}.empty-card{border:1px dashed var(--line);min-height:150px;color:var(--muted);text-align:center;background:#fbf8f173;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.empty-card svg{color:var(--sage);margin-bottom:3px}.empty-card strong{color:var(--ink);font-family:var(--serif);font-size:15px}.empty-card span{max-width:240px;font-size:10px;line-height:1.7}.empty-card--large{min-height:330px;padding:30px}.empty-card__ornament{border:1px solid var(--line);width:62px;height:62px;color:var(--gold);font-family:var(--serif);border-radius:50%;place-items:center;font-size:30px;display:grid}.location-card{border-top:1px solid var(--line);align-items:center;gap:12px;margin-top:24px;padding-top:20px;display:flex}.location-card__icon{background:var(--sage-soft);width:42px;height:42px;color:var(--forest);border-radius:50%;flex:none;place-items:center;display:grid}.location-card>div:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.location-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.location-card>div>span:last-child{color:var(--muted);font-size:8px}.location-card>svg{color:var(--muted);flex:none}.booking-dock{z-index:8;color:#f7f2e8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#173f34f0;border:1px solid #ffffff1f;border-radius:20px;justify-content:space-between;align-items:center;gap:14px;margin-top:22px;padding:10px 10px 10px 18px;animation:.24s both dock-in;display:flex;position:sticky;bottom:10px;box-shadow:0 16px 34px #173f3442}.booking-dock>div{flex-direction:column;gap:2px;min-width:0;display:flex}.booking-dock button,.primary-button{min-height:48px;color:var(--forest);letter-spacing:.04em;background:#f3ecdf;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:12px;font-weight:700;transition:background .16s,transform .16s;display:flex}.booking-dock button:hover,.primary-button:hover{background:#fffaf0;transform:translateY(-1px)}.page-header{justify-content:space-between;align-items:flex-end;margin-bottom:26px;display:flex}.page-header h1{font-family:var(--serif);letter-spacing:-.045em;margin:8px 0 0;font-size:34px;font-weight:600}.segmented{background:var(--paper-deep);border-radius:15px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.segmented button{min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;font-size:11px;transition:all .16s;display:flex}.segmented button span{background:#173f341a;border-radius:999px;place-items:center;min-width:18px;height:18px;font-size:8px;display:grid}.segmented button.is-active{background:var(--paper-light);color:var(--ink);box-shadow:0 3px 10px #31291c14}.booking-list{flex-direction:column;gap:12px;margin-top:18px;display:flex}.booking-card{border:1px solid var(--line);background:#fbf8f1b8;border-radius:20px;grid-template-columns:66px 1fr;gap:15px;padding:14px;display:grid;box-shadow:0 8px 28px #372e200a}.booking-card--upcoming{border-color:#173f3440;box-shadow:0 14px 34px #173f3414}.booking-card__date{background:var(--paper-deep);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:112px;display:flex}.booking-card--upcoming .booking-card__date{background:var(--forest);color:#f7f2e8}.booking-card__date span{opacity:.65;font-size:8px}.booking-card__date strong{font-family:var(--serif);margin:2px 0;font-size:27px;font-weight:500;line-height:1}.booking-card__date small{opacity:.65;font-size:8px}.booking-card__body{min-width:0}.booking-card__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.status-pill{border-radius:999px;padding:4px 8px;font-size:8px;font-weight:600}.status-pill--upcoming{background:var(--sage-soft);color:var(--forest)}.booking-card__teacher{color:var(--muted);font-size:8px}.booking-card h3{font-family:var(--serif);letter-spacing:-.02em;align-items:baseline;gap:8px;margin:12px 0 6px;font-size:19px;font-weight:600;display:flex}.booking-card h3 span{color:var(--muted);font-family:var(--sans);font-size:8px;font-weight:500}.booking-card p{color:var(--muted);align-items:flex-start;gap:4px;margin:0;font-size:8px;line-height:1.6;display:flex}.booking-card p svg{flex:none;margin-top:1px}.booking-note{color:#615f57;border-left:2px solid #d6c093;flex-direction:column;gap:3px;margin-top:9px;padding-left:8px;font-size:8px;line-height:1.6;display:flex}.booking-note span{color:var(--gold);letter-spacing:.08em;font-size:7px;font-weight:700}.text-button{color:var(--rose);background:0 0;border:0;margin-top:10px;padding:0;font-size:9px;font-weight:600}.text-button--center{color:var(--muted);margin:14px auto 0;display:block}.booking-tip{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:10px;margin-top:20px;padding-top:16px;display:flex}.booking-tip svg{color:var(--gold);flex:none}.booking-tip p{flex-direction:column;gap:3px;margin:0;font-size:9px;line-height:1.7;display:flex}.booking-tip strong{color:var(--ink);font-size:10px}.balance-card{color:#f7f2e8;background:radial-gradient(circle at 90% 16%,#76998457,#0000 40%),linear-gradient(145deg,#0d241e 0%,#173f34 56%,#102f27 100%);border-radius:24px;justify-content:space-between;align-items:center;min-height:190px;padding:26px 24px;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 48px #173f3430}.balance-card:after{content:"";border:1px solid #f6f0e41f;border-radius:50%;width:180px;height:180px;position:absolute;bottom:-66px;right:-26px}.balance-card__copy{z-index:2;flex-direction:column;display:flex;position:relative}.balance-card__copy>strong{font-family:var(--serif);letter-spacing:-.07em;margin-top:10px;font-size:64px;font-weight:500;line-height:.95}.balance-card__copy>span:not(.eyebrow){color:#f7f2e8a3;margin-top:7px;font-size:10px}.balance-card__copy p{color:#f7f2e86b;margin:14px 0 0;font-size:8px}.balance-ring{z-index:2;background:conic-gradient(#d6c093 var(--progress), #f7f2e821 0);border-radius:50%;flex:none;place-items:center;width:90px;height:90px;display:grid;position:relative}.balance-ring:before{background:var(--forest);content:"";border-radius:50%;position:absolute;inset:7px}.balance-ring span,.balance-ring small{z-index:1;position:relative}.balance-ring span{font-family:var(--serif);align-self:end;font-size:22px}.balance-ring small{color:#f7f2e885;align-self:start;font-size:7px}.page--inner>.section-title{margin-top:32px}.package-list{flex-direction:column;gap:11px;display:flex}.package-card{border:1px solid var(--line);background:#fbf8f1b8;border-radius:19px;padding:17px 16px 14px;box-shadow:0 8px 26px #372e200a}.package-card--forest{border-top:3px solid var(--forest)}.package-card--gold{border-top:3px solid var(--gold)}.package-card--sage{border-top:3px solid var(--sage)}.package-card__top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.package-card__kind{color:var(--muted);letter-spacing:.06em;font-size:8px}.package-card h3{font-family:var(--serif);margin:5px 0 0;font-size:18px;font-weight:600}.package-card__top>strong{color:var(--forest);font-family:var(--serif);font-size:27px;font-weight:500;line-height:1}.package-card__top>strong small{font-family:var(--sans);font-size:8px;font-weight:500}.package-progress{background:var(--paper-deep);border-radius:999px;height:4px;margin:16px 0 10px;overflow:hidden}.package-progress span{border-radius:inherit;background:var(--forest);height:100%;display:block}.package-card--gold .package-progress span{background:var(--gold)}.package-card--sage .package-progress span{background:var(--sage)}.package-card__meta{color:var(--muted);justify-content:space-between;gap:10px;font-size:8px;display:flex}.info-card{color:var(--forest);background:#f7efde;border:1px solid #d9c9a6;border-radius:18px;align-items:center;gap:12px;margin-top:20px;padding:16px;display:flex}.info-card>svg:first-child{color:var(--gold);flex:none}.info-card>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.info-card strong{font-family:var(--serif);font-size:14px}.info-card p{color:#7c735f;margin:0;font-size:8px;line-height:1.6}.info-card>svg:last-child{color:#a18b5e;flex:none}.profile-card{color:#f7f2e8;background:radial-gradient(circle at 92% 14%,#7699844d,#0000 42%),linear-gradient(145deg,#173f34,#0e2b23);border-radius:22px;align-items:center;gap:15px;padding:24px 20px;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 40px #173f342e}.profile-card__avatar{width:60px;height:60px;font-family:var(--serif);background:#f7f2e817;border:1px solid #f7f2e842;border-radius:50%;flex:none;place-items:center;font-size:22px;display:grid}.profile-card__name{z-index:2;min-width:0;position:relative}.profile-card__name h2{font-family:var(--serif);margin:7px 0 4px;font-size:24px;font-weight:500}.profile-card__name p{color:#f7f2e88c;margin:0;font-size:8px}.profile-card__stamp{color:#f7f2e80d;font-family:var(--serif);font-size:100px;position:absolute;bottom:-27px;right:12px}.current-studio{border:1px solid var(--line);background:#fbf8f1b8;border-radius:18px;align-items:center;gap:12px;margin-top:14px;padding:14px;display:flex}.current-studio__mark{background:var(--sage-soft);width:42px;height:42px;color:var(--forest);font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:15px;display:grid}.current-studio>div:nth-child(2){flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.current-studio span,.current-studio small{color:var(--muted);font-size:8px}.current-studio strong{font-size:11px}.current-studio button{color:var(--forest);background:0 0;border:0;align-items:center;gap:2px;font-size:9px;font-weight:600;display:flex}.menu-list{border:1px solid var(--line);background:#fbf8f1a3;border-radius:20px;margin-top:20px;overflow:hidden}.menu-list button{text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;padding:14px 15px;display:flex}.menu-list button+button{border-top:1px solid var(--line-soft)}.menu-list button>span:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.menu-list__icon{background:var(--paper-deep);width:36px;height:36px;color:var(--forest);border-radius:12px;flex:none;place-items:center;display:grid}.menu-list strong{font-size:11px;font-weight:600}.menu-list small{color:var(--muted);font-size:8px}.menu-list button>svg{color:#a7a399;flex:none}.profile-footer{color:#a7a399;letter-spacing:.06em;justify-content:space-between;margin-top:30px;padding:0 4px;font-size:7px;display:flex}.bottom-nav{z-index:20;padding:8px 12px max(8px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#faf7efeb;border-top:1px solid #ded5c5bf;flex:none;grid-template-columns:repeat(4,1fr);display:grid;position:relative}.bottom-nav button{color:#929087;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;padding:3px 0;font-size:8px;transition:color .16s;display:flex}.bottom-nav__icon{border-radius:999px;place-items:center;width:34px;height:29px;transition:background .16s,color .16s,transform .16s;display:grid}.bottom-nav button.is-active{color:var(--forest);font-weight:700}.bottom-nav button.is-active .bottom-nav__icon{background:var(--sage-soft);transform:translateY(-1px)}.sheet-layer,.dialog-layer,.success-layer{z-index:80;justify-content:center;display:flex;position:fixed;inset:0}.sheet-layer,.dialog-layer{align-items:flex-end}.sheet-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0c19157a;border:0;animation:.18s both fade-in;position:absolute;inset:0}.bottom-sheet{z-index:2;background:var(--paper);width:min(100%,480px);padding:10px 22px max(22px, env(safe-area-inset-bottom));border-radius:28px 28px 0 0;animation:.26s cubic-bezier(.2,.8,.2,1) both sheet-in;position:relative;box-shadow:0 -20px 50px #121b1733}.bottom-sheet__handle{background:#c8c1b4;border-radius:999px;width:38px;height:3px;margin:0 auto 18px}.bottom-sheet__head{justify-content:space-between;align-items:flex-start;display:flex}.bottom-sheet__head h2{font-family:var(--serif);letter-spacing:-.03em;margin:7px 0 0;font-size:25px;font-weight:600}.confirm-time{background:var(--forest);color:#f7f2e8;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 16px;padding:18px;display:flex}.confirm-time__date{flex-direction:column;gap:4px;display:flex}.confirm-time__date span{color:#f7f2e894;font-size:9px}.confirm-time__date strong{font-family:var(--serif);font-size:22px;font-weight:500}.confirm-time__duration{color:#d6c093;letter-spacing:.08em;border:1px solid #f7f2e833;border-radius:999px;padding:5px 9px;font-size:8px}.confirm-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;display:flex}.confirm-details>div{justify-content:space-between;gap:20px;padding:10px 0;display:flex}.confirm-details>div+div{border-top:1px solid var(--line-soft)}.confirm-details span{color:var(--muted);flex:none;font-size:9px}.confirm-details strong{text-align:right;max-width:72%;font-size:9px;font-weight:600}.confirm-lesson{background:var(--sage-soft);border-radius:15px;align-items:center;gap:10px;margin-top:14px;padding:11px 12px;display:flex}.confirm-lesson__icon{width:34px;height:34px;color:var(--forest);background:#ffffff8c;border-radius:50%;flex:none;place-items:center;display:grid}.confirm-lesson>div{flex-direction:column;gap:2px;display:flex}.confirm-lesson strong{color:var(--forest);font-size:10px}.confirm-lesson span:not(.confirm-lesson__icon){color:#68796e;font-size:8px}.confirm-rule{color:var(--muted);margin:14px 2px 17px;font-size:8px;line-height:1.7}.primary-button{background:var(--forest);color:#f7f2e8;width:100%;min-height:52px}.primary-button:hover{background:var(--forest-light)}.success-layer{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0c19158f;align-items:center;padding:24px;animation:.18s both fade-in}.success-card{background:radial-gradient(circle at 50% 0%, #d6c0932e, transparent 34%), var(--paper);text-align:center;border:1px solid #ffffff4d;border-radius:26px;width:min(100%,390px);padding:36px 28px 26px;animation:.3s cubic-bezier(.2,.8,.2,1) both success-in;position:relative;box-shadow:0 30px 80px #05120e52}.success-card__close{width:32px;height:32px;color:var(--muted);background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.success-card__ring{background:var(--gold-soft);width:76px;height:76px;color:var(--forest);border:1px solid #cbb786;border-radius:50%;place-items:center;margin:0 auto 22px;display:grid;box-shadow:inset 0 0 0 8px #ffffff5c}.success-card h2{font-family:var(--serif);letter-spacing:-.04em;margin:10px 0 12px;font-size:30px;font-weight:500;line-height:1.35}.success-card p{max-width:250px;color:var(--muted);margin:0 auto 24px;font-size:10px;line-height:1.8}.dialog-layer{align-items:center;padding:24px}.dialog-card{z-index:2;background:var(--paper);border-radius:22px;width:min(100%,360px);padding:26px 24px 22px;animation:.22s both success-in;position:relative;box-shadow:0 28px 70px #05120e47}.dialog-card h3{font-family:var(--serif);margin:9px 0 10px;font-size:23px;font-weight:600}.dialog-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.8}.dialog-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;display:grid}.secondary-button,.danger-button{border:1px solid var(--line);background:0 0;border-radius:999px;min-height:45px;padding:0 16px;font-size:10px;font-weight:600}.secondary-button{color:var(--forest)}.danger-button{border-color:var(--forest);background:var(--forest);color:#f7f2e8}.toast{z-index:120;color:#f7f2e8;white-space:nowrap;background:#173f34f0;border:1px solid #ffffff24;border-radius:999px;padding:10px 16px;font-size:10px;animation:.22s both toast-in;position:fixed;bottom:100px;left:50%;transform:translate(-50%);box-shadow:0 14px 34px #121b173d}.studio-art{position:absolute;inset:0;overflow:hidden}.studio-art__glow{background:radial-gradient(circle at 62% 42%,#cabe9f47,#0000 46%);position:absolute;inset:-20% -15% 30%}.studio-art__arch{background:linear-gradient(#b7b5a7 0 44%,#918b7c 44% 49%,#635e55 49% 100%);border:1px solid #f6f0e42b;border-radius:50% 50% 0 0/28% 28% 0 0;width:66%;height:94%;position:absolute;bottom:-6%;right:-8%;overflow:hidden;box-shadow:0 34px 70px #0000004d}.studio-art__curtain{z-index:4;background:repeating-linear-gradient(93deg,#ffffff1f 0 6px,#3d2e2012 7px 13px),#e4d8c3;width:32%;position:absolute;top:0;bottom:0;box-shadow:0 0 30px #20180f1f}.studio-art__curtain--left{border-radius:0 0 80%;left:0;transform:skew(-2deg)translate(-3%)}.studio-art__curtain--right{border-radius:0 0 0 80%;right:0;transform:skew(2deg)translate(3%)}.studio-art__window{background:linear-gradient(#d9d9c9,#b8c4b6 66%,#8fa092 67%);border:7px solid #ece4d6;border-radius:48% 48% 4px 4px/38% 38% 4px 4px;position:absolute;inset:7% 19% 38%;overflow:hidden;box-shadow:inset 0 0 20px #322c2221}.studio-art__sun{background:#f4e7c7;border-radius:50%;width:25px;height:25px;position:absolute;top:14%;right:17%;box-shadow:0 0 28px #fff1ca80}.studio-art__hill{border-radius:50% 50% 0 0;position:absolute}.studio-art__hill--back{background:#8fa294;width:90%;height:45%;bottom:20%;right:-15%;transform:rotate(-8deg)}.studio-art__hill--front{background:#6f8578;width:120%;height:52%;bottom:-8%;left:-24%;transform:rotate(7deg)}.studio-art__floor{background:linear-gradient(167deg,#0000 46%,#241b121f 47% 48%,#0000 49%),linear-gradient(#8d8576,#625d54);height:42%;position:absolute;bottom:0;left:0;right:0}.studio-art__stool{z-index:3;width:24%;height:20%;position:absolute;bottom:22%;right:35%}.studio-art__stool-seat{background:#d6c6aa;border-radius:50% 50% 24% 24%;width:100%;height:27%;position:absolute;top:0;left:0;box-shadow:inset 0 -5px 7px #4d3b262e}.studio-art__stool-leg{transform-origin:top;background:#6f604b;border-radius:3px;width:3px;height:75%;position:absolute;top:22%}.studio-art__stool-leg--left{left:24%;transform:rotate(8deg)}.studio-art__stool-leg--right{right:24%;transform:rotate(-8deg)}.studio-art__mic{z-index:3;width:10px;height:37%;position:absolute;bottom:25%;right:27%}.studio-art__mic-head{background:#2d322f;border-radius:50%;width:13px;height:18px;position:absolute;top:0;left:50%;transform:translate(-50%)}.studio-art__mic-stand{background:#4f514b;width:2px;height:calc(100% - 16px);position:absolute;top:15px;left:50%;transform:translate(-50%)}.studio-art__mic-base{background:#4f514b;border-radius:50%;width:30px;height:3px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.studio-art__plant{z-index:3;width:20%;height:25%;position:absolute;bottom:18%;right:12%}.studio-art__leaf{transform-origin:0 100%;background:#536b5b;border-radius:100% 0;width:32%;height:58%;position:absolute;bottom:27%;left:42%}.studio-art__leaf--one{transform:rotate(-28deg)}.studio-art__leaf--two{transform:rotate(13deg)scale(.82)}.studio-art__leaf--three{transform:rotate(48deg)scale(.68)}.studio-art__pot{background:#b8895c;border-radius:4px 4px 40% 40%;height:31%;position:absolute;bottom:0;left:24%;right:24%}.studio-art__caption{z-index:6;color:#f7f2e859;letter-spacing:.18em;gap:18px;font-size:6px;font-weight:600;display:flex;position:absolute;bottom:20px;left:20px}@media (min-width:960px){body{background:#e8e1d3}.phone-shell{border:1px solid #ffffff8c;border-radius:38px;height:calc(100dvh - 48px);margin-block:24px;box-shadow:0 36px 90px #2a231833,0 0 0 1px #173f340d}.bottom-nav{border-radius:0 0 37px 37px}.sheet-layer,.dialog-layer,.success-layer{padding-bottom:24px}.bottom-sheet{border-radius:28px;margin-bottom:12px}}@media (min-width:1180px){.stage-aside{display:flex}}@media (max-width:380px){.page{padding-inline:16px}.hero-card h1{font-size:29px}.slot{padding-inline:11px}.balance-card__copy>strong{font-size:56px}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes success-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@keyframes dock-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.hero-card{color:#f7f2e8;isolation:isolate;background:radial-gradient(circle at 14% 10%,#5b806a66,#0000 38%),linear-gradient(145deg,#0d241e 0%,#173f34 54%,#0d2a23 100%);border:1px solid #ffffff1f;border-radius:26px;min-height:374px;position:relative;overflow:hidden;box-shadow:0 24px 54px #173f3438}.hero-card:after{z-index:1;pointer-events:none;content:"";background:linear-gradient(90deg,#081d18e0 0%,#081d187a 58%,#0000 92%),linear-gradient(#0000 48%,#081d18b8 100%);position:absolute;inset:0}.hero-card__content{z-index:3;flex-direction:column;align-items:flex-start;min-height:374px;padding:30px 24px 24px;display:flex;position:relative}.hero-card h1{font-family:var(--serif);letter-spacing:-.035em;margin:18px 0 14px;font-size:33px;font-weight:500;line-height:1.3}.hero-card p{color:#f7f2e8ad;text-shadow:0 1px 10px #081d1866;max-width:226px;margin:0;font-size:12px;line-height:1.9}.hero-card__meta{color:#f7f2e8a8;align-items:center;gap:9px;width:100%;margin-top:auto;padding-top:26px;font-size:9px;display:flex}.hero-card__meta>span:nth-child(2){color:#f7f2e8;flex-direction:column;font-size:11px;font-weight:600;display:flex}.hero-card__meta small{color:#f7f2e873;letter-spacing:.05em;margin-top:2px;font-size:7px;font-weight:500}.hero-card__avatar{width:31px;height:31px;font-family:var(--serif);background:#f7f2e81a;border:1px solid #f7f2e842;border-radius:50%;flex:none;place-items:center;font-size:12px;display:grid}.hero-card__line{background:#f7f2e82e;width:1px;height:22px;margin-inline:3px}.hero-card .studio-art{z-index:0;transform:translate(13%)}.hero-card .studio-art__caption{display:none}.hero-card .studio-art__arch{opacity:.9;width:70%}@media (min-width:540px){.hero-card h1{font-size:36px}.hero-card p{max-width:270px}}.booking-dock{z-index:8;color:#f7f2e8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#173f34f5;border:1px solid #ffffff1f;border-radius:20px;justify-content:space-between;align-items:center;gap:14px;margin-top:22px;padding:10px 10px 10px 16px;animation:.24s both dock-in;display:flex;position:relative;box-shadow:0 16px 34px #173f3442}.booking-dock__close{color:#f7f2e8a6;background:0 0;border:1px solid #f7f2e82e;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;display:grid}.booking-dock>div{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.booking-dock span{color:#f7f2e88f;font-size:8px}.booking-dock strong{font-family:var(--serif);font-size:15px;font-weight:500}.booking-dock>button:last-child,.primary-button{min-height:48px;color:var(--forest);letter-spacing:.04em;background:#f3ecdf;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:12px;font-weight:700;transition:background .16s,transform .16s;display:flex}.booking-dock>button:last-child:hover,.primary-button:hover{background:#fffaf0;transform:translateY(-1px)}.stage-aside__badge{color:#f6f0e49e;letter-spacing:.16em;white-space:nowrap;border:1px solid #f6f0e433;border-radius:999px;padding:5px 9px;font-size:7px;font-weight:600}.role-gate__shell{background:var(--paper)}.role-gate__paper{background:radial-gradient(circle at 100% 0%, #b48b4e1f, transparent 20rem), radial-gradient(circle at 0% 100%, #6e887b1f, transparent 18rem), var(--paper);scrollbar-width:none;flex-direction:column;height:100%;padding:26px 24px 28px;display:flex;position:relative;overflow-y:auto}.role-gate__paper::-webkit-scrollbar{display:none}.role-gate__top{justify-content:space-between;align-items:center;gap:12px;display:flex}.role-gate__tag{border:1px solid var(--line);color:var(--gold);letter-spacing:.14em;background:#fbf8f1b3;border-radius:999px;padding:6px 11px;font-size:8px;font-weight:700}.role-gate__intro{margin-top:42px}.role-gate__intro h1{font-family:var(--serif);letter-spacing:-.045em;margin:12px 0 14px;font-size:32px;font-weight:600;line-height:1.36}.role-gate__intro p{max-width:300px;color:var(--muted);margin:0;font-size:11px;line-height:1.9}.role-gate__phone{margin-top:30px;display:block}.role-gate__phone-box{border-bottom:1px solid var(--line);align-items:center;gap:10px;margin-top:8px;padding:10px 2px 12px;transition:border-color .16s;display:flex}.role-gate__phone-box:focus-within{border-color:var(--gold)}.role-gate__phone-box>span{border-right:1px solid var(--line);color:var(--muted);letter-spacing:.06em;padding-right:10px;font-size:11px}.role-gate__phone-box input{width:100%;color:var(--ink);font-family:var(--serif);letter-spacing:.08em;background:0 0;border:0;outline:none;font-size:20px}.role-gate__phone small{color:#a7a399;letter-spacing:.04em;margin-top:8px;font-size:8px;display:block}.role-options{flex-direction:column;gap:10px;margin-top:26px;display:flex}.role-option{border:1px solid var(--line);text-align:left;background:#fbf8f1c2;border-radius:18px;align-items:center;gap:13px;width:100%;padding:15px;transition:border-color .16s,box-shadow .16s,transform .16s,background .16s;display:flex}.role-option:hover{background:var(--paper-light);border-color:#c9b78f;transform:translateY(-1px);box-shadow:0 14px 30px #372e2014}.role-option--teacher{color:#f7f2e8;background:radial-gradient(circle at 88% 12%,#b48b4e42,#0000 44%),linear-gradient(145deg,#173f34,#0e2b23);border-color:#163a30;box-shadow:0 18px 36px #173f3433}.role-option--teacher:hover{background:radial-gradient(circle at 88% 12%,#b48b4e57,#0000 46%),linear-gradient(145deg,#1b4a3d,#11322a);border-color:#2d5b4b}.role-option__icon{border:1px solid var(--line-soft);background:var(--sage-soft);width:46px;height:46px;color:var(--forest);border-radius:14px;flex:none;place-items:center;display:grid}.role-option--teacher .role-option__icon{color:#e2cda1;background:#f7f2e817;border-color:#f7f2e833}.role-option__copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.role-option__copy strong{font-family:var(--serif);letter-spacing:-.01em;font-size:17px;font-weight:600}.role-option__copy small{color:var(--muted);font-size:9px}.role-option--teacher .role-option__copy small{color:#f7f2e894}.role-option__arrow{width:30px;height:30px;color:var(--forest);background:#173f3412;border-radius:50%;flex:none;place-items:center;display:grid}.role-option--teacher .role-option__arrow{color:#d7c29b;background:#f7f2e81a}.role-gate__note{color:var(--muted);align-items:flex-start;gap:8px;margin-top:20px;font-size:9px;line-height:1.75;display:flex}.role-gate__note svg{color:var(--sage);flex:none;margin-top:1px}.role-gate__footer{color:#a7a399;letter-spacing:.16em;justify-content:space-between;gap:12px;margin-top:auto;padding-top:30px;font-size:7px;font-weight:600;display:flex}.auth-loading{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:48px 0;display:flex}.auth-loading__mark{background:radial-gradient(circle at 30% 20%, #ffffff73, transparent 55%), var(--gold-soft);width:58px;height:58px;color:var(--forest);border:1px solid #b48b4e4d;border-radius:50%;place-items:center;margin-bottom:8px;display:grid;box-shadow:0 12px 28px #372e201a}.auth-loading strong{font-family:var(--serif);font-size:17px;font-weight:600}.auth-loading p{color:var(--muted);margin:0;font-size:10px}.auth-form{flex-direction:column;gap:18px;margin-top:26px;display:flex}.auth-field{display:block}.auth-field .eyebrow{margin-bottom:2px}.auth-field small{color:#a7a399;letter-spacing:.04em;margin-top:8px;font-size:8px;line-height:1.6;display:block}.auth-field--code{padding-top:2px}.auth-line-input{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);font-family:var(--serif);background:0 0;border-radius:0;outline:none;padding:10px 2px 12px;font-size:17px;transition:border-color .16s;display:block}.auth-line-input:focus{border-color:var(--gold)}.auth-line-input::placeholder{color:#b0aa9e;font-size:13px}.auth-inline-button{border:1px solid var(--line);color:var(--forest);letter-spacing:.02em;white-space:nowrap;background:#fbf8f1b3;border-radius:999px;flex:none;padding:7px 10px;font-size:9px;font-weight:700;transition:background .16s,border-color .16s,opacity .16s}.auth-inline-button:not(:disabled):hover{background:var(--gold-soft);border-color:#c9b78f}.auth-inline-button:disabled{opacity:.45}.auth-code-input{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--forest);font-family:var(--serif);letter-spacing:.42em;background:0 0;border-radius:0;outline:none;padding:8px 2px 10px;font-size:26px;font-weight:600;transition:border-color .16s;display:block}.auth-code-input:focus{border-color:var(--gold)}.auth-code-input::placeholder{color:#c8c1b4;letter-spacing:.32em;font-size:20px}.auth-debug{color:#7a5a24;background:#f3e8cf8c;border:1px dashed #b48b4e66;border-radius:10px;align-items:center;gap:6px;margin-top:10px;padding:8px 10px;font-size:9px;line-height:1.4;display:flex}.auth-debug svg{color:var(--gold);flex:none}.auth-debug strong{color:var(--forest);letter-spacing:.2em;margin-left:auto;font-size:13px}.auth-alert{color:#8c4034;background:#f5e5dfb3;border:1px solid #a952453d;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:10px;line-height:1.65;display:flex}.auth-alert button{color:inherit;background:0 0;border:0;border-bottom:1px solid;flex:none;padding:0 0 1px;font-size:9px}.auth-primary{color:#f7f2e8;letter-spacing:.08em;background:radial-gradient(circle at 85% 10%,#b48b4e47,#0000 45%),linear-gradient(145deg,#1b4a3d,#11322a);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:50px;padding:0 20px;font-size:11px;font-weight:700;transition:transform .16s,box-shadow .16s,opacity .16s;display:flex;box-shadow:0 16px 34px #173f3433}.auth-primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 20px 40px #173f3442}.auth-primary:disabled{opacity:.42;box-shadow:none}.auth-text-button{color:var(--muted);letter-spacing:.03em;background:0 0;border:0;align-self:center;align-items:center;gap:6px;margin:18px auto 0;padding:6px;font-size:9px;display:inline-flex}.auth-text-button:not(:disabled):hover{color:var(--rose)}.auth-text-button:disabled{opacity:.5}.auth-segment{border:1px solid var(--line);background:#ebe3d48c;border-radius:999px;grid-template-columns:1fr 1fr;gap:4px;margin-top:24px;padding:4px;display:grid}.auth-segment button{color:var(--muted);letter-spacing:.03em;background:0 0;border:0;border-radius:999px;padding:10px 8px;font-size:10px;font-weight:600;transition:background .16s,color .16s,box-shadow .16s}.auth-segment button.is-active{background:var(--paper-light);color:var(--forest);box-shadow:0 4px 14px #372e2014}.identity-list{flex-direction:column;gap:12px;margin-top:24px;display:flex}.identity-card{border:1px solid var(--line);background:radial-gradient(circle at 100% 0,#b48b4e1a,#0000 12rem),#fbf8f1d1;border-radius:20px;padding:15px;box-shadow:0 12px 28px #372e200d}.identity-card__head{align-items:center;gap:12px;display:flex}.identity-card__mark{color:#e2cda1;width:44px;height:44px;font-family:var(--serif);background:linear-gradient(145deg,#1b4a3d,#11322a);border-radius:14px;flex:none;place-items:center;padding-top:1px;font-size:18px;font-weight:600;line-height:1;display:grid}.identity-card__head>div{flex-direction:column;gap:3px;min-width:0;display:flex}.identity-card__head strong{font-family:var(--serif);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:600;overflow:hidden}.identity-card__head small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.identity-card__roles{gap:8px;margin-top:12px;display:flex}.identity-role-button{border:1px solid var(--line);background:var(--paper-light);min-width:0;color:var(--muted);text-align:left;border-radius:14px;flex-direction:column;flex:1;align-items:flex-start;gap:4px;padding:10px 12px;font-size:8px;line-height:1.5;transition:transform .16s,box-shadow .16s,opacity .16s;display:flex}.identity-role-button>span{align-items:center;gap:5px;font-size:10px;font-weight:700;display:inline-flex}.identity-role-button.is-teacher{color:#f7f2e89e;background:linear-gradient(145deg,#1b4a3d,#11322a);border-color:#163a30}.identity-role-button.is-teacher>span{color:#f7f2e8}.identity-role-button.is-student{background:var(--sage-soft);color:#5e7568;border-color:#cbd8cd}.identity-role-button.is-student>span{color:var(--forest)}.identity-role-button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 10px 22px #372e201a}.identity-role-button:disabled{opacity:.55}.role-gate__intro--compact{margin-top:28px}.role-gate__phone-box input{flex:1;min-width:0}.auth-floating-status{z-index:80;background:var(--forest);color:#f7f2e8;letter-spacing:.04em;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:10px;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%);box-shadow:0 16px 34px #173f343d}.auth-floating-status__spinner{border:2px solid #f7f2e847;border-top-color:#e2cda1;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite auth-spin}.auth-floating-message{z-index:80;border:1px solid var(--line);width:min(100vw - 32px,420px);color:var(--ink);background:#fffaf0;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:10px;line-height:1.6;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 18px 42px #372e2029}.auth-floating-message button{color:var(--muted);background:0 0;border:0;flex:none;padding:0 2px;font-size:16px;line-height:1}@keyframes auth-spin{to{transform:rotate(360deg)}}.teacher-page{padding-bottom:50px}.teacher-header-actions{align-items:center;gap:9px;display:flex}.teacher-identity-chip{background:var(--gold-soft);color:#8a652f;letter-spacing:.1em;border:1px solid #b48b4e57;border-radius:999px;padding:5px 10px;font-size:8px;font-weight:700}.teacher-section,.teacher-panel{margin-top:28px}.teacher-panel .section-title{margin-bottom:14px}.teacher-hero{color:#f7f2e8;isolation:isolate;background:radial-gradient(circle at 14% 8%,#5b806a6b,#0000 40%),linear-gradient(145deg,#0d241e 0%,#173f34 56%,#0d2a23 100%);border:1px solid #ffffff1f;border-radius:26px;padding:24px 22px 20px;position:relative;overflow:hidden;box-shadow:0 24px 54px #173f3438}.teacher-hero:before{z-index:0;pointer-events:none;content:"";background-image:radial-gradient(circle at 86% 12%,#d6c09338,#0000 34%),linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:auto,36px 36px,36px 36px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 92%);mask-image:linear-gradient(#000,#0000 92%)}.teacher-hero>*{z-index:1;position:relative}.teacher-hero__top{justify-content:space-between;align-items:center;gap:12px;display:flex}.teacher-hero__badge{color:#d7c29b;letter-spacing:.18em;border:1px solid #f7f2e833;border-radius:999px;padding:5px 9px;font-size:7px;font-weight:700}.teacher-hero h1{font-family:var(--serif);letter-spacing:-.04em;margin:16px 0 12px;font-size:29px;font-weight:500;line-height:1.34}.teacher-hero p{color:#f7f2e89e;max-width:264px;margin:0;font-size:10px;line-height:1.9}.teacher-hero__next{border-top:1px solid #f7f2e824;align-items:center;gap:12px;margin-top:22px;padding-top:16px;display:flex}.teacher-hero__time{font-family:var(--serif);letter-spacing:-.02em;font-size:19px;font-weight:600}.teacher-hero__next>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.teacher-hero__next strong{font-size:11px;font-weight:600}.teacher-hero__next small{color:#f7f2e87a;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.teacher-hero__next button{color:#e2cda1;background:#f7f2e814;border:1px solid #f7f2e833;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;transition:background .16s,transform .16s;display:grid}.teacher-hero__next button:hover{background:#f7f2e829;transform:translateY(-1px)}.teacher-hero__stamp{z-index:0;color:#f7f2e80d;font-family:var(--serif);font-size:132px;line-height:1;position:absolute;bottom:-46px;right:-10px}.teacher-stat-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:14px;display:grid}.teacher-stat{border:1px solid var(--line);background:#fbf8f1bd;border-radius:17px;align-items:center;gap:11px;padding:13px 14px;display:flex;box-shadow:0 8px 22px #372e200a}.teacher-stat__icon{border-radius:12px;flex:none;place-items:center;width:36px;height:36px;display:grid}.teacher-stat__icon--sage{background:var(--sage-soft);color:var(--forest)}.teacher-stat__icon--gold{background:var(--gold-soft);color:#9a7134}.teacher-stat__icon--rose{background:var(--rose-soft);color:var(--rose)}.teacher-stat__icon--paper{background:var(--paper-deep);color:var(--forest-light)}.teacher-stat strong{font-family:var(--serif);font-size:21px;font-weight:600;line-height:1;display:block}.teacher-stat>div>span{color:var(--muted);margin-top:5px;font-size:9px;display:block}.teacher-agenda{border:1px solid var(--line);background:#fbf8f1b8;border-radius:20px;overflow:hidden;box-shadow:0 8px 28px #372e200a}.teacher-agenda__item{grid-template-columns:60px minmax(0,1fr);gap:14px;padding:16px;display:grid}.teacher-agenda__item+.teacher-agenda__item{border-top:1px solid var(--line-soft)}.teacher-agenda__time{border-right:1px solid var(--line-soft);flex-direction:column;gap:4px;padding-right:12px;display:flex}.teacher-agenda__time strong{font-family:var(--serif);letter-spacing:-.02em;font-size:18px;font-weight:600}.teacher-agenda__time span{color:var(--muted);font-size:8px}.teacher-agenda__body{min-width:0}.teacher-agenda__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.teacher-agenda__head h3{font-family:var(--serif);margin:0;font-size:16px;font-weight:600}.teacher-agenda__body p{color:var(--muted);margin:7px 0 0;font-size:9px;line-height:1.7}.teacher-agenda__actions{flex-wrap:wrap;gap:8px;margin-top:11px;display:flex}.agenda-button{border:1px solid var(--line);background:0 0;border-radius:999px;align-items:center;gap:5px;min-height:30px;padding:0 12px;font-size:9px;font-weight:600;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.agenda-button--complete{border-color:var(--forest);background:var(--forest);color:#f7f2e8}.agenda-button--complete:hover{background:var(--forest-light);transform:translateY(-1px)}.agenda-button--quiet{color:var(--muted)}.agenda-button--quiet:hover{color:var(--ink);border-color:#c9b78f}.teacher-empty{color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:30px 20px;display:flex}.teacher-empty svg{color:var(--sage)}.teacher-empty strong{color:var(--ink);font-family:var(--serif);font-size:14px}.teacher-empty span{max-width:230px;font-size:9px;line-height:1.7}.teacher-empty--large{border:1px dashed var(--line);background:#fbf8f173;border-radius:18px}.teacher-more-button{border:0;border-top:1px solid var(--line-soft);width:100%;color:var(--forest);letter-spacing:.04em;background:0 0;justify-content:center;align-items:center;gap:7px;padding:13px 0 0;font-size:9px;font-weight:700;display:flex}.teacher-invite{color:#f7f2e8;background:radial-gradient(circle at 92% 6%,#b48b4e4d,#0000 42%),linear-gradient(150deg,#173f34,#0d2a23);border-radius:22px;margin-top:28px;padding:20px;position:relative;overflow:hidden;box-shadow:0 20px 44px #173f3433}.teacher-invite__top{justify-content:space-between;align-items:center;display:flex}.teacher-invite__top svg{color:#d7c29b}.teacher-invite h2{font-family:var(--serif);letter-spacing:-.03em;margin:12px 0 8px;font-size:21px;font-weight:500;line-height:1.4}.teacher-invite p{color:#f7f2e894;max-width:280px;margin:0;font-size:9px;line-height:1.8}.teacher-invite__code{background:#f7f2e812;border:1px solid #f7f2e829;border-radius:15px;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding:11px 14px;display:flex}.teacher-invite__code>span{color:#f3e5c7;font-family:var(--serif);letter-spacing:.16em;font-size:22px;font-weight:600}.teacher-invite__code button{color:#f3e5c7;background:#f7f2e814;border:1px solid #f7f2e838;border-radius:999px;align-items:center;gap:5px;padding:7px 11px;font-size:9px;font-weight:600;transition:background .16s;display:inline-flex}.teacher-invite__code button:hover{background:#f7f2e829}.teacher-invite__footer{color:#f7f2e866;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;font-size:7px;display:flex}.teacher-invite__footer button{color:#d7c29b;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:8px;font-weight:600;display:inline-flex}.teacher-studio-card{border:1px solid var(--line);background:#fbf8f1bd;border-radius:20px;align-items:center;gap:12px;padding:15px;display:flex;box-shadow:0 8px 28px #372e200a}.teacher-studio-card__mark{background:var(--forest);color:#f7f2e8;width:48px;height:48px;font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:19px;display:grid;box-shadow:inset 0 0 0 4px #f7f2e814}.teacher-studio-card__copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.teacher-studio-card__copy strong{font-family:var(--serif);font-size:16px;font-weight:600}.teacher-studio-card__copy span{color:var(--muted);font-size:8px}.teacher-studio-card__copy small{color:#a7a399;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:8px;display:flex;overflow:hidden}.teacher-studio-card__copy small svg{flex:none}.teacher-studio-card>button{border:1px solid var(--line);width:34px;height:34px;color:var(--forest);background:0 0;border-radius:50%;flex:none;place-items:center;transition:background .16s,border-color .16s;display:grid}.teacher-studio-card>button:hover{background:var(--paper-light);border-color:#c9b78f}.teacher-quick-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:10px;display:grid}.teacher-quick-grid button{border:1px solid var(--line);color:var(--forest);text-align:left;background:#fbf8f19e;border-radius:15px;align-items:center;gap:10px;padding:12px 13px;transition:border-color .16s,background .16s,transform .16s;display:flex}.teacher-quick-grid button:hover{background:var(--paper-light);border-color:#c9b78f;transform:translateY(-1px)}.teacher-quick-grid button>svg{color:var(--sage);flex:none}.teacher-quick-grid button>span{flex-direction:column;gap:2px;min-width:0;display:flex}.teacher-quick-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.teacher-quick-grid small{color:var(--muted);font-size:8px}.segmented--three{grid-template-columns:repeat(3,1fr)}.teacher-booking-groups{flex-direction:column;gap:22px;margin-top:20px;display:flex}.teacher-date-group{flex-direction:column;gap:8px;display:flex}.teacher-date-label{color:var(--muted);letter-spacing:.04em;align-items:center;gap:12px;font-size:9px;font-weight:600;display:flex}.teacher-date-label i{background:var(--line-soft);flex:1;height:1px}.teacher-booking-card{border:1px solid var(--line);background:#fbf8f1bd;border-radius:20px;grid-template-columns:58px minmax(0,1fr);gap:14px;padding:14px;display:grid;box-shadow:0 8px 28px #372e200a}.teacher-booking-card__time{border-right:1px solid var(--line-soft);flex-direction:column;gap:4px;padding-right:12px;display:flex}.teacher-booking-card__time strong{font-family:var(--serif);letter-spacing:-.02em;font-size:18px;font-weight:600}.teacher-booking-card__time span{color:var(--muted);font-size:8px}.teacher-booking-card__body{min-width:0}.teacher-booking-card__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.teacher-booking-card__top h3{font-family:var(--serif);margin:0;font-size:17px;font-weight:600}.teacher-booking-card__body p{color:var(--muted);margin:7px 0 0;font-size:9px;line-height:1.7}.teacher-booking-card__actions{flex-wrap:wrap;gap:8px;margin-top:11px;display:flex}.teacher-roster-summary{border:1px solid var(--line);background:#fbf8f1b8;border-radius:18px;grid-template-columns:repeat(3,1fr);margin-bottom:14px;display:grid;box-shadow:0 8px 28px #372e200a}.teacher-roster-summary>div{flex-direction:column;align-items:center;gap:4px;padding:14px 8px;display:flex}.teacher-roster-summary>div+div{border-left:1px solid var(--line-soft)}.teacher-roster-summary strong{font-family:var(--serif);font-size:22px;font-weight:600;line-height:1}.teacher-roster-summary span{color:var(--muted);font-size:9px}.teacher-search{border:1px solid var(--line);color:var(--muted);background:#fbf8f1bd;border-radius:15px;align-items:center;gap:9px;margin-top:12px;padding:10px 13px;transition:border-color .16s;display:flex}.teacher-search:focus-within{border-color:#c9b78f}.teacher-search input{min-width:0;color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:11px}.teacher-search button{background:var(--paper-deep);width:20px;height:20px;color:var(--muted);border:0;border-radius:50%;place-items:center;display:grid}.teacher-student-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.teacher-student-row{border:1px solid var(--line);background:#fbf8f1bd;border-radius:17px;align-items:center;transition:border-color .16s,transform .16s;display:flex;box-shadow:0 8px 24px #372e200a}.teacher-student-row:hover{border-color:#c9b78f;transform:translateY(-1px)}.teacher-student-row__main{text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:11px;min-width:0;padding:12px 8px 12px 12px;display:flex}.teacher-student-row__main>svg{color:#a7a399;flex:none}.teacher-avatar{width:42px;height:42px;font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:17px;font-weight:600;display:grid}.teacher-avatar--forest{background:var(--sage-soft);color:var(--forest)}.teacher-avatar--gold{background:var(--gold-soft);color:#8a652f}.teacher-avatar--sage{color:#41604f;background:#e4ece7}.teacher-avatar--rose{background:var(--rose-soft);color:var(--rose)}.teacher-student-row__copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.teacher-student-row__name{align-items:center;gap:6px;display:flex}.teacher-student-row__name strong{font-family:var(--serif);font-size:15px;font-weight:600}.teacher-student-row__name i{background:var(--gold-soft);color:#8a652f;border-radius:999px;padding:3px 7px;font-size:7px;font-style:normal;font-weight:700}.teacher-student-row__name i.is-referral{background:var(--rose-soft);color:var(--rose)}.teacher-student-row__copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.teacher-student-row__lessons{flex-direction:column;flex:none;align-items:flex-end;gap:2px;display:flex}.teacher-student-row__lessons strong{font-family:var(--serif);font-size:17px;font-weight:600}.teacher-student-row__lessons small{color:var(--muted);font-size:7px}.teacher-convert{background:var(--forest);color:#f7f2e8;border:0;border-radius:999px;flex:none;margin-right:11px;padding:8px 12px;font-size:9px;font-weight:700;transition:background .16s}.teacher-convert:hover{background:var(--forest-light)}.student-sheet{max-height:90dvh;overflow-y:auto}.student-sheet .primary-button{background:var(--forest);color:#f7f2e8;margin-top:18px}.student-sheet__identity{align-items:center;gap:13px;margin-top:18px;display:flex}.student-sheet__identity>div{flex-direction:column;gap:5px;min-width:0;display:flex}.student-sheet__identity strong{font-family:var(--serif);font-size:20px;font-weight:600}.student-sheet__identity>div>span{color:var(--muted);align-items:center;gap:7px;font-size:9px;display:flex}.student-sheet__identity i{background:var(--gold-soft);color:#8a652f;border-radius:999px;padding:3px 7px;font-size:7px;font-style:normal;font-weight:700}.student-sheet__identity i.is-active{background:var(--sage-soft);color:var(--forest)}.student-sheet__stats{border:1px solid var(--line);background:#fbf8f1bd;border-radius:17px;grid-template-columns:repeat(3,1fr);margin-top:16px;display:grid}.student-sheet__stats>div{flex-direction:column;align-items:center;gap:4px;padding:13px 8px;display:flex}.student-sheet__stats>div+div{border-left:1px solid var(--line-soft)}.student-sheet__stats strong{font-family:var(--serif);font-size:21px;font-weight:600;line-height:1}.student-sheet__stats span{color:var(--muted);font-size:8px}.student-package{background:var(--sage-soft);border-radius:17px;margin-top:12px;padding:14px}.student-package__top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.student-package__top>div{flex-direction:column;gap:5px;display:flex}.student-package__top strong{color:var(--forest);font-family:var(--serif);font-size:15px;font-weight:600}.student-package__top>span{color:var(--forest);font-family:var(--serif);font-size:14px;font-weight:600}.student-package .package-progress{margin-top:10px}.student-package>small{color:#68796e;margin-top:9px;font-size:8px;display:block}.student-sheet__note{border:1px solid var(--line);border-radius:15px;margin-top:12px;padding:13px}.student-sheet__note p{color:var(--muted);margin:7px 0 0;font-size:9px;line-height:1.8}.teacher-profile-card{color:#f7f2e8;background:radial-gradient(circle at 92% 14%,#7699844d,#0000 42%),linear-gradient(145deg,#173f34,#0e2b23);border-radius:22px;align-items:center;gap:14px;padding:22px 20px;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 40px #173f342e}.teacher-profile-card__avatar{width:58px;height:58px;font-family:var(--serif);background:#f7f2e817;border:1px solid #f7f2e842;border-radius:50%;flex:none;place-items:center;font-size:22px;display:grid}.teacher-profile-card__avatar-button{background:0 0;border:0;border-radius:50%;flex:none;padding:0;transition:transform .16s;display:block;position:relative}.teacher-profile-card__avatar-button:hover{transform:translateY(-1px)}.teacher-profile-card__avatar-button:focus-visible{outline-offset:3px;outline:2px solid #e2cda1}.teacher-profile-card__edit-badge{width:23px;height:23px;color:var(--forest);background:#e2cda1;border:2px solid #173f34;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-2px;right:-3px;box-shadow:0 4px 10px #05120e3d}.teacher-profile-card__copy{z-index:2;min-width:0;position:relative}.teacher-profile-card__copy h2{font-family:var(--serif);margin:7px 0 4px;font-size:23px;font-weight:500}.teacher-profile-card__copy p{color:#f7f2e88c;margin:0;font-size:8px}.teacher-profile-card__stamp{color:#f7f2e80d;font-family:var(--serif);font-size:100px;position:absolute;bottom:-27px;right:12px}.teacher-manage-section{margin-top:26px}.teacher-manage-grid{border:1px solid var(--line);background:#fbf8f1db;border-radius:22px;overflow:hidden;box-shadow:0 12px 34px #372e200d}.teacher-manage-tile{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;border-radius:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-width:0;padding:16px 17px;transition:background .16s;display:grid;position:relative}.teacher-manage-tile:last-child{border-bottom:0}.teacher-manage-tile:hover{background:var(--paper-light)}.teacher-manage-tile__icon{width:48px;height:48px;color:var(--forest);border-radius:16px;place-items:center;transition:transform .16s,background .16s;display:grid;position:relative}.teacher-manage-tile:hover .teacher-manage-tile__icon{transform:translateY(-1px)scale(1.02)}.teacher-manage-tile__icon.is-forest{background:var(--sage-soft)}.teacher-manage-tile__icon.is-sage{background:var(--paper-deep)}.teacher-manage-tile__icon.is-gold{background:var(--gold-soft);color:#8a652f}.teacher-manage-tile__icon.is-rose{background:var(--rose-soft);color:var(--rose)}.teacher-manage-tile__copy{flex-direction:column;gap:4px;min-width:0;display:flex}.teacher-manage-tile__title{color:var(--ink);font-family:var(--serif);letter-spacing:.02em;font-size:15px;font-weight:600;line-height:1.25}.teacher-manage-tile__description{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.45;overflow:hidden}.teacher-manage-tile__chevron{color:#b3a184;border-radius:50%;place-items:center;width:28px;height:28px;transition:color .16s,transform .16s;display:grid}.teacher-manage-tile:hover .teacher-manage-tile__chevron{color:var(--gold);transform:translate(2px)}.teacher-manage-sheet{max-height:88dvh;overflow-y:auto}.teacher-manage-sheet__body{margin-top:18px}.teacher-manage-sheet__note{color:var(--muted);margin:0 0 12px;font-size:9px;line-height:1.6}.teacher-form{border:1px solid var(--line);background:#fbf8f1b3;border-radius:18px;flex-direction:column;gap:12px;padding:15px;display:flex;box-shadow:0 8px 28px #372e200a}.teacher-field{flex-direction:column;gap:6px;min-width:0;display:flex}.teacher-field>span:first-child{color:var(--muted);letter-spacing:.06em;font-size:8px;font-weight:600}.teacher-field input,.teacher-field textarea{border:1px solid var(--line-soft);background:var(--paper-light);width:100%;color:var(--ink);resize:vertical;border-radius:11px;outline:none;padding:10px 11px;font-size:11px;transition:border-color .16s,box-shadow .16s}.teacher-field input:focus,.teacher-field textarea:focus{border-color:#c9b78f;box-shadow:0 0 0 3px #b48b4e1a}.teacher-form__row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.teacher-field__suffix{border:1px solid var(--line-soft);background:var(--paper-light);border-radius:11px;align-items:center;padding-right:10px;display:flex}.teacher-field__suffix input{box-shadow:none;background:0 0;border:0}.teacher-field__suffix input:focus{box-shadow:none}.teacher-field__suffix em{color:var(--muted);flex:none;font-size:9px;font-style:normal}.teacher-save-button{background:var(--forest);color:#f7f2e8;letter-spacing:.04em;border:0;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:46px;font-size:11px;font-weight:700;transition:background .16s,transform .16s;display:flex}.teacher-save-button:hover{background:var(--forest-light);transform:translateY(-1px)}.teacher-schedule,.teacher-rule-list{border:1px solid var(--line);background:#fbf8f1b3;border-radius:18px;overflow:hidden;box-shadow:0 8px 28px #372e200a}.teacher-schedule__row{grid-template-columns:62px minmax(0,1fr) 40px 26px;align-items:center;gap:8px;padding:12px 14px;transition:opacity .16s;display:grid}.teacher-schedule__row+.teacher-schedule__row,.teacher-rule-row+.teacher-rule-row{border-top:1px solid var(--line-soft)}.teacher-schedule__row.is-disabled{opacity:.48}.teacher-schedule__day{font-family:var(--serif);font-size:14px;font-weight:600}.teacher-schedule__time{color:var(--muted);font-size:10px}.toggle-switch{background:#d8d2c6;border:0;border-radius:999px;width:38px;height:22px;padding:0;transition:background .18s;position:relative}.toggle-switch span{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #1e1a1238}.toggle-switch.is-on{background:var(--forest)}.toggle-switch.is-on span{transform:translate(16px)}.teacher-row-delete{color:#a7a399;background:0 0;border:0;border-radius:50%;place-items:center;width:24px;height:24px;transition:background .16s,color .16s;display:grid}.teacher-row-delete:hover{background:var(--rose-soft);color:var(--rose)}.teacher-add-row{border:0;border-top:1px solid var(--line-soft);width:100%;color:var(--forest);background:0 0;justify-content:center;align-items:center;gap:6px;padding:13px;font-size:10px;font-weight:700;display:flex}.teacher-add-row:hover{background:#e2e9e273}.teacher-rule-row{align-items:center;gap:11px;padding:12px 14px;display:flex}.teacher-rule-row__icon{background:var(--paper-deep);width:34px;height:34px;color:var(--forest);border-radius:11px;flex:none;place-items:center;display:grid}.teacher-rule-row>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.teacher-rule-row strong{font-family:var(--serif);font-size:13px;font-weight:600}.teacher-rule-row small{color:var(--muted);font-size:8px}.teacher-account{margin-top:28px}.teacher-account__invite{border:1px solid var(--line);background:var(--paper-deep);border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.teacher-account__invite>div:first-child{flex-direction:column;gap:5px;min-width:0;display:flex}.teacher-account__invite strong{font-family:var(--serif);letter-spacing:.14em;font-size:20px;font-weight:600}.teacher-account__invite small{color:var(--muted);font-size:8px}.teacher-account__actions{flex-direction:column;gap:6px;display:flex}.teacher-account__actions button{border:1px solid var(--line);color:var(--forest);white-space:nowrap;background:#fbf8f1cc;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:7px 11px;font-size:8px;font-weight:600;display:inline-flex}.teacher-account__actions button:hover{background:var(--paper-light);border-color:#c9b78f}.teacher-switch-button{border:1px solid var(--line);text-align:left;background:#fbf8f1b8;border-radius:18px;align-items:center;gap:12px;width:100%;margin-top:12px;padding:13px 14px;transition:border-color .16s,background .16s,transform .16s;display:flex}.teacher-switch-button:hover{background:var(--paper-light);border-color:#c9b78f;transform:translateY(-1px)}.teacher-switch-button>span:first-child{background:var(--sage-soft);width:38px;height:38px;color:var(--forest);border-radius:12px;flex:none;place-items:center;display:grid}.teacher-switch-button>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.teacher-switch-button strong{font-size:11px;font-weight:600}.teacher-switch-button small{color:var(--muted);font-size:8px}.teacher-switch-button>svg{color:#a7a399;flex:none}.page.page--home{padding-bottom:46px}.teacher-sync-alert{z-index:12;color:#82563f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faefe1f5;border-bottom:1px solid #e5cfb9;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;font-size:9px;line-height:1.55;display:flex;position:sticky;top:0}.teacher-sync-alert span{min-width:0}.teacher-sync-alert button{color:#744b36;background:#ffffff70;border:1px solid #82563f38;border-radius:999px;flex:none;padding:5px 9px;font-size:8px;font-weight:700}.teacher-loading{min-height:120px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.teacher-loading>span{border:2px solid var(--line);border-top-color:var(--gold);border-radius:50%;width:21px;height:21px;animation:.72s linear infinite teacher-loading-spin}.teacher-loading strong{letter-spacing:.03em;font-size:9px;font-weight:500}@keyframes teacher-loading-spin{to{transform:rotate(360deg)}}.teacher-avatar{background:var(--sage-soft);color:var(--forest);position:relative;overflow:hidden}.teacher-avatar>img,.teacher-hero__avatar>img,.teacher-studio-card__avatar>img,.teacher-form__avatar>img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.teacher-avatar__text{text-align:center;justify-content:center;align-items:center;width:100%;height:100%;padding:0;line-height:1;display:flex}.teacher-dashboard-notice{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:radial-gradient(circle at 100% 0,#b48b4e1c,#0000 42%),#fbf8f1c7;border-radius:17px;align-items:center;gap:12px;margin-top:10px;padding:12px 13px;transition:border-color .16s,background .16s,transform .16s;display:flex;box-shadow:0 8px 22px #372e200a}.teacher-dashboard-notice:hover{background:var(--paper-light);border-color:#c9b78f;transform:translateY(-1px)}.teacher-dashboard-notice__icon{background:var(--gold-soft);color:#8a652f;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid;position:relative}.teacher-dashboard-notice__icon i{border:2px solid var(--paper-light);background:var(--rose);color:#fffaf0;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:7px;font-style:normal;font-weight:700;display:grid;position:absolute;top:-4px;right:-5px}.teacher-dashboard-notice__copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.teacher-dashboard-notice__copy strong{font-family:var(--serif);font-size:14px;font-weight:600}.teacher-dashboard-notice__copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.teacher-dashboard-notice__action{color:var(--gold);flex:none;align-items:center;gap:2px;font-size:8px;font-weight:700;display:inline-flex}.teacher-header-mark{background:var(--sage-soft);width:44px;height:44px;color:var(--forest);font-family:var(--serif);border:1px solid #173f3429;border-radius:50%;flex:none;place-items:center;font-size:17px;font-weight:600;display:grid;box-shadow:inset 0 0 0 4px #fbf8f157}.teacher-hero__avatar{z-index:2;color:#ead8b1;width:50px;height:50px;font-family:var(--serif);background:#f7f2e81a;border:1px solid #f7f2e83d;border-radius:50%;justify-content:center;align-items:center;font-size:19px;font-weight:600;display:flex;position:absolute;top:54px;right:20px;overflow:hidden;box-shadow:0 8px 22px #05120e2e}.teacher-studio-card__avatar{background:var(--sage-soft);width:48px;height:48px;color:var(--forest);font-family:var(--serif);border:1px solid #173f341f;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:18px;font-weight:600;display:flex;overflow:hidden}.teacher-form__avatar{background:var(--sage-soft);width:50px;height:50px;color:var(--forest);font-family:var(--serif);border:1px solid #173f341f;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:18px;font-weight:600;display:flex;overflow:hidden}.teacher-settings-stack{flex-direction:column;gap:14px;display:flex}.teacher-form__heading{color:var(--forest);justify-content:space-between;align-items:center;gap:14px;margin-bottom:2px;display:flex}.teacher-form__heading>div{flex-direction:column;gap:4px;min-width:0;display:flex}.teacher-form__heading strong{color:var(--ink);font-family:var(--serif);font-size:17px;font-weight:600}.teacher-form__heading>svg{color:var(--sage);flex:none}.teacher-form__hint{color:#99958b;font-size:8px;line-height:1.55}.teacher-form__actions{grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:8px;margin-top:2px;display:grid}.teacher-form__actions .secondary-button,.teacher-form__actions .teacher-save-button{min-height:43px}.teacher-upload-button{min-height:42px;color:var(--forest);text-overflow:ellipsis;white-space:nowrap;background:#ebe3d46b;border:1px dashed #cfc4b1;border-radius:13px;justify-content:center;align-items:center;gap:7px;padding:9px 12px;font-size:9px;font-weight:600;display:flex;overflow:hidden}.teacher-upload-button input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.teacher-avatar-upload-hint{color:#99958b;margin:-4px 2px 0;font-size:8px;line-height:1.6}.teacher-avatar-upload-error{color:var(--rose);margin:-4px 2px 0;font-size:9px;line-height:1.6}.avatar-crop-layer{z-index:140;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.avatar-crop-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#081410b8;border:0;animation:.16s both fade-in;position:absolute;inset:0}.avatar-crop-card{z-index:1;background:radial-gradient(circle at 100% 0%, #b48b4e24, transparent 42%), var(--paper);border:1px solid #fff3;border-radius:26px;width:min(100%,390px);max-height:calc(100dvh - 32px);padding:20px;animation:.22s cubic-bezier(.2,.8,.2,1) both dialog-in;position:relative;overflow-y:auto;box-shadow:0 30px 90px #050f0c61}.avatar-crop-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.avatar-crop-head h2{font-family:var(--serif);letter-spacing:-.03em;margin:6px 0 0;font-size:24px;font-weight:600}.avatar-crop-intro{color:var(--muted);margin:10px 0 16px;font-size:9px;line-height:1.7}.avatar-crop-stage{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(45deg,#ffffff08 25%,#0000 25%) 0 0/20px 20px,#102d25;border:1px solid #f7f2e81f;border-radius:24px;width:260px;height:260px;margin:0 auto;position:relative;overflow:hidden;box-shadow:inset 0 0 42px #00000047}.avatar-crop-stage:active{cursor:grabbing}.avatar-crop-backdrop-image{filter:blur(18px)brightness(.58)saturate(.82);pointer-events:none;background-position:50%;background-size:cover;position:absolute;inset:-20px;transform:scale(1.06)}.avatar-crop-stage>img{pointer-events:none;will-change:width, height, left, top;max-width:none;position:absolute;transform:translate(-50%,-50%)}.avatar-crop-mask{pointer-events:none;background:#081410a8;border-radius:24px;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#0000 0 49.6%,#000 50%);mask:radial-gradient(circle,#0000 0 49.6%,#000 50%)}.avatar-crop-ring{pointer-events:none;border:2px solid #f7f2e8e0;border-radius:50%;position:absolute;inset:0;box-shadow:0 0 0 1px #0f2d2461,inset 0 0 28px #0000001a}.avatar-crop-loading{color:#f7f2e89e;pointer-events:none;place-items:center;font-size:9px;display:grid;position:absolute;inset:0}.avatar-crop-zoom{border:1px solid var(--line-soft);background:#fbf8f1b3;border-radius:14px;grid-template-columns:auto minmax(0,1fr) 38px;align-items:center;gap:10px;margin-top:14px;padding:9px 12px;display:grid}.avatar-crop-zoom>span{color:var(--forest);align-items:center;gap:5px;font-size:9px;font-weight:600;display:inline-flex}.avatar-crop-zoom input{width:100%;accent-color:var(--forest)}.avatar-crop-zoom strong{color:var(--muted);text-align:right;font-size:8px;font-weight:600}.avatar-crop-error{color:var(--rose);margin:10px 0 0;font-size:9px;line-height:1.6}.avatar-crop-actions{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:9px;margin-top:15px;display:grid}.avatar-crop-actions .secondary-button,.avatar-crop-actions .teacher-save-button{min-height:44px}@media (max-width:360px){.avatar-crop-layer{padding:12px}.avatar-crop-card{padding:16px}}.teacher-field select{appearance:none;border:1px solid var(--line-soft);background:linear-gradient(45deg, transparent 50%, #918b80 50%) calc(100% - 16px) calc(50% - 2px) / 4px 4px no-repeat, linear-gradient(135deg, #918b80 50%, transparent 50%) calc(100% - 12px) calc(50% - 2px) / 4px 4px no-repeat, var(--paper-light);width:100%;color:var(--ink);border-radius:11px;outline:none;padding:10px 30px 10px 11px;font-size:11px;transition:border-color .16s,box-shadow .16s}.teacher-field select:focus{border-color:#c9b78f;box-shadow:0 0 0 3px #b48b4e1a}.teacher-check-row{border:1px solid var(--line-soft);background:#fbf8f194;border-radius:13px;align-items:flex-start;gap:10px;padding:11px 12px;display:flex}.teacher-check-row input{width:16px;height:16px;accent-color:var(--forest);flex:none;margin:1px 0 0}.teacher-check-row>span{flex-direction:column;gap:3px;min-width:0;display:flex}.teacher-check-row strong{color:var(--ink);font-size:9px;font-weight:600}.teacher-check-row small{color:var(--muted);font-size:8px;line-height:1.6}.teacher-add-form{border-top:1px solid var(--line);background:#ebe3d459;flex-direction:column;gap:11px;padding:14px;display:flex}.teacher-info-list{border:1px solid var(--line);background:#fbf8f1b8;border-radius:17px;overflow:hidden}.teacher-info-row{justify-content:space-between;align-items:center;gap:18px;padding:12px 14px;display:flex}.teacher-info-row+.teacher-info-row{border-top:1px solid var(--line-soft)}.teacher-info-row>span{color:var(--muted);flex:none;font-size:9px}.teacher-info-row>strong{max-width:68%;color:var(--ink);text-align:right;font-size:9px;font-weight:600}.teacher-info-row>strong.is-danger{color:var(--rose)}.teacher-info-row>strong.is-success{color:var(--forest)}.teacher-invite-panel{color:#f7f2e8;background:radial-gradient(circle at 90% 0,#d6c0933d,#0000 38%),linear-gradient(145deg,#173f34,#0e2b23);border-radius:20px;padding:20px;position:relative;overflow:hidden;box-shadow:0 18px 38px #173f3429}.teacher-invite-panel>strong{color:#f2dfb8;font-family:var(--serif);letter-spacing:.16em;margin:10px 0 8px;font-size:30px;font-weight:600;display:block}.teacher-invite-panel>small{color:#f7f2e885;max-width:260px;font-size:8px;line-height:1.7;display:block}.teacher-invite-panel__actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.teacher-invite-panel__actions button{color:#ead8b1;background:#f7f2e812;border:1px solid #f7f2e833;border-radius:999px;align-items:center;gap:5px;padding:8px 11px;font-size:8px;font-weight:600;display:inline-flex}.teacher-invite-panel__actions button:hover{background:#f7f2e824}.teacher-invite-panel__actions button:disabled{opacity:.5}.teacher-invite-panel__qr{border-top:1px solid #f7f2e821;align-items:center;gap:12px;margin-top:18px;padding-top:16px;display:flex}.teacher-invite-panel__qr img{object-fit:cover;background:#fff;border-radius:10px;width:86px;height:86px}.teacher-invite-panel__qr span{color:#f7f2e87a;font-size:8px}.teacher-panel-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.teacher-panel-toolbar .teacher-manage-sheet__note{margin:0}.teacher-panel-toolbar>button{border:1px solid var(--line);background:var(--paper-light);color:var(--forest);border-radius:999px;flex:none;padding:6px 10px;font-size:8px;font-weight:700}.teacher-notification-list{border:1px solid var(--line);background:#fbf8f1b8;border-radius:18px;overflow:hidden}.teacher-notification{text-align:left;background:0 0;border:0;border-radius:0;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;padding:14px;display:grid}.teacher-notification+.teacher-notification{border-top:1px solid var(--line-soft)}.teacher-notification.is-unread{background:#e2e9e26b}.teacher-notification>span:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}.teacher-notification strong{font-family:var(--serif);font-size:13px;font-weight:600}.teacher-notification p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:8px;line-height:1.65;display:-webkit-box;overflow:hidden}.teacher-notification small{color:#a29e94;font-size:7px}.teacher-notification>svg{color:#b0a99d}.teacher-notification__dot{background:0 0;border-radius:50%;width:7px;height:7px}.teacher-notification.is-unread .teacher-notification__dot{background:var(--rose);box-shadow:0 0 0 4px #a9524517}.student-notification-summary{justify-content:space-between;align-items:center;gap:12px;display:flex}.student-notification-summary button{color:var(--forest);background:0 0;border:0;border-bottom:1px solid;flex:none;padding:0 0 1px;font-size:8px;font-weight:700}.student-notification-summary button:disabled{opacity:.5}.teacher-subscription{color:#f7f2e8;background:radial-gradient(circle at 94% 6%,#d6c09342,#0000 40%),linear-gradient(145deg,#173f34,#0e2b23);border-radius:20px;padding:19px;box-shadow:0 16px 34px #173f3426}.teacher-subscription.is-expired{background:radial-gradient(circle at 94% 6%,#f5e5df33,#0000 40%),linear-gradient(145deg,#67473d,#3b2924)}.teacher-subscription h3{font-family:var(--serif);margin:10px 0 7px;font-size:22px;font-weight:500}.teacher-subscription p{color:#f7f2e88f;margin:0;font-size:9px}.teacher-money-hero{color:#f7f2e8;background:radial-gradient(circle at 90% 10%,#d6c09347,#0000 42%),linear-gradient(145deg,#173f34,#0e2b23);border-radius:20px;padding:20px;box-shadow:0 16px 34px #173f3426}.teacher-money-hero>strong{color:#f2dfb8;font-family:var(--serif);letter-spacing:-.03em;margin:10px 0 7px;font-size:34px;font-weight:500;display:block}.teacher-money-hero p{color:#f7f2e880;margin:0;font-size:8px}.teacher-finance-warning{color:#825f2e;background:#faf0dc;border:1px solid #ead4ad;border-radius:13px;padding:10px 12px;font-size:8px;line-height:1.6}.teacher-sheet-back{color:var(--muted);background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:8px;font-weight:600;display:inline-flex}.teacher-sheet-back svg{transform:rotate(180deg)}.teacher-package-list{border:1px solid var(--line);background:#fbf8f1b8;border-radius:17px;margin-top:14px;overflow:hidden}.teacher-package-list__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 13px;display:flex}.teacher-package-list__head>span{color:var(--muted);letter-spacing:.06em;font-size:8px;font-weight:700}.teacher-package-list__head button{color:var(--forest);background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:8px;font-weight:700;display:inline-flex}.teacher-package-item{padding:13px}.teacher-package-item+.teacher-package-item{border-top:1px solid var(--line-soft)}.teacher-package-item__top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.teacher-package-item__top>div{flex-direction:column;gap:4px;min-width:0;display:flex}.teacher-package-item__top strong{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.teacher-package-item__top span{color:var(--muted);font-size:8px}.teacher-package-item__top b{color:var(--forest);font-family:var(--serif);flex:none;font-size:15px;font-weight:600}.teacher-package-item .package-progress{margin:9px 0 8px}.teacher-package-item__meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.teacher-package-item__meta>span{color:#98948a;font-size:7px}.teacher-package-item__meta>div{flex:none;gap:8px;display:flex}.teacher-package-item__meta button{color:var(--forest);background:0 0;border:0;padding:0;font-size:8px;font-weight:600}.teacher-package-item__meta button.is-danger,.teacher-sheet-actions button.is-danger{color:var(--rose)}.teacher-package-empty{color:var(--muted);text-align:center;margin:0;padding:22px 14px;font-size:8px}.teacher-package-kind{background:var(--gold-soft);color:#825f2e;border-radius:11px;padding:9px 11px;font-size:8px}.teacher-referral-card{background:var(--gold-soft);border-radius:15px;flex-direction:column;gap:4px;margin-top:12px;padding:12px 13px;display:flex}.teacher-referral-card span{color:#8a704a;font-size:8px}.teacher-referral-card strong{color:#755225;font-family:var(--serif);font-size:14px;font-weight:600}.teacher-sheet-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.teacher-sheet-actions button{border:1px solid var(--line);min-height:40px;color:var(--forest);background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:6px;font-size:9px;font-weight:600;display:flex}.teacher-sheet-actions button.is-primary{border-color:var(--forest);background:var(--forest);color:#f7f2e8}.teacher-sheet-actions button.is-danger{background:var(--rose-soft);border-color:#a952454d}.teacher-sheet-actions button:disabled{opacity:.5}.student-edit-form,.package-form{margin-top:16px}.teacher-transactions{border:1px solid var(--line);background:#fbf8f1b8;border-radius:17px;flex-direction:column;margin-top:16px;display:flex;overflow:hidden}.teacher-transaction{grid-template-columns:46px minmax(0,1fr);align-items:center;gap:11px;padding:13px;display:grid}.teacher-transaction+.teacher-transaction{border-top:1px solid var(--line-soft)}.teacher-transaction>span{width:42px;height:34px;font-family:var(--serif);border-radius:11px;place-items:center;font-size:14px;font-weight:600;display:grid}.teacher-transaction>span.is-add{background:var(--sage-soft);color:var(--forest)}.teacher-transaction>span.is-use{background:var(--rose-soft);color:var(--rose)}.teacher-transaction>div{flex-direction:column;gap:3px;min-width:0;display:flex}.teacher-transaction strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:600;overflow:hidden}.teacher-transaction small{color:var(--muted);font-size:7px;line-height:1.5}.teacher-inline-confirm{background:var(--rose-soft);border:1px solid #e2c8bf;border-radius:16px;flex-direction:column;gap:7px;margin-top:14px;padding:14px;display:flex}.teacher-inline-confirm strong{color:#753c32;font-family:var(--serif);font-size:14px;font-weight:600}.teacher-inline-confirm>span{color:#8e6259;font-size:8px;line-height:1.65}.teacher-inline-confirm>div{grid-template-columns:1fr 1fr;gap:8px;margin-top:3px;display:grid}.teacher-inline-confirm button{color:#753c32;background:#ffffff6b;border:1px solid #753c322e;border-radius:999px;min-height:36px;font-size:8px;font-weight:700}.teacher-inline-confirm button.is-danger{border-color:var(--rose);background:var(--rose);color:#fff8f5}.teacher-complete-dialog{width:min(100%,390px)}.teacher-complete-dialog .teacher-field{margin-top:16px}.teacher-complete-dialog .dialog-actions{margin-top:18px}.teacher-complete-dialog .danger-button{border-color:var(--forest);background:var(--forest)}.teacher-manage-tile__badge{border:2px solid var(--paper-light);background:var(--rose);color:#fff8f5;min-width:17px;height:17px;font-family:var(--sans);border-radius:999px;place-items:center;padding:0 4px;font-size:7px;font-weight:700;line-height:1;display:grid;position:absolute;top:6px;right:5px}.role-switcher{border:1px solid var(--line);background:#fbf8f1b8;border-radius:18px;align-items:center;gap:12px;margin-top:12px;padding:14px;display:flex}.role-switcher__copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.role-switcher__copy strong{font-family:var(--serif);font-size:15px;font-weight:600}.role-switcher__copy small{color:var(--muted);font-size:8px}.role-switcher__button{background:var(--forest);color:#f7f2e8;white-space:nowrap;border:0;border-radius:999px;flex:none;align-items:center;gap:5px;padding:9px 12px;font-size:9px;font-weight:700;transition:background .16s;display:inline-flex}.role-switcher__button:hover{background:var(--forest-light)}.logout-button{color:var(--muted);letter-spacing:.04em;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;margin:16px auto 0;padding:6px;font-size:9px;display:flex}.logout-button:hover{color:var(--rose)}.student-avatar{border-radius:50%;overflow:hidden}.student-avatar>img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.student-avatar>span{place-items:center;width:100%;height:100%;line-height:1;display:grid}.profile-card__avatar-button{background:0 0;border:0;border-radius:50%;flex:none;padding:0;transition:transform .16s,opacity .16s;display:block;position:relative}.profile-card__avatar-button:hover{transform:translateY(-1px)}.profile-card__avatar-button:disabled{opacity:.55}.profile-card__avatar-button:focus-visible{outline-offset:3px;outline:2px solid #e2cda1}.profile-card__avatar-edit{width:23px;height:23px;color:var(--forest);background:#e2cda1;border:2px solid #173f34;border-radius:50%;place-items:center;font-size:9px;font-style:normal;display:grid;position:absolute;bottom:-2px;right:-4px;box-shadow:0 4px 10px #05120e3d}.phone-card{border:1px solid var(--line);color:var(--forest);background:#fbf8f1bd;border-radius:17px;align-items:center;gap:11px;margin-top:10px;padding:13px 15px;display:flex}.phone-card>svg{color:var(--gold);flex:none}.phone-card>span{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.phone-card small{color:var(--muted);font-size:8px}.phone-card strong{letter-spacing:.02em;font-size:10px;font-weight:600}.location-card{text-align:left;width:100%}.status-pill--pending{background:var(--rose-soft);color:var(--rose)}.status-pill--booked{background:var(--sage-soft);color:var(--forest)}.status-pill--completed{background:var(--paper-deep);color:var(--muted)}.status-pill--cancelled{background:var(--rose-soft);color:var(--rose)}.booking-card__cancel-disabled{cursor:default;opacity:.52;text-decoration:none}.student-package-state{background:var(--sage-soft);color:var(--forest);border-radius:999px;flex:none;padding:4px 8px;font-size:8px;font-weight:600}.package-card--gold .student-package-state{background:var(--gold-soft);color:#8a652f}.package-card--sage .student-package-state{background:var(--paper-deep)}.package-card--expired,.package-card--exhausted{opacity:.82;border-top-color:#c9b78a}.package-card--expired .student-package-state{background:var(--rose-soft);color:var(--rose)}.package-card--exhausted .student-package-state{background:var(--paper-deep);color:var(--muted)}.student-package-note{border-top:1px solid var(--line-soft);color:var(--muted);margin:11px 0 0;padding-top:9px;font-size:8px;line-height:1.6}.student-share-card{text-align:left;width:100%}.student-share-card__icon{background:var(--gold-soft);width:38px;height:38px;color:var(--gold);border-radius:13px;flex:none;place-items:center;display:grid}.student-share-card>span:nth-child(2),.student-invite-card>span:nth-child(2){flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.student-share-card strong,.student-invite-card strong{font-family:var(--serif);font-size:14px;font-weight:600}.student-share-card small,.student-invite-card small{color:var(--muted);font-size:8px;line-height:1.65}.student-transaction-list{border:1px solid var(--line);background:#fbf8f1bd;border-radius:18px;overflow:hidden}.student-transaction{grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.student-transaction+.student-transaction{border-top:1px solid var(--line-soft)}.student-transaction__change{background:var(--rose-soft);width:32px;height:32px;color:var(--rose);font-family:var(--serif);border-radius:11px;place-items:center;font-size:12px;font-weight:600;display:grid}.student-transaction__change.is-plus{background:var(--sage-soft);color:var(--forest)}.student-transaction__copy{flex-direction:column;gap:3px;min-width:0;display:flex}.student-transaction__copy strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:600;overflow:hidden}.student-transaction__copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.student-transaction time{color:#a7a399;white-space:nowrap;font-size:7px}.student-studio-info{border:1px solid var(--line);background:#fbf8f1b3;border-radius:17px;margin-top:12px;overflow:hidden}.student-studio-info>div,.student-studio-info>a{color:var(--muted);align-items:center;gap:9px;padding:12px 14px;font-size:9px;line-height:1.55;display:flex}.student-studio-info>*+*{border-top:1px solid var(--line-soft)}.student-studio-info svg{color:var(--gold);flex:none}.student-invite-card{width:100%;color:var(--forest);text-align:left;background:radial-gradient(circle at 100% 0,#b48b4e21,#0000 42%),#f7efde;border:1px solid #d9c9a6;border-radius:18px;align-items:center;gap:12px;margin-top:14px;padding:15px;display:flex}.student-invite-card__mark{background:var(--gold-soft);width:40px;height:40px;color:var(--gold);border-radius:14px;flex:none;place-items:center;display:grid}.student-studio-list{flex-direction:column;gap:9px;margin-top:18px;display:flex}.student-studio-list>button{border:1px solid var(--line);text-align:left;background:#fbf8f1c2;border-radius:16px;grid-template-columns:40px minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:11px 12px;display:grid}.student-studio-list>button>span{background:var(--sage-soft);width:40px;height:40px;color:var(--forest);font-family:var(--serif);border-radius:13px;place-items:center;font-size:15px;display:grid}.student-studio-list>button strong{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.student-studio-list>button small{color:var(--gold);font-size:8px;font-weight:700}.student-studio-list>button svg{color:#b3a184}.student-studio-list>button.is-current{background:var(--sage-soft)}.student-studio-list>button:disabled:not(.is-current){opacity:.55}.student-loading-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:100%;padding:36px 28px;display:flex}.student-loading-screen>strong{font-family:var(--serif);font-size:18px;font-weight:600}.student-loading-screen>small{max-width:260px;color:var(--muted);font-size:9px;line-height:1.7}.student-loading-screen__mark{background:var(--gold-soft);width:60px;height:60px;color:var(--forest);font-family:var(--serif);border:1px solid #b48b4e42;border-radius:50%;place-items:center;font-size:23px;display:grid}.student-loading-screen__spinner{border:2px solid var(--line);border-top-color:var(--gold);border-radius:50%;width:28px;height:28px;animation:.72s linear infinite teacher-loading-spin}.student-loading-screen .secondary-button{margin-top:4px}@media (min-width:960px){.role-gate__paper{padding:30px}}@media (max-width:380px){.role-gate__intro h1{font-size:28px}.teacher-hero h1{font-size:26px}.teacher-stat{gap:9px;padding:12px}.teacher-stat__icon{width:32px;height:32px}.teacher-agenda__item,.teacher-booking-card{grid-template-columns:52px minmax(0,1fr);gap:11px;padding:13px}.teacher-quick-grid button{padding:11px}.teacher-manage-grid{border-radius:20px}.teacher-manage-tile{gap:12px;padding:14px 13px}.teacher-manage-tile__icon{border-radius:14px;width:44px;height:44px}.teacher-manage-tile__title{font-size:14px}.teacher-manage-tile__description{font-size:9px}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
