:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#243247;background:#f5f7fa;font-synthesis:none;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bcaaff;outline-offset:2px}h1,h2,h3,p{margin-top:0}h1{font-size:32px;letter-spacing:-1.1px;font-weight:650;margin-bottom:10px}h2{font-size:18px;letter-spacing:-.3px}small{font-size:12px}button{display:inline-flex;align-items:center;justify-content:center;gap:8px}input,select{width:100%;border:1px solid #dbe0e8;border-radius:8px;padding:11px 12px;background:#fff;color:#243247;min-width:0}label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:550;margin-bottom:18px}label input,label select{font-weight:400}.primary{background:#7253d6;color:#fff;border:1px solid #7253d6;border-radius:8px;padding:11px 16px;font-weight:600;box-shadow:0 3px 6px #7253d617}.primary:hover{background:#6042bc}.secondary{background:#fff;border:1px solid #dbe0e8;border-radius:8px;padding:11px 14px;color:#526075}.icon-button{background:transparent;border:0;color:inherit;padding:6px;border-radius:6px}.text-button{border:0;background:transparent;color:#6c4bcc;font-size:12px;padding:7px 5px;font-weight:600}.danger{color:#b54c5c}.muted{color:#7b8797;line-height:1.6}.small{font-size:12px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;color:#8a94a6;display:block;margin-bottom:12px}.pill{display:inline-flex;align-items:center;gap:6px;font-size:10px;letter-spacing:1px;font-weight:650;border-radius:5px;background:#f0ecfb;color:#7658bf;padding:6px 8px}.error{background:#fff0f0;color:#a32a3a;border:1px solid #f5cbd1;border-radius:8px;padding:13px 16px;margin-bottom:18px;line-height:1.5}.notice{display:flex;align-items:center;gap:9px;background:#edf8f3;color:#2e7c5a;border:1px solid #cceada;padding:9px 14px;border-radius:8px;margin-bottom:18px}.notice button{margin-left:auto}.boot{padding:100px;text-align:center}.connection-error{position:fixed;bottom:15px;left:15px;background:#fff0f0;padding:12px;border-radius:8px}.shell{display:flex;min-height:100vh}.sidebar{width:248px;flex-shrink:0;background:#192333;color:#abb6c9;padding:28px 18px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:27px;color:#fff;letter-spacing:-1px}.logo{background:#8265e1;color:#fff;border-radius:10px;width:36px;height:36px;display:grid;place-items:center}.brand-tag{font-size:9px;letter-spacing:1.2px;color:#b8c0cf;border:1px solid #4a5364;padding:3px 5px;border-radius:4px;margin-top:5px}.workspace{border:1px solid #354051;border-radius:9px;display:flex;gap:10px;align-items:center;padding:12px;margin:34px 0 28px}.workspace-icon{width:30px;height:30px;border-radius:7px;display:grid;place-items:center;background:#344250;color:#d0dcde}.workspace strong{font-size:12px;color:#e3e7ef;display:block;max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace small{display:block;margin-top:5px;font-size:10px;color:#8290a6}.nav-label{font-size:9px;letter-spacing:1.4px;color:#6e7e95;margin:0 10px 14px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav button{justify-content:flex-start;width:100%;border:0;background:transparent;color:#9eacc0;padding:11px 12px;border-radius:7px;font-size:12px;font-weight:500;gap:12px}.sidebar nav button.active{background:#8061d52a;color:#c7b7ff}.sidebar nav button.active svg:last-child{margin-left:auto}.sidebar nav button:hover{background:#ffffff09}.sidebar-bottom{margin-top:auto;padding:28px 10px 0;display:flex;align-items:center;gap:10px;font-size:11px;color:#a7b4c5}.sidebar-bottom small{display:block;font-size:9px;color:#718299;margin-top:5px}.main{margin-left:248px;flex:1;min-width:0}.topbar{height:82px;border-bottom:1px solid #e6e9ef;background:#fff;padding:0 36px;display:flex;align-items:center;justify-content:space-between}.breadcrumb{display:flex;align-items:center;gap:12px;color:#a0a9b7;font-size:12px}.breadcrumb strong{color:#576275;font-weight:500}.account{display:flex;gap:11px;align-items:center}.account strong{font-size:11px;display:block}.account small{font-size:10px;display:block;color:#939eac;margin-top:4px}.avatar{width:33px;height:33px;border-radius:50%;background:#eee8fb;color:#7959c7;display:grid;place-items:center;font-size:12px;font-weight:650}.content{padding:34px 36px 18px;max-width:1700px;margin:auto}.page-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.page-title p{font-size:13px;color:#8792a3;margin:0}.actions{display:flex;gap:10px;flex-shrink:0}.page-footer{display:flex;justify-content:space-between;color:#9da6b4;font-size:10px;margin-top:30px;padding-top:20px;border-top:1px solid #e4e8ef}.hero{border-radius:13px;background:#ebe5fa;display:flex;justify-content:space-between;padding:30px 34px;overflow:hidden;margin-bottom:23px;position:relative}.hero h2{font-size:27px;color:#443268;margin:15px 0 10px;letter-spacing:-.8px}.hero p{font-size:13px;color:#86749f;line-height:1.7;margin-bottom:18px}.hero .pill{background:#fff9;color:#8060b9;font-size:9px}.hero button{border:0;background:transparent;padding:0;color:#63439b;font-weight:600;font-size:12px}.hero-art{width:230px;display:grid;place-items:center;position:relative;color:#9572ce;background:radial-gradient(ellipse,#ccb7eb66,transparent 65%)}.hero-art:before,.hero-art:after{content:"";position:absolute;width:155px;height:155px;border:1px solid #bca7db55;transform:rotate(30deg);border-radius:28px}.hero-art:after{transform:rotate(55deg);width:190px;height:190px}.hero-dot{width:9px;height:9px;background:#ab90d8;border-radius:50%;position:absolute}.hero-dot.a{left:10px;top:45px}.hero-dot.b{right:10px;bottom:30px;width:6px;height:6px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px}.metric{background:#fff;border:1px solid #e6eaf0;border-radius:10px;padding:20px}.metric>div{display:flex;align-items:center;justify-content:space-between;gap:5px;color:#808ba0;font-size:11px}.metric svg{color:#9277c8}.metric strong{display:block;font-size:27px;font-weight:650;letter-spacing:-1px;margin:18px 0 10px}.metric small{font-size:10px;color:#9aa3b2}.dashboard-bottom{display:grid;grid-template-columns:1.2fr 1fr;gap:23px}.card{background:#fff;border:1px solid #e5e9f0;border-radius:11px;padding:23px}.card h2{font-size:15px;margin:0}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:23px}.card-heading .pill{font-size:8px;background:#f5f6f9;color:#8b96a5}.stat-line{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid #f0f2f6;font-size:12px;color:#8490a0}.stat-line strong{color:#344359;font-size:14px;font-weight:600}.footnote{font-size:11px;color:#98a2b2;line-height:1.7;margin:17px 0 0}.quick h2{margin-bottom:15px}.quick button{display:flex;justify-content:space-between;width:100%;text-align:left;padding:19px 0;border:0;border-bottom:1px solid #eef0f5;background:transparent;color:#8b73bd}.quick strong{display:block;font-weight:550;font-size:12px;color:#45536a}.quick small{display:block;font-size:10px;color:#9aa3b1;margin-top:6px}.data-card{padding:0;overflow:hidden}.data-card>.card-heading{padding:22px 24px;margin:0}.count{background:#f0ecfa;color:#9476ca;border-radius:5px;padding:3px 7px;font-size:10px;margin-left:6px}.search{flex-direction:row;align-items:center;border:1px solid #e2e7ef;border-radius:7px;margin:0;padding-left:10px;color:#9ba6b5;max-width:260px}.search input{border:0;font-size:12px;background:transparent}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{background:#fafbfc;color:#8a95a6;font-size:10px;font-weight:600;padding:13px 20px;border-block:1px solid #edf0f4;white-space:nowrap}td{padding:17px 20px;border-bottom:1px solid #f0f2f6;color:#647288;vertical-align:middle}td strong{font-weight:550;color:#37475d}td small{display:block;font-size:10px;color:#9ca6b4;margin-top:5px}.badge{display:inline-block;padding:5px 8px;font-size:10px;border-radius:5px;background:#f0f1f5;color:#8a94a5;white-space:nowrap}.badge.green{background:#edf7f2;color:#4f9b78}.badge.amber{background:#fff6e7;color:#ba923c}.empty{text-align:center;padding:65px 20px;color:#a4afbf;border-top:1px solid #edf0f5}.empty svg{color:#b9a4e3;margin-bottom:15px}.empty h3{color:#64748b;font-weight:500}.empty p{font-size:12px}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;padding:18px;font-size:12px}.pagination button{background:#fff;border:1px solid #e1e5ee;padding:7px 10px;border-radius:5px;color:#778598}.subsection{border-top:1px solid #eee;padding-top:28px!important}dialog{width:min(610px,calc(100vw - 30px));border:1px solid #e3e6ee;border-radius:14px;padding:28px;color:#334155;box-shadow:0 30px 100px #15203833;max-height:90vh}dialog::backdrop{background:#18243d77;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}dialog header{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}dialog h2{margin:0;font-size:22px}dialog .eyebrow{margin-bottom:7px}dialog footer{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #edf0f5;padding-top:20px;margin-top:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid label:first-child:last-child{grid-column:1/-1}.cart-line{display:flex;gap:8px;margin:12px 0}.cart-line input{width:80px}.sale-total{display:flex;justify-content:space-between;border-top:1px solid #e7ebf2;margin-top:18px;padding-top:20px}.sale-total strong{font-size:22px}.receipt dt{font-size:11px;color:#8c98aa;margin-top:20px}.receipt dd{margin:6px 0 0;overflow-wrap:anywhere}.receipt-amount{font-size:30px;font-weight:650}.receipt>.primary{margin-top:22px}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-story{padding:48px 12%;background:#192333;color:#ced7e6;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.login-story>.brand{margin-bottom:70px}.login-story h1{color:#fff;font-size:42px;line-height:1.2;margin-top:20px}.login-story p{line-height:1.8;color:#99a9c1;max-width:330px}.login-story>small{font-size:10px;color:#71849e;margin-top:30px}.login-panel{display:grid;place-items:center;padding:40px;background:#fff}.login-panel form{width:100%;max-width:350px}.login-panel h2{font-size:29px;margin:24px 0 12px}.login-panel p{color:#96a0b0;margin-bottom:32px}.login-panel small{display:block;line-height:1.7;color:#9ba5b5;font-size:11px;margin-top:24px}.wide{width:100%;margin-top:8px}.orbit{position:relative;width:300px;height:240px;max-width:100%;margin-top:25px}.orbit-center{position:absolute;inset:40px 60px;display:grid;place-items:center;border:1px solid #56607e;border-radius:50%;color:#b4a0ed}.orbit-card{position:absolute;display:flex;align-items:center;gap:9px;padding:13px;background:#2b374d;border:1px solid #46506c;border-radius:9px;box-shadow:0 10px 20px #0002;font-size:11px}.one{left:0;top:20px}.two{right:0;top:90px}.three{left:15px;bottom:20px}@media(min-width:1600px){.hero{padding:40px}.metrics .metric{padding:28px}}@media(max-width:1150px){.sidebar{width:215px}.main{margin-left:215px}.content{padding:25px 22px}.topbar{padding:0 22px}.metrics{grid-template-columns:repeat(2,1fr)}.page-title{align-items:flex-start}.page-title h1{font-size:27px}.dashboard-bottom{grid-template-columns:1fr}.actions{flex-direction:column}.account strong{max-width:150px;overflow:hidden;text-overflow:ellipsis}.login-story{padding:40px 9%}.login-story h1{font-size:35px}}@media(max-width:760px){.shell{display:block}.sidebar{position:static;width:100%;padding:18px}.sidebar .brand{font-size:23px}.workspace,.sidebar-bottom,.nav-label{display:none}.sidebar nav{flex-direction:row;overflow:auto;margin-top:18px;gap:6px}.sidebar nav button{width:auto;white-space:nowrap;padding:9px}.sidebar nav button svg{display:none}.main{margin-left:0}.topbar{height:65px;padding:0 18px}.breadcrumb{font-size:10px}.account strong{max-width:110px;font-size:10px}.account small{font-size:9px}.content{padding:24px 16px}.page-title{flex-direction:column;gap:18px}.actions{flex-direction:row}.hero{padding:24px}.hero h2{font-size:23px}.hero-art{display:none}.metrics{gap:10px}.metric{padding:16px}.metric strong{font-size:24px}.metric>div{font-size:10px}.metric svg{display:none}.card-heading{flex-wrap:wrap}.form-grid{grid-template-columns:1fr}.login{display:block}.login-story{display:none}.login-panel{min-height:100vh;padding:28px}.page-footer{font-size:9px}.account .avatar{display:none}}.settings-grid{display:grid;gap:22px}.settings-intro{background:#eee8fa;border:1px solid #e0d5f2;border-radius:11px;padding:22px;color:#60478d}.settings-intro strong{font-size:17px}.settings-intro p{line-height:1.7;font-size:13px;margin:9px 0 0;max-width:850px}.settings-title{display:flex;align-items:center;gap:12px;color:#7b5ac2}.settings-title h2{color:#344359}.settings-card>.card-heading{margin-bottom:12px}.settings-card table td:first-child{width:28%}.attendance-policy{border:1px solid #e0d9ee;border-radius:10px;margin:24px 0 15px;padding:18px}.attendance-policy legend{color:#7151aa;font-weight:600;padding:0 8px}.weekday-options{display:flex;gap:9px;flex-wrap:wrap}.weekday-options label{display:flex;flex-direction:row;align-items:center;background:#f6f3fc;border:1px solid #e4dced;border-radius:7px;padding:9px;margin:0;font-size:12px}.weekday-options input{width:auto;accent-color:#7857cd}.sidebar nav button{line-height:1.4}.sidebar nav button svg{flex-shrink:0}@media(max-width:760px){.settings-card{padding:16px}.settings-card .card-heading{align-items:flex-start}.settings-card td,.settings-card th{padding:12px}.settings-title h2{font-size:14px}.settings-card>.card-heading>.primary{font-size:11px;padding:9px}.settings-intro{padding:18px}}.settings-grid{grid-template-columns:minmax(0,1fr);min-width:0}.settings-card,.breadcrumb{min-width:0}.breadcrumb strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account{flex-shrink:0}@media print{body{background:#fff}.sidebar,.main,.no-print{display:none!important}dialog.receipt{display:block;position:static;max-height:none;box-shadow:none;border:0;width:100%;margin:0}dialog::backdrop{background:#fff}}.workspace-icon img{width:100%;height:100%;object-fit:contain}.branding-fields{border:0;padding:0;display:grid;gap:16px;min-width:0}.branding-fields input{max-width:100%}.branding-preview{display:flex;gap:20px;align-items:center}.branding-preview img{width:96px;height:96px;object-fit:contain}.receipt-logo{width:64px;height:64px;object-fit:contain}textarea{width:100%;border:1px solid #dce2eb;border-radius:8px;padding:12px;font:inherit;resize:vertical;box-sizing:border-box}.check-label{display:flex;align-items:center;gap:10px}.check-label input{width:auto}.student-shell{min-height:100vh;background:#f4f6fa}.student-header{background:#fff;border-bottom:1px solid #e2e7ef;padding:20px max(20px,calc((100vw - 1060px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}.student-brand{display:flex;align-items:center;gap:12px;min-width:0}.student-brand img{width:48px;height:48px;object-fit:contain}.student-brand small{display:block;color:#78859a;margin-top:4px}.student-main{max-width:1060px;margin:auto;padding:36px 20px}.student-plan{margin-bottom:24px}.student-plan h3{display:flex;align-items:center;gap:8px}.student-content{background:#f7f5fc;border-radius:12px;padding:18px;margin:20px 0}.student-content p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.student-agenda{padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.student-agenda li{padding:12px;border:1px solid #e4e7ef;border-radius:8px}.student-agenda span{display:block;color:#78859a;font-size:12px;margin-top:5px}.student-move{border-top:1px solid #e4e7ef;margin-top:24px;padding-top:8px}.student-move fieldset{padding:0;border:0;display:grid;gap:14px;min-width:0}.student-plan details{margin-top:16px}.student-plan summary{cursor:pointer;color:#7554be}.student-plan p{line-height:1.6}.student-brand strong{overflow-wrap:anywhere}@media(max-width:600px){.student-header{align-items:flex-start;flex-wrap:wrap}.student-main{padding:24px 14px}.student-plan{padding:18px}.student-plan .card-heading{flex-wrap:wrap;gap:10px}.student-shell input,.student-shell select{min-width:0;max-width:100%}}.cancellation-reason{white-space:normal;overflow-wrap:anywhere;max-width:320px}.operating-form{margin-top:28px;border-top:1px solid #e1e5ed;padding-top:20px}.operating-days{display:grid;gap:12px}.operating-day{display:grid;grid-template-columns:140px 1fr 1fr;gap:14px;align-items:center;padding:12px;border:1px solid #e1e5ed;border-radius:8px}.operating-day label{margin:0;min-width:0}.operating-day input{min-width:0}@media(max-width:650px){.operating-day{grid-template-columns:1fr}.operating-day input{max-width:100%}}
