.appointment-side{min-width:0}.appointment-side-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.appointment-side-heading h2{margin:5px 0 16px}.appointment-side-heading .primary{padding:9px 12px}.appointment-day-list{gap:10px;max-height:580px;display:grid;overflow:auto}.appointment-card{border:1px solid #ececf3;border-left:4px solid var(--purple);background:#fff;border-radius:10px;padding:12px}.appointment-card.cancelled{opacity:.62;border-left-color:#a4a8b2}.appointment-card.completed{background:#f6fffb;border-left-color:#2b9a70}.appointment-card.no_show{background:#fff8f9;border-left-color:#d05a6e}.appointment-card.expiry{background:#fffaf4;border-left-color:#f4a351}.appointment-card>div:first-child{gap:5px;display:grid}.appointment-card span{color:#777d8a;align-items:center;gap:5px;font-size:10px;display:flex}.appointment-card span svg{width:13px;height:13px}.appointment-card b{font-size:12px}.appointment-card small{color:#9297a4;font-size:9px}.appointment-card-actions{gap:6px;margin-top:10px;display:flex}.appointment-card-actions button{background:#fff;border:1px solid #e2e3ea;border-radius:7px;align-items:center;gap:3px;padding:6px 8px;font-size:9px;display:flex}.appointment-card-actions svg{width:12px;height:12px}.appointment-card-actions button:disabled{cursor:wait;opacity:.55}.appointment-attendance-actions{flex-wrap:wrap}.appointment-attendance-result{color:#28795d;background:#eaf8f2;border-radius:7px;margin:9px 0 0;padding:8px 9px;font-size:9px;font-weight:800}.appointment-card.attendance-late .appointment-attendance-result{color:#9a651e;background:#fff4df}.appointment-card.attendance-no_show .appointment-attendance-result{color:#b04458;background:#fdebef}.appointment-cancellation-result{color:#6e737f;background:#f1f2f5;border-radius:7px;margin:9px 0 0;padding:8px 9px;font-size:9px;font-weight:800}.calendar-event.appointment-confirmed{color:#3c2cab;background:#eeeaff}.calendar-event.appointment-completed{color:#26775b;background:#e6f7f0}.calendar-event.appointment-no_show{color:#a73b51;background:#fde8ed}.calendar-event.appointment-cancelled{color:#777;background:#eee;text-decoration:line-through}.calendar-event.expiry-event{color:#8a4d17;background:#fff1e3}.appointment-modal-backdrop{z-index:80;background:#18192185;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.appointment-modal{width:min(620px,100%);max-height:calc(100vh - 40px);padding:24px;overflow:auto}.appointment-modal form{gap:14px;display:grid}.appointment-modal textarea{min-height:76px}.appointment-reason-modal{width:min(480px,100%)}.appointment-reason-modal .member-action-heading>div{min-width:0}.appointment-reason-modal .member-action-heading p{color:#858a96;margin:5px 0 0;font-size:10px}.appointment-reason-note{color:#858a96;margin:0;font-size:9px;line-height:1.6}.appointment-reason-actions{justify-content:flex-end;gap:8px;display:flex}@media (max-width:1100px){.appointment-calendar .calendar-side{display:block}}@media (max-width:760px){.appointment-calendar{display:block}.appointment-calendar .month-calendar{margin-bottom:12px}.appointment-calendar .calendar-side{padding:16px}.appointment-modal{padding:18px}.appointment-modal .field-row{grid-template-columns:1fr}}
.billing-page{gap:18px;display:grid}.billing-hero{color:#fff;background:linear-gradient(135deg,#5f45dc,#8065ee);border-radius:18px;justify-content:space-between;align-items:center;gap:20px;padding:28px 30px;display:flex;box-shadow:0 14px 35px #553dc833}.billing-hero>div:first-child span{align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.billing-hero h2{margin:8px 0 4px;font-size:25px}.billing-hero p{opacity:.8;margin:0;font-size:10px}.billing-hero>div:last-child{justify-items:end;gap:3px;display:grid}.billing-hero strong{font-size:25px}.billing-hero small,.billing-hero>div:last-child span{opacity:.8;font-size:9px}.billing-usage{background:#ece9f5;grid-template-columns:repeat(3,1fr);gap:1px;padding:0;display:grid;overflow:hidden}.billing-usage article{background:#fff;grid-template-columns:1fr auto;gap:3px 12px;padding:17px 20px;display:grid}.billing-usage span{color:#777281;font-size:9px;font-weight:800}.billing-usage b{color:#44348b;grid-area:1/2/3;align-self:center;font-size:17px}.billing-usage small{color:#9994a1;font-size:8px}.billing-usage article.over-limit{background:#fff9f3}.billing-usage article.over-limit b,.billing-usage article.over-limit small{color:#a64b19}.billing-limit-alert{background:#fff8f1;border-color:#f0c9ad;align-items:flex-start;gap:13px;padding:17px 20px;display:flex}.billing-limit-alert>svg{color:#b75b25;flex:none}.billing-limit-alert b{color:#7d3512;font-size:11px}.billing-limit-alert p{color:#785b4b;margin:5px 0 0;font-size:9px;line-height:1.6}.billing-plan-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.billing-plan{gap:14px;padding:24px;display:grid;position:relative}.billing-plan.active{border:2px solid var(--purple)}.billing-current{color:var(--purple);background:#eeeaff;border-radius:20px;align-items:center;gap:3px;padding:5px 8px;font-size:8px;font-weight:800;display:flex;position:absolute;top:14px;right:14px}.billing-current svg{width:11px;height:11px}.billing-plan h3{margin:0;font-size:17px}.billing-plan>strong{font-size:23px}.billing-plan>strong small{color:#9297a4;font-size:9px}.billing-plan ul{gap:9px;min-height:135px;margin:0;padding:0;list-style:none;display:grid}.billing-plan li{color:#666b78;align-items:center;gap:7px;font-size:9px;display:flex}.billing-plan li svg{color:#37a27f;width:13px;height:13px}.billing-plan button{justify-content:center;width:100%}.billing-notice{background:#fbfaff;align-items:flex-start;gap:13px;padding:18px 21px;display:flex}.billing-notice>svg{color:var(--purple)}.billing-notice b{font-size:11px}.billing-notice p{color:#7e7a87;margin:5px 0 0;font-size:9px;line-height:1.6}.billing-history{overflow:hidden}.billing-history>article{border-top:1px solid #eee;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;padding:13px 21px;display:grid}.billing-history>article>span{width:32px;height:32px;color:var(--purple);background:#f1eeff;border-radius:9px;place-items:center;display:grid}.billing-history>article svg{width:16px}.billing-history b,.billing-history small{display:block}.billing-history b{font-size:10px}.billing-history small{color:#9297a4;margin-top:3px;font-size:8px}.billing-history em{color:#5d45d6;font-size:9px;font-style:normal;font-weight:800}.billing-cancel{color:#8c8993;background:0 0;border:0;justify-self:end;font-size:9px;text-decoration:underline}@media (max-width:950px){.billing-plan-grid{grid-template-columns:1fr}.billing-plan ul{min-height:0}}@media (max-width:760px){.billing-usage{grid-template-columns:1fr}.billing-hero{flex-direction:column;align-items:flex-start;padding:23px 20px}.billing-hero>div:last-child{justify-items:start}.billing-plan{padding:20px}}
.message-wallet{grid-column:1/-1;overflow:hidden}.message-wallet-summary{grid-template-columns:42px 1fr auto;align-items:center;gap:13px;padding:20px 22px;display:grid}.message-wallet-summary>span{color:#fff;background:linear-gradient(135deg,#644bdd,#8a6ff0);border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.message-wallet-summary small,.message-wallet-summary strong,.message-wallet-summary p{display:block}.message-wallet-summary small{color:#8f929c;font-size:9px}.message-wallet-summary strong{margin-top:3px;font-size:21px}.message-wallet-summary p{color:#777b86;margin:3px 0 0;font-size:8px}.message-wallet-warning{color:#9b5b14;background:#fff4e5;padding:10px 22px;font-size:9px;font-weight:700}.message-recharge-form{background:#faf9fd;border-top:1px solid #eee;grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:10px;padding:16px 22px;display:grid}.message-recharge-form label,.message-recharge-form>div{color:#625d6c;gap:5px;font-size:9px;font-weight:800;display:grid}.message-recharge-form input,.message-recharge-form select,.message-recharge-form>div{background:#fff;border:1px solid #dfdce7;border-radius:9px;min-height:37px;padding:9px 10px}.message-wallet-notice{color:#5e49c9;background:#f5f2ff;margin:0;padding:10px 22px;font-size:9px}.message-wallet-history{border-top:1px solid #eee;grid-template-columns:1fr 1fr;display:grid}.message-wallet-history>div{padding:17px 22px}.message-wallet-history>div+div{border-left:1px solid #eee}.message-wallet-history h3{margin:0 0 10px;font-size:11px}.message-wallet-history article{border-top:1px solid #f1f1f4;grid-template-columns:auto 1fr;align-items:center;gap:9px;padding:8px 0;display:grid}.message-wallet-history article>span{color:#d45a66;min-width:55px;font-size:9px;font-weight:800}.message-wallet-history article>span.positive{color:#269578}.message-wallet-history article>svg{width:16px;color:var(--purple)}.message-wallet-history b,.message-wallet-history small{display:block}.message-wallet-history b{font-size:9px}.message-wallet-history small,.message-wallet-history p{color:#9296a1;margin-top:3px;font-size:8px}.message-wallet-policy{color:#747783;background:#fafafa;align-items:center;gap:6px;margin:0;padding:10px 22px;font-size:8px;display:flex}.message-wallet-policy svg{width:14px}@media (max-width:760px){.message-wallet-summary{grid-template-columns:38px 1fr}.message-wallet-summary button{grid-column:1/-1;justify-content:center;width:100%}.message-recharge-form,.message-wallet-history{grid-template-columns:1fr}.message-wallet-history>div+div{border-top:1px solid #eee;border-left:0}}
.service-admin-page{gap:18px;display:grid}.admin-hero{color:#fff;background:linear-gradient(135deg,#202634,#4d3eb7);border-radius:18px;justify-content:space-between;align-items:center;gap:20px;padding:27px 30px;display:flex}.admin-hero b{letter-spacing:.12em;opacity:.7;font-size:8px}.admin-hero h2{margin:7px 0 4px;font-size:24px}.admin-hero p{opacity:.75;margin:0;font-size:9px}.admin-hero button{background:#fff}.admin-summary{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.admin-summary article{align-items:center;gap:11px;padding:17px;display:flex}.admin-summary span{width:35px;height:35px;color:var(--purple);background:#f0edff;border-radius:10px;place-items:center;display:grid}.admin-summary svg{width:17px}.admin-summary small,.admin-summary strong{display:block}.admin-summary small{color:#8e93a0;font-size:8px}.admin-summary strong{margin-top:3px;font-size:19px}.admin-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.admin-list{overflow:hidden}.admin-row{border-top:1px solid #eee;justify-content:space-between;align-items:center;gap:12px;padding:13px 20px;display:flex}.admin-row b,.admin-row small{display:block}.admin-row b{font-size:10px}.admin-row small,.admin-row time{color:#9196a2;margin-top:3px;font-size:8px}.admin-actions{gap:6px;display:flex}.admin-actions button{background:#fff;border:1px solid #e1e3e9;border-radius:8px;align-items:center;gap:3px;padding:7px 9px;font-size:8px;font-weight:700;display:flex}.admin-actions button.primary{color:#fff;background:var(--purple)}.admin-actions svg{width:11px;height:11px}.admin-empty{text-align:center;color:#979ba6;padding:30px;font-size:9px}.admin-table{overflow:hidden}.admin-table-scroll{overflow:auto}.admin-table table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{text-align:left;white-space:nowrap;border-top:1px solid #eee;padding:12px 20px;font-size:9px}.admin-table th{color:#8c919d;background:#fafafd}.admin-loading{color:#777;justify-content:center;align-items:center;gap:8px;min-height:260px;font-size:10px;display:flex}.admin-loading svg{width:18px;animation:1s linear infinite spin}@media (max-width:1050px){.admin-summary{grid-template-columns:repeat(3,1fr)}.admin-grid{grid-template-columns:1fr}}@media (max-width:760px){.admin-hero{flex-direction:column;align-items:flex-start;padding:22px 20px}.admin-summary{grid-template-columns:1fr 1fr}.admin-row{flex-direction:column;align-items:flex-start}.admin-actions{width:100%}.admin-actions button{flex:1;justify-content:center}}.admin-rate-grid{background:#fafafd;border-top:1px solid #eee;grid-template-columns:1fr 1fr;gap:12px;padding:16px 20px;display:grid}.admin-rate-grid label{color:#626776;gap:7px;font-size:9px;font-weight:800;display:grid}.admin-rate-grid label>div{gap:7px;display:flex}.admin-rate-grid input{background:#fff;border:1px solid #dedfe7;border-radius:8px;flex:1;min-width:0;padding:9px 10px}.admin-rate-grid button{color:#fff;background:var(--purple);white-space:nowrap;border:0;border-radius:8px;padding:9px 12px;font-size:8px;font-weight:800}@media (max-width:760px){.admin-rate-grid{grid-template-columns:1fr}.admin-rate-grid label>div{flex-wrap:wrap}.admin-rate-grid button{flex:1}}.admin-auth-readiness{overflow:hidden}.admin-auth-readiness.attention{border-color:#efc9ac}.admin-auth-readiness.configured{border-color:#b9ddcc}.admin-auth-grid{background:#eceaf2;border-top:1px solid #eee;grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.admin-auth-grid article{background:#fff;gap:6px;padding:15px 18px;display:grid}.admin-auth-grid span{color:#858a96;font-size:8px}.admin-auth-grid b{align-items:center;gap:5px;font-size:9px;display:flex}.admin-auth-grid b.safe{color:#237257}.admin-auth-grid b.unsafe{color:#a64b19}.admin-auth-grid svg{width:13px;height:13px}.admin-auth-callout,.admin-auth-error{background:#fff8f1;border-top:1px solid #eee;align-items:flex-start;gap:10px;padding:14px 19px;display:flex}.admin-auth-readiness.configured .admin-auth-callout{background:#f1faf6}.admin-auth-callout>svg,.admin-auth-error>svg{color:#b75b25;flex:none;width:17px}.admin-auth-readiness.configured .admin-auth-callout>svg{color:#267252}.admin-auth-callout p,.admin-auth-error p{color:#735c4f;margin:0;font-size:9px;line-height:1.6}.admin-auth-callout b,.admin-auth-error b{color:#71330f;margin-right:7px}.admin-auth-readiness.configured .admin-auth-callout p{color:#49665a}.admin-auth-readiness.configured .admin-auth-callout b{color:#1d624b}.admin-auth-error b{margin:0 0 3px;display:block}.admin-auth-error p{margin:0}@media (max-width:760px){.admin-auth-grid{grid-template-columns:1fr 1fr}}@media (max-width:480px){.admin-auth-grid{grid-template-columns:1fr}}
