/* ═══════════════════════════════════════════
   MenuNova Admin — Page-specific overrides
   Base tokens come from /shared/css/admin.css
   ═══════════════════════════════════════════ */

/* ── Loader ── */
.app-loader{
    position:fixed;inset:0;z-index:10000;
    background:var(--c-bg);
    display:grid;place-items:center;
    transition:opacity .35s var(--ease);
}
.app-loader.hidden{opacity:0;pointer-events:none}
.loader-card{
    text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--sp-4);
}
.spinner{
    width:36px;height:36px;border:3px solid var(--c-border);
    border-top-color:var(--c-brand);border-radius:50%;
    animation:spin .7s linear infinite;
}
.loader-text{font-size:13px;color:var(--c-text-soft);font-weight:500}

/* ── Not Found ── */
.not-found{
    position:fixed;inset:0;z-index:9998;background:var(--c-bg);
    display:grid;place-items:center;
}
.not-found__card{text-align:center;max-width:380px;padding:var(--sp-8)}
.not-found__icon{font-size:56px;display:block;margin-bottom:var(--sp-4)}
.not-found__title{font-size:22px;font-weight:800;margin-bottom:var(--sp-2)}
.not-found__sub{font-size:13px;color:var(--c-text-soft);line-height:1.7;margin-bottom:var(--sp-6)}
.not-found__btn{
    display:inline-block;padding:12px 28px;background:var(--c-brand);color:#fff;
    border-radius:var(--r-md);text-decoration:none;font-weight:700;font-size:14px;
    transition:background var(--dur);
}
.not-found__btn:hover{background:var(--c-brand-dark)}

/* ── Dashboard Grid ── */
.dashboard-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-5);
}

/* ── Topbar extras ── */
.topbar__search{
    width:200px;padding:7px 14px;font-size:13px;
    border-radius:var(--r-full);
    background:var(--c-surface-alt);border:1px solid var(--c-border);
    transition:border var(--dur),width .3s var(--ease);
}
.topbar__search:focus{width:280px;border-color:var(--c-brand);outline:none}

.topbar__notif-btn{
    position:relative;background:none;border:none;font-size:20px;
    cursor:pointer;color:var(--c-text);padding:var(--sp-1);
    transition:transform .2s;
}
.topbar__notif-btn:hover{transform:scale(1.1)}
.topbar__notif-badge{
    position:absolute;top:-4px;right:-6px;
    min-width:18px;height:18px;padding:0 4px;
    background:var(--c-red);color:#fff;border-radius:var(--r-full);
    font-size:10px;font-weight:700;
    display:flex;align-items:center;justify-content:center;
}

.topbar__profile{position:relative}
.topbar__dropdown{
    position:absolute;top:calc(100% + 8px);right:0;
    background:var(--c-surface);border:1px solid var(--c-border);
    border-radius:var(--r-md);box-shadow:var(--sh-lg);
    min-width:160px;z-index:200;overflow:hidden;
    animation:fadeUp .2s var(--ease);
}
.topbar__dropdown[hidden]{display:none}
.topbar__dropdown-item{
    display:block;width:100%;padding:10px 16px;
    background:none;border:none;text-align:left;
    font:inherit;font-size:13px;color:var(--c-text);
    cursor:pointer;transition:background var(--dur);
}
.topbar__dropdown-item:hover{background:var(--c-surface-alt)}

/* ── Notification Panel ── */
.notif-panel{
    position:fixed;top:56px;right:var(--sp-5);
    width:340px;max-height:420px;
    background:var(--c-surface);border:1px solid var(--c-border);
    border-radius:var(--r-lg);box-shadow:var(--sh-lg);
    z-index:180;overflow:hidden;
    animation:fadeUp .2s var(--ease);
}
.notif-panel[hidden]{display:none}
.notif-panel__header{
    display:flex;align-items:center;justify-content:space-between;
    padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--c-border);
}
.notif-panel__title{font-size:14px;font-weight:700}
.notif-panel__clear{
    background:none;border:none;color:var(--c-brand);
    font:inherit;font-size:12px;font-weight:600;cursor:pointer;
}
.notif-panel__list{
    overflow-y:auto;max-height:350px;
    padding:var(--sp-2);
}
.notif-panel__empty{
    text-align:center;padding:var(--sp-6);
    font-size:13px;color:var(--c-text-soft);
}
.notif-item{
    display:flex;align-items:flex-start;gap:var(--sp-3);
    padding:var(--sp-3);border-radius:var(--r-sm);
    transition:background var(--dur);cursor:default;
}
.notif-item:hover{background:var(--c-surface-alt)}
.notif-item__icon{font-size:18px;min-width:24px;text-align:center;margin-top:2px}
.notif-item__body{flex:1;min-width:0}
.notif-item__text{font-size:13px;font-weight:500;line-height:1.4}
.notif-item__time{font-size:11px;color:var(--c-text-lighter);margin-top:2px}

/* ── Modal ── */
.modal-overlay{
    position:fixed;inset:0;z-index:200;
    background:rgba(0,0,0,.5);backdrop-filter:blur(4px);
    display:grid;place-items:center;
    animation:overlayIn .2s var(--ease);
}
.modal-overlay[hidden]{display:none}
.modal{
    background:var(--c-surface);border:1px solid var(--c-border);
    border-radius:var(--r-lg);box-shadow:var(--sh-lg);
    width:min(520px,94vw);max-height:90vh;
    display:flex;flex-direction:column;
    animation:dialogPop .3s cubic-bezier(.34,1.56,.64,1);
}
.modal__header{
    display:flex;align-items:center;justify-content:space-between;
    padding:var(--sp-4) var(--sp-5);
    border-bottom:1px solid var(--c-border);
}
.modal__title{font-size:17px;font-weight:700}
.modal__close{
    background:none;border:none;font-size:20px;
    cursor:pointer;color:var(--c-text-soft);padding:var(--sp-1);
    transition:color var(--dur);
}
.modal__close:hover{color:var(--c-text)}
.modal__body{
    padding:var(--sp-5);overflow-y:auto;flex:1;
}
.modal__footer{
    display:flex;align-items:center;justify-content:flex-end;
    gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);
    border-top:1px solid var(--c-border);
}

/* ── Order Detail Modal ── */
.order-detail__section{margin-bottom:var(--sp-5)}
.order-detail__section:last-child{margin-bottom:0}
.order-detail__heading{
    font-size:12px;font-weight:700;text-transform:uppercase;
    letter-spacing:.5px;color:var(--c-text-soft);margin-bottom:var(--sp-3);
}
.order-detail__row{
    display:flex;justify-content:space-between;
    font-size:13px;padding:4px 0;
}
.order-detail__row + .order-detail__row{border-top:1px dashed var(--c-border)}
.order-detail__total{
    font-size:18px;font-weight:800;color:var(--c-green);
    text-align:right;padding-top:var(--sp-3);
    border-top:2px solid var(--c-border);
}
.order-detail__note{
    padding:var(--sp-3);background:var(--c-surface-alt);
    border-radius:var(--r-sm);font-size:13px;
    font-style:italic;color:var(--c-text-soft);
}

/* ── Admin Form ── */
.admin-form{display:flex;flex-direction:column;gap:var(--sp-4)}
.form-group{display:flex;flex-direction:column;gap:var(--sp-1)}
.form-group--half{flex:1;min-width:120px}
.form-row{display:flex;gap:var(--sp-4)}
.form-label{font-size:12px;font-weight:600;color:var(--c-text-soft);text-transform:uppercase;letter-spacing:.3px}
.form-input{
    padding:10px 14px;border:1.5px solid var(--c-border);
    border-radius:var(--r-sm);font:inherit;font-size:14px;
    background:var(--c-surface-alt);color:var(--c-text);
    transition:border var(--dur),box-shadow var(--dur);
}
.form-input:focus{outline:none;border-color:var(--c-brand);box-shadow:0 0 0 3px rgba(232,93,4,.1)}
.form-textarea{resize:vertical;min-height:70px}

/* ── Menu Manager - Category Sections ── */
.menu-category{margin-bottom:var(--sp-6)}
.menu-category__header{
    display:flex;align-items:center;justify-content:space-between;
    padding:var(--sp-3) 0;margin-bottom:var(--sp-3);
    border-bottom:1px solid var(--c-border);
}
.menu-category__title{font-size:16px;font-weight:700}
.menu-category__count{
    font-size:12px;color:var(--c-text-soft);
    background:var(--c-surface-alt);padding:3px 10px;
    border-radius:var(--r-full);
}
.menu-items-grid{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
    gap:var(--sp-4);
}
.menu-item-card{
    background:var(--c-surface);border:1px solid var(--c-border);
    border-radius:var(--r-md);padding:var(--sp-4);
    box-shadow:var(--sh-sm);transition:all .25s var(--ease);
    display:flex;flex-direction:column;gap:var(--sp-2);
}
.menu-item-card:hover{box-shadow:var(--sh-md);border-color:rgba(232,93,4,.15)}
.menu-item-card--unavailable{opacity:.5}
.menu-item-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3)}
.menu-item-card__name{font-size:14px;font-weight:600;flex:1}
.menu-item-card__veg{
    font-size:11px;font-weight:700;padding:2px 8px;
    border-radius:var(--r-full);white-space:nowrap;
}
.menu-item-card__veg--veg{background:rgba(16,185,129,.12);color:var(--c-green)}
.menu-item-card__veg--nonveg{background:rgba(239,68,68,.12);color:var(--c-red)}
.menu-item-card__price{font-size:16px;font-weight:800;color:var(--c-brand)}
.menu-item-card__actions{
    display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);
    margin-top:auto;padding-top:var(--sp-3);
    border-top:1px solid var(--c-border);
}
.menu-item-card__edit{
    padding:6px 14px;border:1px solid var(--c-border);
    border-radius:var(--r-sm);background:none;color:var(--c-text-soft);
    font:inherit;font-size:12px;font-weight:600;cursor:pointer;
    transition:all var(--dur);
}
.menu-item-card__edit:hover{border-color:var(--c-brand);color:var(--c-brand)}
.menu-item-card__delete{
    padding:6px 10px;border:1px solid transparent;
    border-radius:var(--r-sm);background:none;color:var(--c-text-lighter);
    font-size:14px;cursor:pointer;transition:all var(--dur);
}
.menu-item-card__delete:hover{color:var(--c-red);border-color:var(--c-red)}

/* ── Themes Page ── */
.themes-desc{
    font-size:14px;color:var(--c-text-soft);
    margin-bottom:var(--sp-6);line-height:1.6;
}
.themes-grid{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
    gap:var(--sp-5);
}
.theme-card{
    background:var(--c-surface);border:1px solid var(--c-border);
    border-radius:var(--r-lg);overflow:hidden;
    box-shadow:var(--sh-sm);transition:all .3s var(--ease);
    position:relative;
}
.theme-card:hover{box-shadow:var(--sh-lg);transform:translateY(-3px)}
.theme-card--active{border-color:var(--c-brand);box-shadow:0 0 0 2px var(--c-brand-glow),var(--sh-md)}
.theme-card__preview{
    height:160px;position:relative;overflow:hidden;
    display:flex;align-items:center;justify-content:center;
}
.theme-card__preview-inner{
    width:85%;height:80%;border-radius:var(--r-sm);
    display:flex;flex-direction:column;gap:6px;padding:12px;
    position:relative;overflow:hidden;
}
.theme-card__preview-nav{
    height:6px;width:60%;border-radius:4px;opacity:.6;
}
.theme-card__preview-card{
    flex:1;border-radius:6px;display:flex;align-items:center;gap:8px;padding:8px;
}
.theme-card__preview-circle{
    width:24px;height:24px;border-radius:50%;flex-shrink:0;
}
.theme-card__preview-lines{
    flex:1;display:flex;flex-direction:column;gap:4px;
}
.theme-card__preview-line{
    height:4px;border-radius:2px;
}
.theme-card__preview-line--short{width:60%}
.theme-card__body{padding:var(--sp-4)}
.theme-card__name{font-size:15px;font-weight:700;margin-bottom:var(--sp-1)}
.theme-card__desc{font-size:12px;color:var(--c-text-soft);margin-bottom:var(--sp-3);line-height:1.5}
.theme-card__palette{
    display:flex;gap:6px;margin-bottom:var(--sp-3);
}
.theme-card__swatch{
    width:24px;height:24px;border-radius:50%;
    border:2px solid var(--c-border);
}
.theme-card__badge{
    position:absolute;top:var(--sp-3);right:var(--sp-3);
    padding:4px 12px;background:var(--c-brand);color:#fff;
    border-radius:var(--r-full);font-size:11px;font-weight:700;
    text-transform:uppercase;letter-spacing:.5px;
    z-index:2;
}
.theme-card__apply{
    width:100%;padding:10px;border:none;border-radius:var(--r-sm);
    font:inherit;font-size:13px;font-weight:600;cursor:pointer;
    transition:all var(--dur);
}
.theme-card--active .theme-card__apply{
    background:var(--c-surface-alt);color:var(--c-text-soft);cursor:default;
}
.theme-card:not(.theme-card--active) .theme-card__apply{
    background:var(--c-brand);color:#fff;
}
.theme-card:not(.theme-card--active) .theme-card__apply:hover{background:var(--c-brand-dark)}

/* ── Settings ── */
.settings-wrap{max-width:680px}
.settings-actions{
    display:flex;gap:var(--sp-3);margin-top:var(--sp-4);
}

/* ── Responsive ── */
@media(max-width:860px){
    .dashboard-grid{grid-template-columns:1fr}
    .themes-grid{grid-template-columns:1fr}
    .topbar__search{width:140px}
    .topbar__search:focus{width:180px}
    .form-row{flex-direction:column;gap:var(--sp-3)}
    .notif-panel{right:var(--sp-2);width:calc(100vw - 16px);max-width:360px}
}
@media(max-width:520px){
    .menu-items-grid{grid-template-columns:1fr}
    .topbar__search-wrap{display:none}
    .settings-actions{flex-direction:column}
}

/* ═══════════════════════════════════════════
   Live Orders — Operational Dashboard
   ═══════════════════════════════════════════ */

/* ── Live Header ── */
.live-header{
    display:flex;align-items:center;justify-content:space-between;
    flex-wrap:wrap;gap:var(--sp-3);margin-bottom:var(--sp-4);
}
.live-header__left{display:flex;align-items:center;gap:var(--sp-3)}
.live-header__title{font-size:20px;font-weight:800;margin:0}
.live-header__dot{
    width:10px;height:10px;border-radius:50%;
    background:var(--c-green);
    box-shadow:0 0 6px var(--c-green);
    animation:livePulse 2s ease-in-out infinite;
}
.live-header__dot.offline{
    background:var(--c-red);box-shadow:0 0 6px var(--c-red);
    animation:none;
}
@keyframes livePulse{
    0%,100%{opacity:1;transform:scale(1)}
    50%{opacity:.5;transform:scale(.85)}
}
.live-header__counts{display:flex;gap:var(--sp-2);flex-wrap:wrap}
.count-badge{
    display:inline-flex;align-items:center;gap:4px;
    padding:4px 12px;border-radius:var(--r-full);
    font-size:12px;font-weight:600;
    background:var(--c-surface-alt);border:1px solid var(--c-border);
}
.count-badge b{font-weight:800}

/* ── Quick-action buttons ── */
.quick-actions{display:flex;gap:6px;flex-wrap:wrap}
.qact-btn{
    padding:5px 12px;border:none;border-radius:var(--r-sm);
    font:inherit;font-size:12px;font-weight:700;
    cursor:pointer;white-space:nowrap;
    transition:all .15s var(--ease);
}
.qact-btn--start{background:var(--c-blue);color:#fff}
.qact-btn--start:hover{background:#2563eb;box-shadow:0 2px 8px rgba(59,130,246,.3)}
.qact-btn--cancel{background:transparent;color:var(--c-red);border:1px solid var(--c-red)}
.qact-btn--cancel:hover{background:var(--c-red);color:#fff}
.qact-btn--complete{background:var(--c-green);color:#fff}
.qact-btn--complete:hover{background:#059669;box-shadow:0 2px 8px rgba(16,185,129,.3)}

/* ── Order row status tint ── */
.order-row{transition:background .3s var(--ease)}
.order-row--pending{border-left:3px solid var(--c-yellow,#f59e0b)}
.order-row--preparing{border-left:3px solid var(--c-blue)}
.order-row--completed{border-left:3px solid var(--c-green)}
.order-row--cancelled{border-left:3px solid var(--c-red);opacity:.6}

/* ── New-order flash animation ── */
.order-row--new{animation:orderFlash 2.5s ease-out}
.live-card.order-row--new{animation:orderFlash 2.5s ease-out}
@keyframes orderFlash{
    0%{background:rgba(232,93,4,.18)}
    30%{background:rgba(232,93,4,.08)}
    100%{background:transparent}
}

/* ── Live table wrapper ── */
.live-table-wrap{
    border-radius:var(--r-md);
    border:1px solid var(--c-border);
    overflow-x:auto;
}
.live-table-wrap .data-table{margin:0;border:none}

/* ── Mobile card view ── */
.live-cards{display:none;flex-direction:column;gap:var(--sp-3)}
.live-card{
    background:var(--c-surface);border:1px solid var(--c-border);
    border-radius:var(--r-md);padding:var(--sp-4);
    box-shadow:var(--sh-sm);cursor:pointer;
    transition:box-shadow .2s var(--ease),border-color .2s;
}
.live-card:hover{box-shadow:var(--sh-md);border-color:var(--c-brand)}
.live-card--pending{border-left:3px solid var(--c-yellow,#f59e0b)}
.live-card--preparing{border-left:3px solid var(--c-blue)}
.live-card--completed{border-left:3px solid var(--c-green)}
.live-card--cancelled{border-left:3px solid var(--c-red);opacity:.6}
.live-card__top{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:var(--sp-2);
}
.live-card__info{
    display:flex;align-items:center;justify-content:space-between;
    font-size:14px;margin-bottom:var(--sp-2);
}
.live-card__customer{font-weight:600}
.live-card__amount{font-weight:800;color:var(--c-brand)}
.live-card__items{
    font-size:12px;color:var(--c-text-soft);line-height:1.5;
    margin-bottom:var(--sp-3);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.live-card__actions{display:flex;gap:6px;justify-content:flex-end}

/* ── Responsive: mobile switches to cards ── */
@media(max-width:768px){
    .live-table-wrap{display:none}
    .live-cards{display:flex}
    .live-header{flex-direction:column;align-items:flex-start}
    .live-header__counts{width:100%;justify-content:space-between}
    .count-badge{font-size:11px;padding:3px 8px}
}

/* ═══════════════════════════════════════════
   Live Orders Page — Active Orders Dashboard
   ═══════════════════════════════════════════ */

/* ── Top bar ── */
.lo-topbar{
    display:flex;align-items:center;justify-content:space-between;
    flex-wrap:wrap;gap:var(--sp-3);margin-bottom:var(--sp-4);
}
.lo-topbar__title{font-size:22px;font-weight:800;margin:0}
.lo-topbar__right{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}
.lo-completed-badge{
    display:inline-flex;align-items:center;gap:4px;
    padding:6px 14px;border-radius:var(--r-full);
    font-size:13px;font-weight:600;
    background:rgba(16,185,129,.12);color:var(--c-green);
    border:1px solid rgba(16,185,129,.25);
}
.lo-completed-badge b{font-weight:800}
.lo-live-indicator{
    display:inline-flex;align-items:center;gap:6px;
    padding:6px 14px;border-radius:var(--r-full);
    font-size:13px;font-weight:700;color:var(--c-green);
    background:rgba(16,185,129,.08);
}
.lo-live-indicator__dot{
    width:8px;height:8px;border-radius:50%;
    background:var(--c-green);
    box-shadow:0 0 6px var(--c-green);
    animation:livePulse 2s ease-in-out infinite;
}
.lo-live-indicator__dot.offline{
    background:var(--c-red);box-shadow:0 0 6px var(--c-red);animation:none;
}

/* ── Sub-header ── */
.lo-subheader{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:var(--sp-4);flex-wrap:wrap;gap:var(--sp-2);
}
.lo-active-count{
    font-size:14px;font-weight:700;text-transform:uppercase;
    letter-spacing:.5px;color:var(--c-text-soft);
}

/* ── Empty state ── */
.lo-empty{
    text-align:center;padding:var(--sp-8) var(--sp-4);
}
.lo-empty__icon{font-size:56px;display:block;margin-bottom:var(--sp-3)}
.lo-empty__text{font-size:15px;color:var(--c-text-soft);font-weight:500}

/* ── Order cards container ── */
.lo-cards{
    display:flex;flex-direction:column;gap:var(--sp-5);
}

/* ── Single order card ── */
.lo-order-card{
    background:var(--c-surface);border:1px solid var(--c-border);
    border-radius:var(--r-lg);padding:0;overflow:hidden;
    box-shadow:var(--sh-sm);
    transition:box-shadow .3s var(--ease),border-color .3s;
}
.lo-order-card:hover{box-shadow:var(--sh-md)}
.lo-order-card--urgent{border-color:rgba(239,68,68,.4)}

/* flash for new orders */
.lo-order-card--new{animation:loCardFlash 2.5s ease-out}
@keyframes loCardFlash{
    0%{box-shadow:0 0 0 3px rgba(232,93,4,.5),var(--sh-md);border-color:var(--c-brand)}
    50%{box-shadow:0 0 0 1px rgba(232,93,4,.2),var(--sh-sm)}
    100%{box-shadow:var(--sh-sm);border-color:var(--c-border)}
}

/* ── Card header ── */
.lo-order-card__header{
    display:flex;align-items:center;justify-content:space-between;
    padding:var(--sp-4) var(--sp-5);
    border-bottom:1px solid var(--c-border);
    flex-wrap:wrap;gap:var(--sp-2);
}
.lo-order-card__header-left{display:flex;align-items:center;gap:var(--sp-3)}
.lo-order-card__header-right{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}

.lo-order-id{
    font-size:15px;font-weight:800;color:var(--c-brand);
    background:rgba(232,93,4,.1);padding:4px 12px;
    border-radius:var(--r-sm);letter-spacing:.3px;
}
.lo-order-type{
    font-size:11px;font-weight:700;text-transform:uppercase;
    letter-spacing:.5px;padding:3px 10px;border-radius:var(--r-sm);
}
.lo-order-type--takeaway{background:rgba(16,185,129,.12);color:var(--c-green)}
.lo-order-type--dinein{background:rgba(59,130,246,.12);color:var(--c-blue)}
.lo-order-type--delivery{background:rgba(168,85,247,.12);color:#a855f7}
.lo-order-time{font-size:12px;color:var(--c-text-soft)}

.lo-waiting{
    font-size:11px;font-weight:600;color:var(--c-text-soft);
    background:var(--c-surface-alt);padding:2px 8px;border-radius:var(--r-sm);
}
.lo-waiting--urgent{color:var(--c-red);background:rgba(239,68,68,.1)}

/* ── Progress bar ── */
.lo-progress{
    display:flex;align-items:center;justify-content:center;
    padding:var(--sp-4) var(--sp-5);
    background:var(--c-bg);
}
.lo-progress__step{
    display:flex;flex-direction:column;align-items:center;gap:4px;
    position:relative;z-index:1;
}
.lo-progress__circle{
    width:32px;height:32px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:13px;font-weight:700;
    background:var(--c-surface-alt);color:var(--c-text-soft);
    border:2px solid var(--c-border);
    transition:all .3s;
}
.lo-progress__step--active .lo-progress__circle{
    background:var(--c-brand);color:#fff;border-color:var(--c-brand);
    box-shadow:0 0 10px rgba(232,93,4,.35);
}
.lo-progress__step--done .lo-progress__circle{
    background:var(--c-green);color:#fff;border-color:var(--c-green);
}
.lo-progress__label{
    font-size:11px;font-weight:600;text-transform:uppercase;
    letter-spacing:.3px;color:var(--c-text-soft);
}
.lo-progress__step--active .lo-progress__label{color:var(--c-brand);font-weight:700}
.lo-progress__step--done .lo-progress__label{color:var(--c-green)}
.lo-progress__line{
    flex:1;height:2px;min-width:40px;max-width:100px;
    background:var(--c-border);margin:0 var(--sp-2);
    margin-bottom:18px; /* align with circles */
}

/* ── Customer row ── */
.lo-customer{
    display:flex;align-items:center;gap:var(--sp-5);
    padding:var(--sp-3) var(--sp-5);
    font-size:14px;color:var(--c-text);
    border-bottom:1px solid var(--c-border);
}

/* ── Items list ── */
.lo-items{padding:var(--sp-3) var(--sp-5)}
.lo-item-row{
    display:flex;justify-content:space-between;align-items:center;
    padding:var(--sp-2) var(--sp-3);
    background:var(--c-surface-alt);border-radius:var(--r-sm);
    font-size:13px;margin-bottom:var(--sp-2);
}
.lo-item-row:last-child{margin-bottom:0}
.lo-item-row span:last-child{font-weight:700;color:var(--c-brand);white-space:nowrap}

/* ── Card footer ── */
.lo-order-card__footer{
    display:flex;align-items:center;justify-content:space-between;
    padding:var(--sp-4) var(--sp-5);
    border-top:1px solid var(--c-border);
}
.lo-total{font-size:20px;font-weight:800;color:var(--c-brand)}
.lo-actions{display:flex;gap:var(--sp-2)}

.lo-action-btn{
    padding:8px 20px;border:none;border-radius:var(--r-sm);
    font:inherit;font-size:13px;font-weight:700;cursor:pointer;
    transition:all .15s var(--ease);
}
.lo-action-btn--prepare{background:var(--c-blue);color:#fff}
.lo-action-btn--prepare:hover{background:#2563eb;box-shadow:0 2px 8px rgba(59,130,246,.3)}
.lo-action-btn--cancel{background:transparent;color:var(--c-text-soft);border:1px solid var(--c-border)}
.lo-action-btn--cancel:hover{color:var(--c-red);border-color:var(--c-red)}
.lo-action-btn--complete{background:var(--c-green);color:#fff}
.lo-action-btn--complete:hover{background:#059669;box-shadow:0 2px 8px rgba(16,185,129,.3)}

/* ── Live Orders responsive ── */
@media(max-width:600px){
    .lo-topbar{flex-direction:column;align-items:flex-start}
    .lo-topbar__right{width:100%;justify-content:space-between}
    .lo-order-card__header{flex-direction:column;align-items:flex-start}
    .lo-progress__line{min-width:24px}
    .lo-customer{flex-direction:column;align-items:flex-start;gap:var(--sp-1)}
    .lo-order-card__footer{flex-direction:column;gap:var(--sp-3);align-items:flex-start}
    .lo-actions{width:100%}
    .lo-action-btn{flex:1;text-align:center}
}
