@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:light;--op-ink:#1e3025;--op-forest:#263c2d;--op-leaf:#6d8469;--op-gold:#a88d51;--op-bg:#f2f4ef;--op-card:#fff;--op-muted:#778178;--op-line:#e4e9e1;--op-red:#a64c4a;--op-amber:#a7752d;--op-shadow:0 12px 34px #2031270a}
*{box-sizing:border-box}html{min-height:100%;background:var(--op-bg)}body.operation-body{margin:0;min-height:100vh;min-height:100svh;background:var(--op-bg);color:var(--op-ink);font-family:'DM Sans',Manrope,system-ui,sans-serif}button,input,a{font:inherit}button{cursor:pointer}a{color:inherit}.gate-wrap{display:grid;min-height:100vh;min-height:100svh;place-items:center;padding:24px;background:radial-gradient(ellipse at top right,#dce6d9 0,transparent 44%),var(--op-bg)}.gate-card{width:min(100%,440px);padding:clamp(28px,6vw,48px);border:1px solid #e0e6dc;border-radius:30px;background:#fff;box-shadow:0 22px 70px #20312718}.gate-logo{display:block;width:150px;max-height:64px;object-fit:contain;object-position:left center;margin:0 0 42px}.gate-eyebrow,.op-eyebrow{display:block;color:var(--op-gold);font-size:.69rem;font-weight:800;letter-spacing:.16em}.gate-card h1{margin:10px 0;font:700 clamp(2rem,8vw,2.7rem)/1.04 Manrope,'DM Sans',sans-serif;letter-spacing:-.055em;color:var(--op-ink)}.gate-card>p{margin:0 0 26px;line-height:1.65;color:#69756b}.pin-form{display:grid;gap:12px}.pin-form label{margin-top:5px;font-size:.9rem;font-weight:700}.pin-form input{width:100%;height:58px;padding:0 18px;border:1px solid #dce3d9;border-radius:15px;background:#f8f9f6;color:var(--op-ink);font-size:1.4rem;font-weight:800;letter-spacing:.42em;text-align:center;outline:none}.pin-form input:focus{border-color:var(--op-leaf);box-shadow:0 0 0 4px #7187701c}.pin-form small{color:var(--op-muted);font-size:.8rem;line-height:1.5}.op-button{display:flex;min-height:52px;align-items:center;justify-content:center;border:0;border-radius:14px;text-decoration:none;font-weight:800}.op-button-primary{margin-top:8px;background:var(--op-forest);color:white;box-shadow:0 8px 20px #263c2d22}.op-button-primary:hover{background:#1d3024}.gate-error{margin:15px 0;padding:12px 14px;border:1px solid #f0d2d0;border-radius:12px;background:#fff5f4;color:#833d3a;font-size:.87rem;line-height:1.45}.gate-config-link,.gate-demo-link{display:block;margin-top:17px;color:#566a59;text-align:center;font-size:.84rem;text-decoration:underline;text-underline-offset:3px}.gate-demo-link{margin-top:26px;color:#828c82;font-size:.78rem}.operation-app{min-height:100vh;min-height:100svh;background:var(--op-bg)}.op-topbar{position:sticky;z-index:4;top:0;display:flex;min-height:78px;align-items:center;justify-content:space-between;gap:18px;padding:12px max(24px,calc((100vw - 1440px)/2));border-bottom:1px solid #e3e8e0;background:#fffF;backdrop-filter:blur(14px)}.op-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.op-brand img{width:48px;height:48px;object-fit:contain}.op-brand span{display:grid;gap:3px}.op-brand small{color:var(--op-gold);font-size:.6rem;font-weight:800;letter-spacing:.18em}.op-brand strong{font:700 1rem/1.1 Manrope,sans-serif;letter-spacing:-.03em}.op-top-actions{display:flex;align-items:center;gap:9px}.op-top-actions form{margin:0}.op-link-button,.op-icon-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;padding:0 14px;border:1px solid var(--op-line);border-radius:12px;background:white;color:#4b5c4e;font-size:.8rem;font-weight:700;text-decoration:none;white-space:nowrap}.op-icon-button{width:42px;padding:0;font-size:1.4rem}.op-link-button:hover,.op-icon-button:hover{border-color:#c3cfbe;background:#f8faf6}.demo-ribbon{padding:9px 12px;border-radius:10px;background:#fff2d9;color:#865a13;font-size:.68rem;font-weight:900;letter-spacing:.08em}.op-content{width:min(100%,1440px);margin:0 auto;padding:34px 28px 26px}.op-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 25px}.op-heading h1{margin:7px 0 5px;font:700 clamp(2rem,4vw,3rem)/1.02 Manrope,'DM Sans',sans-serif;letter-spacing:-.065em}.op-heading p{margin:0;color:#737e74;text-transform:capitalize}.op-live{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:8px;row-gap:4px;color:#778178;font-size:.77rem}.live-dot{width:8px;height:8px;border-radius:50%;background:#5e9a62;box-shadow:0 0 0 4px #5e9a621b}.op-live strong{grid-column:2;color:var(--op-ink);font-size:1rem;font-variant-numeric:tabular-nums}.op-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.op-kpi{display:grid;gap:6px;min-height:120px;padding:19px 20px;border:1px solid var(--op-line);border-radius:19px;background:var(--op-card);box-shadow:var(--op-shadow)}.op-kpi>span{color:#6c786e;font-size:.8rem;font-weight:700}.op-kpi strong{font:800 2rem/1 Manrope,sans-serif;letter-spacing:-.06em}.op-kpi small{color:#899389;font-size:.72rem}.op-kpi-warn strong{color:var(--op-amber)}.op-kpi-alert strong{color:var(--op-red)}.op-next{position:relative;display:flex;min-height:110px;align-items:center;gap:17px;overflow:hidden;padding:20px 24px;border-radius:20px;background:linear-gradient(105deg,#1e3025,#314d37);color:#fff;box-shadow:0 12px 24px #263c2d1c}.op-next:after{position:absolute;right:-25px;bottom:-115px;width:260px;height:260px;border:1px solid #ffffff12;border-radius:50%;content:''}.op-next-icon{display:grid;width:52px;height:52px;flex:0 0 52px;place-items:center;border:1px solid #ffffff38;border-radius:16px;color:#e1d2a8;font-size:2rem}.op-next-copy{display:grid;gap:5px;min-width:0}.op-next-copy>span{color:#d5cba9;font-size:.67rem;font-weight:800;letter-spacing:.15em}.op-next-copy strong{overflow:hidden;font:700 1.2rem Manrope,sans-serif;text-overflow:ellipsis;white-space:nowrap}.op-next-copy small{color:#d9e1d9;font-size:.82rem;font-variant-numeric:tabular-nums}.op-next-clock{z-index:1;margin-left:auto;color:#e5d9b8;font:800 clamp(1.15rem,3vw,1.8rem) Manrope,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}.op-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);align-items:start;gap:14px;margin-top:14px}.op-side-column{display:grid;gap:14px}.op-panel{min-width:0;padding:22px;border:1px solid var(--op-line);border-radius:20px;background:var(--op-card);box-shadow:var(--op-shadow)}.op-panel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:17px}.op-panel-heading h2{margin:5px 0 3px;font:700 1.25rem/1.15 Manrope,sans-serif;letter-spacing:-.04em}.op-panel-heading p{margin:0;color:#879187;font-size:.76rem;line-height:1.45}.op-filters{display:flex;gap:4px;padding:4px;border-radius:12px;background:#f0f3ee}.op-filters button{padding:7px 10px;border:0;border-radius:9px;background:transparent;color:#6e796f;font-size:.7rem;font-weight:800}.op-filters button.is-active{background:#fff;color:var(--op-forest);box-shadow:0 2px 6px #263c2d12}.op-timeline{display:grid;gap:16px}.op-time-group{display:grid;gap:8px}.op-time-group-heading{display:flex;align-items:center;gap:9px;padding:0 2px;color:#788478;font-size:.76rem;font-weight:800}.op-time-group-heading strong{color:var(--op-forest);font:800 1.16rem Manrope,sans-serif;font-variant-numeric:tabular-nums}.op-time-group-heading:after{height:1px;flex:1;background:#edf0eb;content:''}.op-time-group-heading small{order:1;color:#9ba39a;font-size:.67rem;font-weight:600}.op-reservation-list{display:grid;gap:7px}.op-reservation-card{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:13px 14px;border:1px solid #e9ede7;border-radius:14px;background:#fff;color:var(--op-ink);text-align:left;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.op-reservation-card:hover{transform:translateY(-1px);border-color:#bdcbb8;box-shadow:0 7px 15px #263c2d0d}.op-reservation-main{display:grid;gap:6px;min-width:0}.op-reservation-title{display:flex;align-items:center;gap:7px;min-width:0}.op-reservation-title strong{overflow:hidden;font-size:.87rem;text-overflow:ellipsis;white-space:nowrap}.op-type-tag,.op-origin-tag,.op-status-tag{display:inline-flex;align-items:center;padding:4px 7px;border-radius:99px;background:#edf3eb;color:#526b54;font-size:.59rem;font-weight:800;white-space:nowrap}.op-origin-tag.external{background:#f7efe0;color:#8d6b30}.op-origin-tag.internal{background:#ebeff2;color:#566a79}.op-reservation-meta{display:flex;flex-wrap:wrap;gap:4px 10px;color:#808a80;font-size:.68rem}.op-reservation-meta span{white-space:nowrap}.op-card-place{display:grid;justify-items:end;gap:5px;color:#455a49;font-size:.76rem;font-weight:800;text-align:right}.op-card-place small{color:#98a097;font-size:.64rem;font-weight:600}.op-empty{padding:20px 14px;border:1px dashed #d7dfd4;border-radius:13px;color:#849084;font-size:.8rem;text-align:center}.op-inbox-list{display:grid;gap:8px}.op-inbox-card{display:grid;width:100%;gap:7px;padding:13px 14px;border:1px solid #e9ede7;border-radius:14px;background:#fff;color:var(--op-ink);text-align:left}.op-inbox-card:hover{border-color:#bdcbb8;background:#fbfcfa}.op-inbox-top{display:flex;align-items:center;justify-content:space-between;gap:7px}.op-inbox-top strong{overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.op-status-tag.pending,.op-status-tag.no_response{background:#fff1d7;color:#8a621e}.op-status-tag.in_progress{background:#e8eff9;color:#526b90}.op-status-tag.waiting{background:#f0e9f5;color:#795d8c}.op-status-tag.rejected{background:#f9e9e8;color:#9a5550}.op-inbox-summary{display:flex;flex-wrap:wrap;gap:5px 10px;color:#788379;font-size:.69rem}.op-inbox-timing{padding-top:5px;border-top:1px solid #f0f2ee;color:#879187;font-size:.68rem;line-height:1.45}.op-inbox-timing strong{color:#4d6250}.op-followups-panel{border-color:#eee3cf;background:linear-gradient(145deg,#fff,#fffdf9)}.op-followup-time{color:#936e2c;font-size:.72rem;font-weight:800}.op-upcoming-panel{margin-top:14px}.op-upcoming-list{display:grid;gap:8px}.op-upcoming-row{display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid #ebeee8;border-radius:13px}.op-upcoming-date{display:grid;gap:3px;color:#69756b;font-size:.66rem;text-transform:capitalize}.op-upcoming-date strong{color:var(--op-forest);font:800 .9rem Manrope,sans-serif}.op-upcoming-main{display:grid;gap:4px;min-width:0}.op-upcoming-main strong{overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.op-upcoming-main small{color:#849084;font-size:.68rem}.op-footer{display:flex;justify-content:space-between;gap:10px;padding:16px 4px;color:#879187;font-size:.68rem}.op-detail-dialog{position:fixed;width:min(620px,calc(100vw - 28px));max-height:min(88dvh,850px);padding:30px;border:1px solid #dce4d9;border-radius:24px;background:#fff;color:var(--op-ink);box-shadow:0 28px 95px #15231952}.op-detail-dialog::backdrop{background:#18251c9c;backdrop-filter:blur(3px)}.op-detail-close{position:absolute;top:12px;right:14px;display:grid;width:38px;height:38px;place-items:center;border:1px solid #e4e9e1;border-radius:50%;background:white;color:#445448;font-size:1.5rem}.op-detail-content{display:grid;gap:18px}.op-detail-heading{display:grid;gap:8px;padding:0 30px 16px 0;border-bottom:1px solid #edf0eb}.op-detail-heading h2{margin:0;font:800 1.55rem/1.1 Manrope,sans-serif;letter-spacing:-.05em}.op-detail-heading p{margin:0;color:#7e897e;font-size:.83rem}.op-detail-chips{display:flex;flex-wrap:wrap;gap:6px}.op-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.op-detail-field{display:grid;gap:4px;padding:12px;border:1px solid #edf0eb;border-radius:12px;background:#fafbf9}.op-detail-field small{color:#899389;font-size:.63rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.op-detail-field strong{overflow-wrap:anywhere;font-size:.8rem;line-height:1.45}.op-detail-notes{padding:13px;border-radius:12px;background:#f5f7f3;color:#617064;font-size:.8rem;line-height:1.6;white-space:pre-line}.op-history{display:grid;gap:8px}.op-history h3{margin:0;font-size:.85rem}.op-history-item{display:grid;grid-template-columns:80px minmax(0,1fr);gap:8px;padding:9px 0;border-top:1px solid #edf0eb;font-size:.73rem}.op-history-item time{color:#586d5c;font-weight:800;font-variant-numeric:tabular-nums}.op-history-item span{color:#707d71;line-height:1.45}.op-history-item small{display:block;margin-top:2px;color:#a0a79f}.op-toast{position:fixed;z-index:9;right:20px;bottom:20px;max-width:min(380px,calc(100vw - 40px));padding:12px 15px;border-radius:12px;background:#1e3025;color:white;font-size:.8rem;box-shadow:0 12px 30px #1e30254a;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.op-toast.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:1040px){.op-layout{grid-template-columns:minmax(0,1fr) minmax(285px,.82fr)}.op-content{padding-inline:20px}.op-kpi{padding:16px}.op-panel{padding:18px}.op-panel-heading{align-items:flex-start;flex-direction:column}.op-filters{max-width:100%;overflow:auto}.op-filters button{flex:0 0 auto}}
@media(max-width:760px){.op-topbar{min-height:67px;padding:9px 14px}.op-brand img{width:42px;height:42px}.op-brand strong{font-size:.86rem}.op-top-actions{gap:5px}.op-link-button{min-height:36px;padding:0 9px;font-size:.68rem}.op-icon-button{width:36px;min-height:36px}.demo-ribbon{max-width:128px;padding:7px;font-size:.54rem;line-height:1.35;text-align:center}.op-content{padding:23px 14px calc(24px + env(safe-area-inset-bottom))}.op-heading{align-items:flex-start;margin-bottom:17px}.op-heading h1{font-size:2rem}.op-heading p{font-size:.76rem}.op-live{grid-template-columns:auto auto;column-gap:6px;font-size:.64rem}.op-live strong{font-size:.83rem}.op-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.op-kpi{min-height:98px;padding:13px;border-radius:15px}.op-kpi>span{font-size:.7rem}.op-kpi strong{font-size:1.65rem}.op-kpi small{font-size:.63rem;line-height:1.35}.op-next{min-height:96px;gap:11px;padding:15px;border-radius:16px}.op-next-icon{width:42px;height:42px;flex-basis:42px;border-radius:13px;font-size:1.65rem}.op-next-copy>span{font-size:.57rem}.op-next-copy strong{font-size:.91rem;white-space:normal}.op-next-copy small{font-size:.7rem}.op-next-clock{font-size:1rem}.op-layout{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:10px}.op-side-column{gap:10px}.op-panel{padding:15px;border-radius:16px}.op-panel-heading{gap:11px;margin-bottom:13px}.op-panel-heading h2{font-size:1.08rem}.op-panel-heading p{font-size:.7rem}.op-filters{width:100%;justify-content:space-between}.op-filters button{padding:7px 8px;font-size:.64rem}.op-time-group-heading strong{font-size:1.02rem}.op-reservation-card{padding:11px 10px}.op-reservation-title strong{font-size:.79rem}.op-reservation-meta{font-size:.63rem}.op-card-place{font-size:.68rem}.op-inbox-card{padding:11px}.op-inbox-top strong{font-size:.77rem}.op-inbox-summary,.op-inbox-timing{font-size:.64rem}.op-upcoming-row{grid-template-columns:72px minmax(0,1fr);gap:8px;padding:10px}.op-upcoming-row>.op-origin-tag{grid-column:2;justify-self:start}.op-upcoming-date strong{font-size:.8rem}.op-upcoming-main strong{font-size:.76rem}.op-footer{flex-direction:column;align-items:center;text-align:center;font-size:.62rem}.op-detail-dialog{padding:25px 17px 19px;border-radius:19px}.op-detail-heading h2{font-size:1.28rem}.op-detail-grid{gap:6px}.op-detail-field{padding:10px}.op-detail-field strong{font-size:.73rem}.op-history-item{grid-template-columns:64px minmax(0,1fr);font-size:.68rem}}
@media(max-width:390px){.op-brand{gap:7px}.op-brand img{width:35px;height:35px}.op-brand small{font-size:.52rem}.op-brand strong{font-size:.74rem}.op-top-actions{gap:4px}.op-top-actions .op-link-button{padding:0 7px;font-size:.62rem}.op-live span:not(.live-dot){max-width:78px;line-height:1.25}.op-next-clock{font-size:.86rem}.op-reservation-card{grid-template-columns:minmax(0,1fr)}.op-card-place{display:flex;justify-content:flex-start;justify-items:start;gap:8px;text-align:left}.op-detail-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.op-demo-date-label{display:inline-flex;align-items:center;gap:10px;margin-top:14px;color:#69756b;font-size:.75rem;font-weight:700}.op-demo-date-label input{min-height:38px;padding:0 10px;border:1px solid #dce3d9;border-radius:10px;background:#fff;color:var(--op-ink);font-weight:700}.op-upcoming-row.is-available{border-style:dashed;background:#fbfcfa}.op-upcoming-row.is-available .op-status-tag{background:#edf1eb;color:#647164}

/* Owner dashboard readability and date range controls */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.op-heading-copy{min-width:0}
.op-heading h1{font-size:clamp(2.5rem,5vw,3.5rem)}
.op-heading p{font-size:1.08rem;line-height:1.45}
.op-eyebrow{font-size:.78rem;letter-spacing:.13em}
.op-range-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:17px}
.op-period-switch,.op-date-picker{display:flex;align-items:center;gap:5px;padding:5px;border:1px solid #dce3d9;border-radius:15px;background:#fff;box-shadow:0 3px 10px #263c2d0a}
.op-period-switch button,.op-date-picker button{display:inline-flex;min-width:58px;min-height:48px;align-items:center;justify-content:center;padding:0 17px;border:0;border-radius:11px;background:transparent;color:#536357;font:800 1rem/1 Manrope,'DM Sans',sans-serif;cursor:pointer}
.op-period-switch button.is-active{background:var(--op-forest);color:#fff;box-shadow:0 3px 8px #263c2d26}
.op-date-picker{gap:3px}
.op-date-picker button{min-width:46px;padding:0;color:var(--op-forest);font-size:1.8rem}
.op-date-picker button:hover,.op-period-switch button:not(.is-active):hover{background:#f0f4ed}
.op-date-picker input{min-height:46px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:var(--op-ink);font:800 1rem Manrope,'DM Sans',sans-serif}
.op-kpi{min-height:140px;gap:9px;padding:22px 24px}
.op-kpi>span{font-size:1rem;line-height:1.35}
.op-kpi strong{font-size:2.55rem}
.op-kpi small{font-size:.9rem;line-height:1.35}
.op-next{min-height:126px;padding:23px 27px}
.op-next-icon{width:60px;height:60px;flex-basis:60px}
.op-next-copy>span{font-size:.8rem}
.op-next-copy strong{font-size:1.45rem}
.op-next-copy small{font-size:1rem}
.op-next-clock{font-size:2rem}
.op-panel{padding:27px}
.op-panel-heading h2{font-size:1.55rem}
.op-panel-heading p{font-size:.95rem;line-height:1.5}
.op-filters{gap:6px;padding:5px}
.op-filters button{min-height:46px;padding:9px 15px;font-size:.9rem}
.op-timeline{gap:20px}
.op-date-group{display:grid;gap:13px;padding:18px;border:1px solid #e6ebe3;border-radius:17px;background:#fafbf9}
.op-date-group>h3{margin:0;color:var(--op-forest);font:800 1.2rem/1.3 Manrope,'DM Sans',sans-serif;text-transform:capitalize}
.op-date-group .op-time-group{padding-left:3px}
.op-time-group-heading{font-size:.95rem}
.op-time-group-heading strong{font-size:1.35rem}
.op-time-group-heading small{font-size:.82rem}
.op-reservation-list,.op-inbox-list,.op-upcoming-list{gap:10px}
.op-reservation-card{min-height:76px;gap:12px;padding:16px 18px;border-radius:16px}
.op-reservation-main{gap:8px}
.op-reservation-title{gap:9px}
.op-reservation-title strong{font-size:1.05rem}
.op-type-tag,.op-origin-tag,.op-status-tag{padding:6px 10px;font-size:.75rem}
.op-reservation-meta{gap:6px 14px;font-size:.85rem}
.op-card-place{gap:6px;font-size:.95rem}
.op-card-place small{font-size:.8rem}
.op-inbox-card{min-height:84px;gap:9px;padding:16px 17px;border-radius:15px}
.op-inbox-top strong{font-size:1rem}
.op-inbox-summary{gap:6px 12px;font-size:.84rem}
.op-inbox-timing{padding-top:8px;font-size:.82rem;line-height:1.5}
.op-upcoming-row{min-height:82px;grid-template-columns:116px minmax(0,1fr) auto;padding:15px 17px;border-radius:15px}
.op-upcoming-date{font-size:.8rem}
.op-upcoming-date strong{font-size:1.05rem}
.op-upcoming-main strong{font-size:1rem}
.op-upcoming-main small{font-size:.82rem;line-height:1.4}
.op-empty{padding:24px 18px;font-size:.95rem;line-height:1.5}
.op-live{font-size:.88rem}
.op-live strong{font-size:1.15rem}
.op-detail-dialog{width:min(720px,calc(100vw - 32px));padding:34px}
.op-detail-heading h2{font-size:1.8rem}
.op-detail-heading p{font-size:1rem}
.op-detail-field{gap:6px;padding:15px}
.op-detail-field small{font-size:.75rem}
.op-detail-field strong{font-size:.96rem;line-height:1.5}
.op-detail-notes{font-size:.96rem;line-height:1.6}
.op-history h3{font-size:1.05rem}
.op-history-item{font-size:.88rem;line-height:1.45}
.op-footer{font-size:.8rem}
@media(max-width:760px){
  .op-heading{flex-direction:column;align-items:stretch;gap:14px}
  .op-heading h1{font-size:2.35rem}
  .op-heading p{font-size:1rem}
  .op-range-controls{display:grid;grid-template-columns:1fr;gap:9px;margin-top:14px}
  .op-period-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
  .op-period-switch button{min-width:0;min-height:50px;padding:0 8px;font-size:1rem}
  .op-date-picker{width:100%;justify-content:space-between}
  .op-date-picker button{min-width:50px;min-height:50px}
  .op-date-picker label{flex:1;text-align:center}
  .op-date-picker input{width:100%;min-height:48px;text-align:center;font-size:1rem}
  .op-live{align-self:flex-start;font-size:.84rem}
  .op-live strong{font-size:1.1rem}
  .op-kpis{gap:10px}
  .op-kpi{min-height:116px;gap:7px;padding:15px 14px}
  .op-kpi>span{font-size:.92rem}
  .op-kpi strong{font-size:2.05rem}
  .op-kpi small{font-size:.78rem}
  .op-next{min-height:108px;gap:12px;padding:17px 15px}
  .op-next-icon{width:48px;height:48px;flex-basis:48px;font-size:1.7rem}
  .op-next-copy>span{font-size:.68rem}
  .op-next-copy strong{font-size:1.08rem;line-height:1.3}
  .op-next-copy small{font-size:.82rem;line-height:1.35}
  .op-next-clock{font-size:1.25rem}
  .op-panel{padding:18px}
  .op-panel-heading h2{font-size:1.3rem}
  .op-panel-heading p{font-size:.86rem}
  .op-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
  .op-filters button{min-height:48px;padding:8px 4px;font-size:.82rem}
  .op-date-group{gap:12px;padding:14px}
  .op-date-group>h3{font-size:1.08rem}
  .op-time-group-heading{font-size:.87rem}
  .op-time-group-heading strong{font-size:1.2rem}
  .op-time-group-heading small{font-size:.76rem}
  .op-reservation-card{min-height:76px;grid-template-columns:minmax(0,1fr) auto;padding:14px 13px}
  .op-reservation-title{flex-wrap:wrap}
  .op-reservation-title strong{font-size:.98rem}
  .op-type-tag,.op-origin-tag,.op-status-tag{padding:6px 9px;font-size:.72rem}
  .op-reservation-meta{font-size:.8rem;line-height:1.4}
  .op-card-place{font-size:.86rem}
  .op-card-place small{font-size:.75rem}
  .op-inbox-card{min-height:80px;padding:14px}
  .op-inbox-top strong{font-size:.95rem}
  .op-inbox-summary{font-size:.8rem;line-height:1.4}
  .op-inbox-timing{font-size:.78rem}
  .op-upcoming-row{grid-template-columns:94px minmax(0,1fr);gap:9px;padding:13px}
  .op-upcoming-row>.op-origin-tag,.op-upcoming-row>.op-status-tag{grid-column:2;justify-self:start}
  .op-upcoming-date{font-size:.75rem}
  .op-upcoming-date strong{font-size:.96rem}
  .op-upcoming-main strong{font-size:.92rem;white-space:normal}
  .op-upcoming-main small{font-size:.78rem}
  .op-empty{font-size:.9rem}
  .op-detail-dialog{padding:28px 18px 20px}
  .op-detail-heading h2{font-size:1.45rem}
  .op-detail-heading p{font-size:.9rem}
  .op-detail-field{padding:12px}
  .op-detail-field small{font-size:.7rem}
  .op-detail-field strong{font-size:.88rem}
  .op-detail-notes{font-size:.88rem}
  .op-history-item{font-size:.82rem}
}
@media(max-width:390px){
  .op-heading h1{font-size:2.1rem}
  .op-kpi>span{font-size:.84rem}
  .op-kpi strong{font-size:1.9rem}
  .op-next{flex-wrap:wrap}
  .op-next-clock{margin-left:60px}
  .op-reservation-card{grid-template-columns:minmax(0,1fr)}
  .op-card-place{display:flex;justify-content:flex-start;justify-items:start;gap:8px;text-align:left}
  .op-detail-grid{grid-template-columns:1fr}
}
