.mg-page{padding:24px 28px 48px;max-width:1480px;margin:0 auto;color:var(--text,#1c1917)}
.mg-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}
.mg-kicker{font-size:11px;letter-spacing:.14em;font-weight:800;color:#7c3aed}
.mg-head h1{margin:4px 0 6px;font-size:28px;letter-spacing:-.03em}
.mg-head p{margin:0;max-width:640px;color:var(--muted,#64748b);font-size:14px;line-height:1.45}
.mg-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.mg-btn{border:1px solid var(--border,#e7e5e4);background:var(--surface,#fff);color:inherit;border-radius:10px;padding:10px 14px;font-weight:650;cursor:pointer}
.mg-btn.primary{background:#7c3aed;border-color:#7c3aed;color:#fff}
.mg-btn:disabled{opacity:.55;cursor:default}
.mg-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.mg-stat{padding:14px 16px;border:1px solid var(--border,#e7e5e4);border-radius:14px;background:var(--surface,#fff)}
.mg-stat span{display:block;font-size:12px;color:var(--muted,#64748b)}
.mg-stat strong{display:block;margin-top:4px;font-size:22px}
.mg-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px;align-items:start}
.mg-card{border:1px solid var(--border,#e7e5e4);border-radius:16px;background:var(--surface,#fff);padding:14px}
.mg-cal-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.mg-cal-nav strong{font-size:15px}
.mg-cal-nav button{width:32px;height:32px;border-radius:8px;border:1px solid var(--border,#e7e5e4);background:var(--surface,#fff);color:inherit;cursor:pointer}
.mg-week,.mg-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.mg-week span{text-align:center;font-size:10px;font-weight:750;letter-spacing:.04em;color:var(--muted,#64748b);padding:4px 0}
.mg-day{min-height:52px;border:1px solid transparent;border-radius:10px;background:transparent;color:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:13px}
.mg-day.pad{visibility:hidden;pointer-events:none}
.mg-day.today{box-shadow:inset 0 0 0 1px #7c3aed}
.mg-day.selected{background:#7c3aed;color:#fff}
.mg-day .dot{width:6px;height:6px;border-radius:99px;background:#7c3aed}
.mg-day .dot.busy{background:#d97706}
.mg-day.selected .dot,.mg-day.selected .dot.busy{background:#fff}
.mg-side-list{margin-top:14px;display:flex;flex-direction:column;gap:8px;max-height:360px;overflow:auto}
.mg-side-list h3{margin:0;font-size:13px}
.mg-person{text-align:left;border:1px solid var(--border,#e7e5e4);background:var(--surface-2,#fafaf9);color:inherit;border-radius:12px;padding:10px;cursor:pointer}
.mg-person b,.mg-person small{display:block}
.mg-person small{margin-top:3px;color:var(--muted,#64748b)}
.mg-person.busy{border-color:#d97706}
.mg-empty{font-size:13px;color:var(--muted,#64748b);padding:8px 2px}
.mg-table-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:12px}
.mg-table-head h2{margin:0 0 4px;font-size:18px}
.mg-table-head p{margin:0;font-size:13px;color:var(--muted,#64748b)}
.mg-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.mg-tools input,.mg-tools select,.mg-field input,.mg-field select,.mg-field textarea{box-sizing:border-box;width:100%;border:1px solid var(--border,#e7e5e4);background:var(--surface,#fff);color:inherit;border-radius:10px;padding:10px 12px}
.mg-tools input{min-width:180px}
.mg-tools select{width:auto}
.mg-table-wrap{overflow:auto}
.mg-table{width:100%;border-collapse:collapse;min-width:760px}
.mg-table th,.mg-table td{padding:12px 10px;border-bottom:1px solid var(--border,#e7e5e4);text-align:left;font-size:13px;vertical-align:middle}
.mg-table th{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted,#64748b)}
.mg-table td small{display:block;color:var(--muted,#64748b);margin-top:2px}
.mg-table select{width:100%;min-width:140px;padding:6px 8px;border-radius:8px;border:1px solid var(--border,#e7e5e4);background:var(--surface,#fff);color:inherit}
.mg-pill{display:inline-flex;padding:3px 8px;border-radius:99px;font-size:11px;font-weight:750;background:#f5f3ff;color:#6d28d9}
.mg-pill.arrived,.mg-pill.walking{background:#ecfdf5;color:#047857}
.mg-pill.completed{background:#f1f5f9;color:#334155}
.mg-pill.cancelled{background:#fef2f2;color:#b91c1c}
.mg-pill.busy{background:#fff7ed;color:#c2410c}
.mg-row-actions{display:flex;gap:4px;flex-wrap:wrap}
.mg-row-actions button{border:1px solid var(--border,#e7e5e4);background:var(--surface,#fff);color:inherit;border-radius:8px;padding:6px 8px;font-size:12px;cursor:pointer}
.mg-icon-actions{flex-wrap:nowrap;align-items:center;gap:6px}
.mg-row-actions .mg-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0}
.mg-icon-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mg-icon-btn.danger{color:#b91c1c}
.mg-banner{margin-bottom:10px;padding:10px 12px;border-radius:12px;background:#fff7ed;color:#9a3412;font-size:13px}
.mg-toast{margin-top:8px;font-size:13px;color:#047857}
.mg-modal{position:fixed;top:0;right:0;bottom:0;left:var(--sidebar-width,236px);z-index:2400;background:rgba(15,23,42,.45);display:flex;align-items:center;justify-content:center;padding:32px;overflow:auto}
.mg-dialog{width:min(760px,100%);max-height:calc(100vh - 64px);overflow:auto;margin:auto;background:var(--surface,#fff);color:inherit;border-radius:18px;padding:14px 16px;border:1px solid var(--border,#e7e5e4)}
.mg-note-modal{z-index:2600}
.mg-note-dialog{width:min(340px,100%);max-height:min(42vh,340px);padding:12px}
.mg-region{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700}
.mg-region select{min-width:190px;border:1px solid var(--border,#e7e5e4);background:var(--surface,#fff);color:inherit;border-radius:10px;padding:8px 10px}
.mg-clock{grid-column:1 / -1;margin:0;font-size:12px;color:#6d28d9}
.mg-all-clocks{grid-column:1 / -1;font-size:12px;line-height:1.55;color:var(--muted,#64748b)}
.mg-price-card{margin-bottom:16px}
.mg-country-row{display:flex;flex-wrap:wrap;gap:10px 16px;margin:0 0 12px}
.mg-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mg-price-tier{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border,#e7e5e4);border-radius:12px;padding:10px}
.mg-price-tier input,.mg-price-tier textarea{border:1px solid var(--border,#e7e5e4);background:var(--surface,#fff);color:inherit;border-radius:10px;padding:8px 10px;font:inherit}
.mg-price-tier textarea{min-height:140px;resize:vertical}
.mg-price-tier label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700}
.mg-rec{flex-direction:row !important;align-items:center;font-weight:700}
.mg-view-dialog{width:min(720px,100%)}
.mg-view-people{display:flex;gap:12px;flex-wrap:wrap;margin:4px 0 14px}
.mg-view-people .mg-who{flex:1;min-width:220px;padding:12px;border:1px solid var(--border,#e7e5e4);border-radius:14px;background:var(--surface-2,#fafaf9)}
.mg-who{display:flex;align-items:center;gap:10px;min-width:150px}
.mg-who b{font-size:14px;line-height:1.25}
.mg-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:0 0 40px;display:grid;place-items:center;background:#f5f3ff;color:#6d28d9;font-size:13px;font-weight:800;border:1px solid var(--border,#e7e5e4)}
.mg-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin:12px 0}
.mg-facts dt{font-size:11px;font-weight:700;color:var(--muted,#64748b)}
.mg-facts dd{margin:2px 0 0}
.mg-note-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.mg-note-slot{min-width:0}
.mg-note-open{width:100%;min-height:72px;text-align:left;border:1px solid var(--border,#e7e5e4);background:var(--surface-2,#fafaf9);color:inherit;border-radius:10px;padding:8px 10px;cursor:pointer;font-size:12px;line-height:1.35}
.mg-note-open b{display:block;margin-bottom:4px;font-size:12px}
.mg-note-dialog textarea{width:100%;min-height:140px;max-height:180px;box-sizing:border-box}
.mg-dialog h2{margin:0 0 4px}
.mg-dialog .lead{margin:0 0 12px;color:var(--muted,#64748b);font-size:13px}
.mg-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mg-field{display:flex;flex-direction:column;gap:4px;min-width:0}
.mg-field.wide{grid-column:1 / -1}
.mg-field label{font-size:11px;font-weight:700}
.mg-field textarea{min-height:72px;resize:vertical}
.mg-form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px}
.mg-hits{border:1px solid var(--border,#e7e5e4);border-radius:10px;max-height:160px;overflow:auto}
.mg-hits button{width:100%;text-align:left;border:0;border-bottom:1px solid var(--border,#e7e5e4);background:transparent;color:inherit;padding:8px 10px;cursor:pointer}
.mg-hits button small{display:block;color:var(--muted,#64748b)}
.mg-filled{display:block;min-height:16px;margin-top:6px;font-size:12px;color:#047857}
.mg-photo-preview,.mg-thumb{object-fit:cover;border-radius:10px;border:1px solid var(--border,#e7e5e4)}
.mg-photo-preview{width:72px;height:72px;margin-top:6px}
.mg-thumb{width:36px;height:36px;display:block;margin-bottom:4px}
[data-theme="dark"] .mg-page,
body.dark .mg-page,
.dark .mg-page{color:#f4f4f5}
[data-theme="dark"] .mg-stat,
[data-theme="dark"] .mg-card,
[data-theme="dark"] .mg-dialog,
[data-theme="dark"] .mg-btn,
[data-theme="dark"] .mg-cal-nav button,
[data-theme="dark"] .mg-person,
[data-theme="dark"] .mg-tools input,
[data-theme="dark"] .mg-tools select,
[data-theme="dark"] .mg-field input,
[data-theme="dark"] .mg-field select,
[data-theme="dark"] .mg-field textarea,
[data-theme="dark"] .mg-note-open,
[data-theme="dark"] .mg-row-actions button,
body.dark .mg-stat,
body.dark .mg-card,
body.dark .mg-dialog,
body.dark .mg-btn,
body.dark .mg-cal-nav button,
body.dark .mg-person,
body.dark .mg-tools input,
body.dark .mg-tools select,
body.dark .mg-field input,
body.dark .mg-field select,
body.dark .mg-field textarea,
body.dark .mg-note-open,
body.dark .mg-row-actions button,
.dark .mg-stat,
.dark .mg-card,
.dark .mg-dialog,
.dark .mg-btn,
.dark .mg-cal-nav button,
.dark .mg-person,
.dark .mg-tools input,
.dark .mg-tools select,
.dark .mg-field input,
.dark .mg-field select,
.dark .mg-field textarea,
.dark .mg-note-open,
.dark .mg-row-actions button{background:#17171c;border-color:#3a3a44;color:#f4f4f5}
[data-theme="dark"] .mg-region select,
body.dark .mg-region select,
.dark .mg-region select{background:#17171c;border-color:#3a3a44;color:#f4f4f5}
[data-theme="dark"] .mg-clock,
body.dark .mg-clock,
.dark .mg-clock{color:#c4b5fd}
[data-theme="dark"] .mg-btn.primary,
body.dark .mg-btn.primary,
.dark .mg-btn.primary{background:#7c3aed;border-color:#7c3aed;color:#fff}
[data-theme="dark"] .mg-head p,
[data-theme="dark"] .mg-stat span,
[data-theme="dark"] .mg-person small,
[data-theme="dark"] .mg-table-head p,
[data-theme="dark"] .mg-table th,
[data-theme="dark"] .mg-table td small,
[data-theme="dark"] .mg-empty,
[data-theme="dark"] .mg-dialog .lead,
body.dark .mg-head p,
.dark .mg-head p{color:#a1a1aa}
[data-theme="dark"] .mg-table th,
[data-theme="dark"] .mg-table td,
body.dark .mg-table th,
body.dark .mg-table td,
.dark .mg-table th,
.dark .mg-table td{border-color:#3a3a44}
[data-theme="dark"] .mg-day.selected,
body.dark .mg-day.selected,
.dark .mg-day.selected{background:#7c3aed;color:#fff}
[data-theme="dark"] .mg-banner,
body.dark .mg-banner,
.dark .mg-banner{background:#3b2414;color:#fdba74}
[data-theme="dark"] .mg-pill,
body.dark .mg-pill,
.dark .mg-pill{background:#2e1065;color:#ddd6fe}
[data-theme="dark"] .mg-pill.busy,
body.dark .mg-pill.busy,
.dark .mg-pill.busy{background:#431407;color:#fdba74}
[data-theme="dark"] .mg-modal,
body.dark .mg-modal,
.dark .mg-modal{background:rgba(0,0,0,.62)}
@media(max-width:980px){
  .mg-layout,.mg-stats,.mg-price-grid,.mg-split{grid-template-columns:1fr}
  .mg-form-col + .mg-form-col{border-left:0;padding-left:0;border-top:1px solid var(--border,#e7e5e4);padding-top:12px}
  .mg-head{flex-direction:column}
  .mg-page{padding:16px}
}
@media(max-width:900px){
  .mg-note-row{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .mg-modal{left:0;justify-content:center;padding:20px}
  .mg-form,.mg-form-col,.mg-note-row{grid-template-columns:1fr}
  .mg-field.wide,.mg-form-actions{grid-column:auto}
}
.mg-today{margin-bottom:16px}
.mg-today-wrap{overflow:auto}
.mg-today-table{display:flex;flex-direction:column;min-width:720px;width:100%;border:1px solid var(--border,#e7e5e4);border-radius:12px;overflow:hidden}
.mg-today-tr{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border,#e7e5e4);background:var(--bg-secondary,var(--surface-2,#fafaf9));color:var(--text-primary,var(--text,#1c1917))}
.mg-today-tr:last-child{border-bottom:0}
.mg-today-th{background:var(--surface-2,#f8fafc);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted,#64748b)}
.mg-today-tr > span{flex:1;min-width:80px;font-size:13px}
.mg-today-tr > span small{display:block;margin-top:2px;color:var(--muted,#64748b)}
.mg-today-tr > span.act{flex:1.5;min-width:210px}
.mg-today-tr .mg-row-actions{margin-top:0}
[data-theme="dark"] .mg-today-table,
body.dark .mg-today-table,
.dark .mg-today-table{border-color:#3a3a44}
[data-theme="dark"] .mg-today-tr,
body.dark .mg-today-tr,
.dark .mg-today-tr{background:#111118;border-color:#3a3a44;color:#f4f4f5}
[data-theme="dark"] .mg-today-th,
body.dark .mg-today-th,
.dark .mg-today-th{background:#1a1a22;color:#a1a1aa}
[data-theme="dark"] .mg-today-tr > span small,
body.dark .mg-today-tr > span small,
.dark .mg-today-tr > span small{color:#a1a1aa}
[data-theme="dark"] .mg-today-tr .mg-row-actions button,
body.dark .mg-today-tr .mg-row-actions button,
.dark .mg-today-tr .mg-row-actions button{background:#1f1f27;border-color:#4a4a56;color:#f4f4f5}
[data-theme="dark"] .mg-today-tr .mg-row-actions button:disabled,
body.dark .mg-today-tr .mg-row-actions button:disabled,
.dark .mg-today-tr .mg-row-actions button:disabled{opacity:.5;color:#a1a1aa}
.mg-form-error{grid-column:1 / -1;color:#b91c1c;font-size:13px;font-weight:700;margin:0}
.mg-form-error:empty{display:none}
.mg-field[hidden]{display:none !important}
.mg-arrival-box{grid-column:1 / -1;border:1px solid var(--border,#e7e5e4);border-radius:14px;padding:12px}
.mg-arrival-box > label{font-weight:800}
.mg-arrival-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.mg-arrival-pair .mg-field{min-width:0}
.mg-price-card.is-closed .mg-table-head{margin-bottom:0}
.mg-price-lead{margin:0 0 12px;font-size:13px;color:var(--muted,#64748b);line-height:1.45}
.mg-price-actions{margin-bottom:12px}
#mgPackagesBody[hidden]{display:none !important}
.mg-weekday{display:block;margin-top:4px;font-size:12px;font-weight:800;color:#9a3412}
.mg-weekday:empty{display:none}
[data-theme="dark"] .mg-view-people .mg-who,
body.dark .mg-view-people .mg-who,
.dark .mg-view-people .mg-who{background:#17171c;border-color:#3a3a44;color:#f4f4f5}
[data-theme="dark"] .mg-avatar,
body.dark .mg-avatar,
.dark .mg-avatar{background:#2e1065;color:#ddd6fe;border-color:#4c1d95}
.mg-sign{margin:0 0 14px;padding:16px;border:2px dashed #7c3aed;border-radius:16px;text-align:center;background:#faf5ff}
.mg-sign small{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#6d28d9;font-weight:800}
.mg-sign strong{display:block;margin-top:6px;font-size:26px;letter-spacing:.03em;line-height:1.15}
[data-theme="dark"] .mg-sign,
body.dark .mg-sign,
.dark .mg-sign{background:#2e1065;border-color:#7c3aed;color:#f4f4f5}
[data-theme="dark"] .mg-sign small,
body.dark .mg-sign small,
.dark .mg-sign small{color:#ddd6fe}
[data-theme="dark"] .mg-sign strong,
body.dark .mg-sign strong,
.dark .mg-sign strong{color:#fff}
[data-theme="dark"] .mg-who b,
body.dark .mg-who b,
.dark .mg-who b{color:#f4f4f5}
.mg-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
.mg-form-col{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start;min-width:0}
.mg-form-col + .mg-form-col{border-left:1px solid var(--border,#e7e5e4);padding-left:12px}
.mg-col-title{grid-column:1 / -1;margin:0 0 2px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#7c3aed}
.mg-form-col .mg-note-row{grid-template-columns:1fr 1fr}
.mg-split .mg-form-actions{grid-column:1 / -1}
