/* Final mobile override: a dense, technical staff workspace. */
.internal-page .yoga-workflow-legend { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px 12px; margin-left:auto; color:#4d6470; font-size:12px; font-weight:800; }
.internal-page .yoga-workflow-legend span { display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
.internal-page .yoga-workflow-legend i { display:block; width:10px; height:10px; border-radius:2px; }
.internal-page .yoga-workflow-legend__session i { background:#08a9ad; }
.internal-page .yoga-workflow-legend__inquiry i { background:#2563eb; }
.internal-page .yoga-session-card { border-left:5px solid #08a9ad; }
.internal-page .yoga-inquiry-card { border-left-color:#2563eb; background:#f8fbff; }
.internal-page .yoga-basket-button { display:inline-flex; align-items:center; gap:5px; }
.internal-page .yoga-basket-button span { font-size:.9em; line-height:1; }
.internal-page .yoga-basket-button--session { color:#075e61; border-color:#73cfd0; background:#e8f8f7; }
.internal-page .yoga-basket-button--inquiry { color:#174cba; border-color:#9bb9f6; background:#edf3ff; }
.internal-page .yoga-metrics--without-applications { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:480px; }
.internal-page .yoga-create-session-button { color:#412400; border-color:#d99500; background:#ffd35a; box-shadow:inset 0 -2px 0 rgba(104,62,0,.18); font-weight:900; }
.internal-page .yoga-create-session-button:hover { color:#2f1900; background:#ffc53d; border-color:#a96e00; }
.internal-page .yoga-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.9fr); grid-template-areas:"title metrics" "legend actions"; align-items:start; }
.internal-page .yoga-head-title { grid-area:title; }
.internal-page .yoga-head > .yoga-metrics { grid-area:metrics; width:100%; margin:0; }
.internal-page .yoga-head > .yoga-workflow-legend { grid-area:legend; justify-content:flex-start; margin:4px 0 0; }
.internal-page .yoga-head-actions { grid-area:actions; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
@media (max-width:1100px), (max-aspect-ratio:3/4) {
  .internal-page { font-size:13px; }
  .internal-page .admin-head.yoga-head { margin-bottom:7px; padding:9px 0 4px; }
  .internal-page .admin-head.yoga-head h1 { font-size:27px; letter-spacing:-.7px; }
  .internal-page .admin-head.yoga-head p { font-size:13px; }
  .internal-page .yoga-head-actions { gap:5px; }
  .internal-page .yoga-head-actions .button { min-height:36px; padding:6px 8px; font-size:12px; }
  .internal-page .yoga-head { grid-template-columns:minmax(0,1fr) minmax(170px,.82fr); }
  .internal-page .yoga-workflow-legend { gap:5px 10px; margin:0; font-size:10px; }
  .internal-page .yoga-workflow-legend i { width:8px; height:8px; }
  .internal-page :is(.yoga-metrics article,.yoga-session-card,.yoga-inquiry-card,.panel,.button,button,input,select,textarea,details.yoga-archive > summary) { border-radius:4px; box-shadow:none; }
  .internal-page .yoga-metrics { gap:4px; margin-bottom:8px; }
  .internal-page .yoga-metrics article { grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto auto; align-items:start; min-height:49px; padding:6px 7px; }
  .internal-page .yoga-metrics span::before { font-size:8px; font-weight:800; letter-spacing:-.2px; }
  .internal-page .yoga-metrics strong { grid-column:2; grid-row:1 / span 2; align-self:center; margin:0; font-size:19px; letter-spacing:-.5px; }
  .internal-page .yoga-metrics small { grid-column:1; margin:1px 0 0; font-size:7px; letter-spacing:-.1px; }
  .internal-page .yoga-inquiries { gap:6px; margin:8px 0; }
  .internal-page .yoga-inquiries h2 { font-size:24px; letter-spacing:-.6px; }
  .internal-page .yoga-inquiries > p { font-size:13px; }
  .internal-page .yoga-inquiries > p .button { min-height:34px; padding:5px 8px; font-size:12px; }
  .internal-page .yoga-session-list { gap:6px; }
  .internal-page .yoga-session-card { gap:6px; padding:10px; border-left-width:4px; }
  .internal-page .yoga-session-card h2 { font-size:19px; letter-spacing:-.4px; }
  .internal-page .yoga-session-card p { margin:2px 0; font-size:11px; line-height:1.2; }
  .internal-page .yoga-session-card .eyebrow { margin:0; font-size:9px; letter-spacing:.04em; }
  .internal-page .yoga-capacity { gap:1px; }
  .internal-page .yoga-capacity strong { font-size:19px; letter-spacing:-.4px; }
  .internal-page .yoga-capacity span { font-size:9px; line-height:1.08; }
  .internal-page .yoga-card-actions { gap:4px; }
  .internal-page .yoga-card-actions :is(.button,button),.internal-page .yoga-card-actions summary { min-height:34px; padding:5px 6px; font-size:11px; line-height:1.1; }
  .internal-page .yoga-archive > summary { min-height:34px; padding:5px 6px; font-size:11px; }
}

@media (max-width:520px) {
  .internal-page .yoga-head { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:"title title" "metrics metrics" "legend legend" "basket create"; row-gap:5px; }
  .internal-page .yoga-head > .yoga-metrics { max-width:none; }
  .internal-page .yoga-head-actions .yoga-basket-button { justify-self:stretch; min-height:36px; padding:5px 6px; font-size:10px; white-space:nowrap; }
  .internal-page .yoga-head-actions .button.primary { min-height:36px; padding:5px 4px; font-size:10px; white-space:normal; }
}

/* Tablet and phone: never trade the page title for a side-by-side dashboard. */
@media (max-width:900px) {
  .internal-page .yoga-head { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:"title title" "metrics metrics" "legend legend" "basket create"; row-gap:6px; }
  .internal-page .yoga-head-title { min-width:0; }
  .internal-page .yoga-head > .yoga-metrics { max-width:none; }
  .internal-page .yoga-head-actions { display:contents; }
  .internal-page .yoga-head-actions .yoga-basket-button { grid-area:basket; justify-self:stretch; min-height:36px; padding:5px 7px; font-size:11px; white-space:nowrap; }
  .internal-page .yoga-head-actions .button.primary { grid-area:create; justify-self:stretch; min-height:36px; padding:5px 6px; font-size:11px; letter-spacing:-.15px; line-height:1.1; text-align:center; white-space:nowrap; }
}

/* Definitive small-screen rule: do not use grid for the header itself. */
@media (max-width:900px) {
  .internal-page .admin-head.yoga-head { display:block !important; min-width:0; margin-bottom:8px; padding:8px 0 4px; }
  .internal-page .yoga-head-title { display:block; width:100%; min-width:0; }
  .internal-page .admin-head.yoga-head h1 { width:auto; min-width:0; margin:0; font-size:27px; line-height:1.02; letter-spacing:-.7px; overflow-wrap:normal; word-break:normal; }
  .internal-page .admin-head.yoga-head p { margin:2px 0 0; font-size:13px; line-height:1.1; white-space:nowrap; }
  .internal-page .yoga-head > .yoga-metrics { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; width:100%; max-width:none; margin:7px 0 6px; }
  .internal-page .yoga-head > .yoga-workflow-legend { display:flex; width:100%; margin:0 0 6px; }
  .internal-page .yoga-head-actions { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; width:100%; margin:0; }
  .internal-page .yoga-head-actions :is(.yoga-basket-button,.button.primary) { grid-area:auto !important; justify-self:stretch; width:100%; min-height:36px; padding:5px 6px; font-size:11px; line-height:1.1; letter-spacing:-.15px; text-align:center; white-space:nowrap; }
}
@media (max-width:520px) {
  .internal-page .admin-head.yoga-head h1 { font-size:26px; }
  .internal-page .yoga-head-actions :is(.yoga-basket-button,.button.primary) { min-height:34px; padding:5px 3px; font-size:10px; letter-spacing:-.25px; }
}

/* Portal redesign — a shared, touch-first workspace across every role. */
.internal-page { --portal-ink:#102a43; --portal-muted:#60758a; --portal-line:#dce6ee; --portal-canvas:#f4f7fb; --portal-primary:#1677d2; color:var(--portal-ink); background:var(--portal-canvas); font-size:16px; }
.internal-page .topbar.internal-topbar { min-height:72px; padding-inline:max(20px,calc((100vw - 1220px)/2)); background:rgba(255,255,255,.94); border-color:var(--portal-line); box-shadow:0 1px 0 rgba(16,42,67,.03); }
.internal-page .brand { color:var(--portal-ink); font-size:17px; letter-spacing:-.02em; }
.internal-page .internal-header-actions { gap:16px; }.internal-page .internal-header-actions > nav { display:flex; gap:2px; order:0; }
.internal-page .internal-header-actions > nav a { min-height:42px; padding:10px 12px; border-radius:10px; color:#36536e; font-size:14px; font-weight:800; }
.internal-page .internal-header-actions > nav a:hover,.internal-page .internal-header-actions > nav a:focus-visible { color:#0b5dad; background:#eaf4ff; }
.internal-page .knowledge-nav-button-desktop { order:1!important; min-height:42px!important; border:1px solid #cfe0ee!important; border-radius:10px!important; background:#fff!important; box-shadow:none!important; color:#36536e!important; }
.internal-page .internal-user { display:flex; align-items:center; gap:8px; color:#304b63; font-size:13px; font-weight:800; }.internal-page .internal-user i { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; color:#fff; font-style:normal; background:linear-gradient(135deg,#3d8ee6,#1968bc); }.internal-page .internal-user small { display:block; color:var(--portal-muted); font-size:11px; }
.internal-page main { width:min(1120px,calc(100% - 40px)); padding:clamp(22px,4vw,44px) 0 72px; }
.internal-page .admin-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin:0 0 24px; padding:0; }.internal-page .admin-head h1 { margin:0; color:var(--portal-ink); font-size:clamp(30px,4vw,46px); line-height:1.04; letter-spacing:-.045em; }.internal-page .admin-head p { margin:8px 0 0; color:var(--portal-muted); font-size:clamp(14px,1.6vw,17px); line-height:1.4; }
.internal-page :is(.panel,.booking,.yoga-session-card,.yoga-inquiry-card,.user-card,.summary-card,.station-shift-panel) { border:1px solid var(--portal-line); border-radius:16px; box-shadow:0 8px 24px rgba(27,62,90,.06); }
.internal-page :is(button,.button,summary) { min-height:46px; border-radius:10px; font-size:15px; font-weight:800; }.internal-page :is(input,select,textarea) { min-height:46px; border-color:#cbd9e5; border-radius:10px; font-size:16px; }.internal-page .button.primary,.internal-page button.primary { border-color:var(--portal-primary); background:var(--portal-primary); box-shadow:0 8px 18px rgba(22,119,210,.2); }

/* SUP: the decision is visible before the detail. */
.internal-page .station-shift-panel { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 0 20px; padding:20px 22px; background:#fff; }.internal-page .station-shift-panel.closed { border-left:5px solid #dd6558; }.internal-page .station-shift-panel.open { border-left:5px solid #158565; }.internal-page .station-shift-info h2 { margin:0; font-size:21px; }.internal-page .station-shift-info p { margin:5px 0 0; color:var(--portal-muted); }.internal-page .station-shift-main-action { min-width:166px; }
.internal-page .status-page-head { margin:28px 0 16px; }.internal-page .status-page-title-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }.internal-page .status-page-title-row h2,.internal-page .status-page-head h2 { margin:0; font-size:clamp(23px,3vw,31px); letter-spacing:-.035em; }.internal-page .status-page-guidance { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0 0; }.internal-page .status-page-guidance span { padding:7px 10px; border-radius:999px; background:#eaf4ff; color:#36536e; font-size:13px; font-weight:800; }.internal-page .telegram-check-card { display:none; }
.internal-page .manager-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:16px 0 20px; }.internal-page .manager-summary .summary-card--compact { display:flex; align-items:center; justify-content:center; min-height:56px!important; padding:10px!important; background:#fff; }.internal-page .manager-summary .summary-card--compact .summary-label { font-size:14px!important; font-weight:850; }.internal-page .manager-summary .summary-card.active { border-color:var(--portal-primary); background:#eaf4ff; box-shadow:inset 0 0 0 1px var(--portal-primary); }
.internal-page .list { display:grid; gap:14px; }.internal-page .manager-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(220px,.38fr); gap:20px; padding:20px; background:#fff; }.internal-page .manager-card-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }.internal-page .status-pill { display:inline-flex; align-items:center; min-height:28px; padding:5px 9px; border-radius:999px; font-size:12px; font-weight:900; }.internal-page .booking-created { margin:8px 0 0; color:var(--portal-muted); font-size:12px; }.internal-page .booking-next-step { display:flex; gap:8px; align-items:center; margin:14px 0 0; padding:10px 12px; color:#76520e; background:#fff8e8; border-radius:10px; font-weight:800; }.internal-page .booking-next-step svg { width:19px; height:19px; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:2; }.internal-page .booking-next-step small { display:block; color:#94702c; font-size:11px; }
.internal-page .client-line { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 14px; margin:16px 0 0; }.internal-page .client-line > strong { font-size:20px; }.internal-page .client-line a { color:#0b5dad; font-weight:800; }.internal-page .booking-contact-price { margin-left:auto; color:var(--portal-muted); font-size:12px; text-align:right; }.internal-page .booking-contact-price strong { display:block; color:var(--portal-ink); font-size:16px; }.internal-page .booking-details { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:16px 0 0; }.internal-page .booking-details div { padding:10px; background:#f5f8fb; border-radius:10px; }.internal-page .booking-details dt { color:var(--portal-muted); font-size:11px; }.internal-page .booking-details dd { margin:3px 0 0; color:var(--portal-ink); font-size:14px; font-weight:850; }.internal-page .manager-actions { display:grid; align-content:start; gap:8px; }.internal-page .booking-decision-row { display:grid; gap:8px; }.internal-page .booking-decision-row form,.internal-page .manager-actions form { width:100%; }.internal-page .booking-decision-row button,.internal-page .manager-actions .button,.internal-page .manager-actions summary { width:100%; justify-content:center; }.internal-page .booking-history { margin-top:18px; padding-top:14px; border-top:1px solid var(--portal-line); }.internal-page .booking-history h3 { margin:0 0 10px; font-size:14px; }.internal-page .comment-form { display:grid; gap:8px; margin-top:12px; }

/* Yoga and people pages inherit the same rhythm. */
.internal-page .yoga-head { display:grid!important; grid-template-columns:minmax(0,1fr) minmax(300px,.72fr); grid-template-areas:"title actions" "metrics metrics"; gap:18px; margin-bottom:22px; }.internal-page .yoga-head-title { grid-area:title; }.internal-page .yoga-head-actions { grid-area:actions; display:flex; justify-content:flex-end; flex-wrap:wrap; gap:8px; }.internal-page .yoga-head > .yoga-metrics { grid-area:metrics; display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:10px; max-width:none; margin:0; }.internal-page .yoga-metrics article { min-height:110px; padding:16px; background:#fff; border:1px solid var(--portal-line); border-radius:16px; box-shadow:0 8px 24px rgba(27,62,90,.05); }.internal-page .yoga-metrics span { color:var(--portal-muted); font-size:14px; }.internal-page .yoga-metrics strong { display:block; margin-top:12px; color:var(--portal-ink); font-size:30px; }.internal-page .yoga-session-list,.internal-page .user-list,.internal-page .yoga-inquiries { display:grid; gap:14px; }.internal-page .yoga-session-card,.internal-page .yoga-inquiry-card,.internal-page .user-card { padding:20px; background:#fff; border-left:5px solid var(--portal-primary); }.internal-page .yoga-session-card { grid-template-columns:minmax(0,1.1fr) minmax(150px,.42fr) minmax(250px,.7fr); align-items:center; gap:18px; }.internal-page .yoga-session-card h2,.internal-page .user-card h2 { font-size:22px; line-height:1.1; }.internal-page .yoga-card-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }.internal-page .yoga-inquiry-card { grid-template-columns:1fr!important; gap:12px; }.internal-page .user-card { grid-template-columns:minmax(0,1fr) auto; }.internal-page .internal-logout { margin-top:28px; padding:0; }

@media (max-width:860px) { .internal-page .internal-user span { display:none; }.internal-page .manager-card,.internal-page .yoga-session-card { grid-template-columns:1fr; }.internal-page .manager-actions,.internal-page .yoga-card-actions { justify-content:stretch; }.internal-page .manager-actions :is(button,.button,summary),.internal-page .yoga-card-actions :is(button,.button) { flex:1 1 160px; }.internal-page .booking-details { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) { .internal-page { padding-bottom:72px; }.internal-page .topbar.internal-topbar { display:block; min-height:62px; padding:13px 16px 0; }.internal-page .brand { display:block; padding-bottom:11px; font-size:16px; }.internal-page .internal-header-actions { display:block; }.internal-page .internal-header-actions > nav,.internal-page .knowledge-nav-button-desktop,.internal-page .internal-user { display:none!important; }.internal-page .internal-mobile-nav { position:fixed!important; bottom:0; left:0; right:0; z-index:40; display:grid!important; grid-auto-flow:column; grid-auto-columns:1fr; gap:2px; min-height:64px; padding:7px 8px max(7px,env(safe-area-inset-bottom)); overflow-x:auto; background:rgba(255,255,255,.96); border-top:1px solid var(--portal-line); box-shadow:0 -8px 22px rgba(27,62,90,.08); }.internal-page .internal-mobile-nav a { display:grid; place-items:center; min-width:64px; min-height:44px; padding:6px 8px; color:#486177; font-size:12px; font-weight:850; line-height:1.05; text-align:center; text-decoration:none; border-radius:9px; }.internal-page .internal-mobile-nav a:hover,.internal-page .internal-mobile-nav a:focus-visible { color:#0b5dad; background:#eaf4ff; }.internal-page main { width:min(100% - 28px,1120px); padding:22px 0 92px; }.internal-page .admin-head { display:block!important; margin-bottom:18px; }.internal-page .admin-head h1 { font-size:clamp(30px,9vw,38px)!important; }.internal-page .station-shift-panel { align-items:stretch; flex-direction:column; padding:16px; }.internal-page .station-shift-main-action { width:100%; }.internal-page .manager-summary,.internal-page .yoga-head > .yoga-metrics { grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:6px; }.internal-page .manager-summary .summary-card--compact { min-height:58px!important; }.internal-page .manager-summary .summary-card--compact .summary-label { font-size:clamp(10px,3vw,13px)!important; text-align:center; }.internal-page .manager-card,.internal-page .yoga-session-card,.internal-page .yoga-inquiry-card,.internal-page .user-card { gap:14px; padding:16px; border-left-width:4px; }.internal-page .client-line { display:grid; gap:5px; }.internal-page .booking-contact-price { margin:3px 0 0; text-align:left; }.internal-page .booking-decision-row,.internal-page .manager-actions { display:grid; grid-template-columns:1fr; }.internal-page .manager-actions :is(button,.button,summary),.internal-page .yoga-card-actions :is(button,.button) { width:100%; min-height:48px; }.internal-page .comment-form button { width:100%; }.internal-page .yoga-head { display:flex!important; flex-direction:column; gap:14px; }.internal-page .yoga-head-actions { display:grid!important; grid-template-columns:1fr 1fr; width:100%; }.internal-page .yoga-head-actions :is(.button,button) { width:100%; min-height:48px!important; font-size:14px!important; }.internal-page .yoga-metrics article { min-height:82px; padding:10px; }.internal-page .yoga-metrics span { font-size:0; }.internal-page .yoga-metrics span::before { font-size:11px; }.internal-page .yoga-metrics strong { margin-top:7px; font-size:24px; }.internal-page .yoga-card-actions { display:grid; grid-template-columns:1fr; }.internal-page .yoga-inquiry-status-actions { grid-template-columns:1fr 1fr!important; }.internal-page .user-card { grid-template-columns:1fr; } }
@media (max-width:390px) { .internal-page main { width:min(100% - 24px,1120px); }.internal-page .booking-details { gap:6px; }.internal-page .booking-details div { padding:9px; }.internal-page .yoga-head-actions { grid-template-columns:1fr; } }

/* Responsive guardrails: nothing is cut off; every action has a touch-safe width. */
.internal-page :is(main,section,article,form,div,dl,dt,dd) { min-width:0; }
.internal-page :is(.manager-card,.yoga-session-card,.yoga-inquiry-card,.user-card) { max-width:100%; overflow:visible; }
.internal-page :is(.manager-card,.yoga-session-card,.yoga-inquiry-card,.user-card) :is(p,span,strong,a,small,dd,summary,button) { overflow-wrap:anywhere; word-break:normal; white-space:normal; }
.internal-page :is(button,.button,summary) { min-width:0; max-width:100%; text-align:center; overflow-wrap:anywhere; }
.internal-page .manager-card { position:relative; border:2px solid #c9d9e6; border-left:6px solid var(--portal-primary); border-radius:18px; box-shadow:0 10px 28px rgba(27,62,90,.09); }
.internal-page .manager-card.pending { border-left-color:#e5a42e; }.internal-page .manager-card.confirmed { border-left-color:#168365; }.internal-page .manager-card.cancelled { border-left-color:#bd5d56; }
.internal-page .manager-card::before { content:"Заявка"; position:absolute; top:-11px; left:16px; padding:3px 8px; color:#456178; background:var(--portal-canvas); border:1px solid #c9d9e6; border-radius:999px; font-size:10px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.internal-page .manager-card-head { padding-top:4px; }
.internal-page .manager-actions > :is(form,details,.button),.internal-page .yoga-card-actions > :is(form,.button,button),.internal-page .yoga-head-actions > :is(form,.button,button) { min-width:0; flex:1 1 160px; }
.internal-page .manager-actions :is(button,.button,summary),.internal-page .yoga-card-actions :is(button,.button),.internal-page .yoga-head-actions :is(button,.button) { width:100%; }
@media (max-width:760px) {
  .internal-page .manager-card { border-left-width:5px; }
  .internal-page .booking-details { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .internal-page .booking-details dd { font-size:clamp(12px,3.4vw,14px); }
  .internal-page .manager-actions > :is(form,details,.button),.internal-page .yoga-card-actions > :is(form,.button,button),.internal-page .yoga-head-actions > :is(form,.button,button) { width:100%; flex-basis:100%; }
}
@media (max-width:340px) { .internal-page .booking-details { grid-template-columns:1fr; }.internal-page .manager-summary,.internal-page .yoga-head > .yoga-metrics { grid-template-columns:1fr!important; } }

/* Compact dashboard row: title at left, the two live counters at right. */
@media (max-width:900px) {
  .internal-page .admin-head.yoga-head {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(150px,.92fr);
    grid-template-areas:"title metrics" "legend legend" "actions actions";
    column-gap:8px;
    row-gap:6px;
    align-items:start;
  }
  .internal-page .yoga-head-title { grid-area:title; }
  .internal-page .yoga-head > .yoga-metrics { grid-area:metrics; margin:0; }
  .internal-page .yoga-head > .yoga-workflow-legend { grid-area:legend; margin:0; }
  .internal-page .yoga-head-actions { grid-area:actions; }
}
@media (max-width:520px) {
  .internal-page .admin-head.yoga-head { grid-template-columns:minmax(0,1fr) minmax(148px,.92fr); column-gap:6px; row-gap:5px; }
  .internal-page .admin-head.yoga-head h1 { font-size:25px; line-height:1.04; }
  .internal-page .admin-head.yoga-head p { font-size:11px; }
  .internal-page .yoga-metrics { gap:4px; }
  .internal-page .yoga-metrics article { min-height:48px; padding:5px 6px; }
  .internal-page .yoga-metrics span::before { font-size:8px; }
  .internal-page .yoga-metrics strong { font-size:18px; }
  .internal-page .yoga-metrics small { font-size:7px; }
}

/*
 * Phone fallback: keep this header in normal document flow.
 * Grid placement of the two action links is unreliable when an embedded
 * browser applies its own compact styles, and can collapse the title column.
 */
@media (max-width:900px) {
  .internal-page .admin-head.yoga-head {
    display:block !important;
    min-width:0;
    margin-bottom:8px;
    padding:8px 0 4px;
  }
  .internal-page .yoga-head-title {
    display:block;
    width:100%;
    min-width:0;
  }
  .internal-page .admin-head.yoga-head h1 {
    width:auto;
    min-width:0;
    margin:0;
    font-size:27px;
    line-height:1.02;
    letter-spacing:-.7px;
    overflow-wrap:normal;
    word-break:normal;
  }
  .internal-page .admin-head.yoga-head p {
    margin:2px 0 0;
    font-size:13px;
    line-height:1.1;
    white-space:nowrap;
  }
  .internal-page .yoga-head > .yoga-metrics {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    width:100%;
    max-width:none;
    margin:7px 0 6px;
  }
  .internal-page .yoga-head > .yoga-workflow-legend {
    display:flex;
    width:100%;
    margin:0 0 6px;
  }
  .internal-page .yoga-head-actions {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    width:100%;
    margin:0;
  }
  .internal-page .yoga-head-actions :is(.yoga-basket-button,.button.primary) {
    grid-area:auto !important;
    justify-self:stretch;
    width:100%;
    min-height:36px;
    padding:5px 6px;
    font-size:11px;
    line-height:1.1;
    letter-spacing:-.15px;
    text-align:center;
    white-space:nowrap;
  }
}

@media (max-width:520px) {
  .internal-page .admin-head.yoga-head h1 { font-size:26px; }
  .internal-page .yoga-head-actions :is(.yoga-basket-button,.button.primary) {
    min-height:34px;
    padding:5px 3px;
    font-size:10px;
    letter-spacing:-.25px;
  }
}

@media (max-width:760px) {
  .internal-page .yoga-head { grid-template-columns:minmax(0,1fr) minmax(190px,.82fr); grid-template-areas:"title metrics" "legend create" "basket ."; row-gap:5px; }
  .internal-page .yoga-head-actions { display:contents; }
  .internal-page .yoga-head-actions .yoga-basket-button { grid-area:basket; justify-self:start; min-height:32px; padding:5px 7px; font-size:11px; }
  .internal-page .yoga-head-actions .button.primary { grid-area:create; justify-self:stretch; min-height:36px; padding:5px 6px; font-size:11px; letter-spacing:-.15px; line-height:1.1; text-align:center; white-space:nowrap; }
}

/* Must follow the 760px rule: a phone needs the title on its own row. */
@media (max-width:520px) {
  .internal-page .yoga-head { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:"title title" "metrics metrics" "legend legend" "basket create"; row-gap:5px; }
  .internal-page .yoga-head > .yoga-metrics { max-width:none; }
  .internal-page .yoga-head-actions .yoga-basket-button { justify-self:stretch; min-height:36px; padding:5px 6px; font-size:10px; white-space:nowrap; }
  .internal-page .yoga-head-actions .button.primary { min-height:36px; padding:5px 4px; font-size:10px; white-space:normal; }
}

/* Final mobile header: title and metrics intentionally share the top row. */
@media (max-width:900px) {
  .internal-page .admin-head.yoga-head { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(150px,.92fr); grid-template-areas:"title metrics" "legend legend" "actions actions"; column-gap:8px; row-gap:6px; align-items:start; min-width:0; margin-bottom:8px; padding:8px 0 4px; }
  .internal-page .yoga-head-title { display:block; grid-area:title; width:100%; min-width:0; }
  .internal-page .admin-head.yoga-head h1 { width:auto; min-width:0; margin:0; font-size:27px; line-height:1.02; letter-spacing:-.7px; overflow-wrap:normal; word-break:normal; }
  .internal-page .admin-head.yoga-head p { margin:2px 0 0; font-size:13px; line-height:1.1; white-space:nowrap; }
  .internal-page .yoga-head > .yoga-metrics { display:grid !important; grid-area:metrics; grid-template-columns:repeat(2,minmax(0,1fr)) !important; width:100%; max-width:none; margin:0; }
  .internal-page .yoga-head > .yoga-workflow-legend { display:flex; grid-area:legend; width:100%; margin:0; }
  .internal-page .yoga-head-actions { display:grid !important; grid-area:actions; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; width:100%; margin:0; }
  .internal-page .yoga-head-actions :is(.yoga-basket-button,.button.primary) { grid-area:auto !important; justify-self:stretch; width:100%; min-height:36px; padding:5px 6px; font-size:11px; line-height:1.1; letter-spacing:-.15px; text-align:center; white-space:nowrap; }
}
@media (max-width:520px) {
  .internal-page .admin-head.yoga-head { grid-template-columns:minmax(0,1fr) minmax(148px,.92fr); column-gap:6px; row-gap:5px; }
  .internal-page .admin-head.yoga-head h1 { font-size:25px; line-height:1.04; }
  .internal-page .admin-head.yoga-head p { font-size:11px; }
  .internal-page .yoga-metrics { gap:4px; }
  .internal-page .yoga-metrics article { min-height:48px; padding:5px 6px; }
  .internal-page .yoga-metrics span::before { font-size:8px; }
  .internal-page .yoga-metrics strong { font-size:18px; }
  .internal-page .yoga-metrics small { font-size:7px; }
  .internal-page .yoga-head-actions :is(.yoga-basket-button,.button.primary) { min-height:34px; padding:5px 3px; font-size:10px; letter-spacing:-.25px; }
}

/* Final phone and tablet override. This must remain last: it wins over legacy desktop rules. */
@media (max-width:1100px), (max-aspect-ratio:3/4) {
  html,body.internal-page { width:100%; max-width:100%; overflow-x:hidden; }
  .internal-page .topbar.internal-topbar { display:block!important; width:100%; min-width:0; min-height:62px; padding:13px 16px 0!important; backdrop-filter:none!important; }
  .internal-page .topbar.internal-topbar .brand { display:block; min-width:0; padding-bottom:11px; white-space:normal; }
  .internal-page .internal-header-actions,.internal-page .internal-header-actions > nav,.internal-page .knowledge-nav-button-desktop,.internal-page .internal-user { display:none!important; }
  .internal-page main { width:calc(100% - 28px)!important; max-width:1120px; min-width:0; margin-inline:auto; padding-bottom:52px; }
  .internal-page .internal-mobile-nav { position:static!important; inset:auto; display:grid!important; grid-auto-flow:column; grid-auto-columns:minmax(0,1fr); width:calc(100% + 32px); margin:0 -16px; min-width:0; overflow:hidden; border-top:1px solid var(--portal-line); box-shadow:none; }
  .internal-page .internal-mobile-nav a { min-width:0; padding-inline:4px; overflow-wrap:anywhere; }
  .internal-page .manager-card,.internal-page .station-shift-panel,.internal-page .status-page-head,.internal-page .manager-summary,.internal-page .list { width:100%; min-width:0; max-width:100%; }
  .internal-page .manager-card { grid-template-columns:minmax(0,1fr)!important; }
  .internal-page .manager-card :is(.client-line,.booking-details,.manager-actions,.booking-decision-row) { min-width:0; max-width:100%; }
  .internal-page .client-line { display:grid!important; grid-template-columns:minmax(0,1fr)!important; width:100%; }
  .internal-page .booking-contact-price { width:100%; max-width:100%; text-align:left; }
  .internal-page .booking-details { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  .internal-page .manager-actions :is(form,details,.button),.internal-page .manager-actions :is(button,.button,summary) { width:100%; min-width:0; max-width:100%; }
}
@media (max-width:340px) { .internal-page main { width:calc(100% - 24px)!important; }.internal-page .booking-details { grid-template-columns:1fr!important; } }
