@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Montserrat:wght@400;500;600;700&display=swap');
:root{--deep:#123f5b;--deep2:#0b2d42;--blue:#2f7697;--sky:#6ab9d8;--olive:#a7ad45;--gold:#d8a33c;--danger:#c95261;--success:#2f8f66;--bg:#f5f8fa;--card:#fff;--text:#1a2d38;--muted:#6d7d87;--line:#dfe8ed;--shadow:0 14px 35px rgba(18,63,91,.09)}
[data-theme="dark"]{--bg:#0c1820;--card:#11242f;--text:#edf5f7;--muted:#9fb2bc;--line:#24404f;--shadow:0 14px 35px rgba(0,0,0,.28)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Montserrat,sans-serif;background:var(--bg);color:var(--text)}body{overflow-x:hidden}.app-shell{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:292px;background:linear-gradient(180deg,var(--deep2),var(--deep));padding:18px 16px;z-index:1055;overflow-y:auto;transition:.25s;color:#fff}.brand{display:flex;align-items:center;gap:12px;padding:8px 46px 18px 4px;border-bottom:1px solid rgba(255,255,255,.12);position:relative}.brand-logo-box{width:76px;height:62px;border-radius:13px;background:#fff;padding:5px;display:grid;place-items:center;overflow:hidden;box-shadow:0 8px 20px rgba(0,0,0,.14)}.brand-logo{width:100%;height:100%;object-fit:contain}.brand-fallback{font-family:'Cormorant Garamond',serif;font-size:18px;color:var(--deep);font-weight:700;text-align:center;line-height:1}.brand h1{font-family:'Cormorant Garamond',serif;font-size:21px;line-height:1;margin:0}.brand small{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#bcd8e4}.side-close{display:none;position:absolute;right:0;top:4px;width:38px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(255,255,255,.08);color:#fff}.nav-label{font-size:9px;letter-spacing:.16em;color:#8fb2c4;text-transform:uppercase;padding:18px 11px 6px;font-weight:700}.nav-itemx{margin:3px 0}.nav-linkx,.nav-parent{display:flex;align-items:center;gap:11px;color:#dce9ef;text-decoration:none;border:0;background:transparent;width:100%;padding:10px 11px;border-radius:10px;font-size:12.5px;text-align:left}.nav-linkx:hover,.nav-parent:hover,.nav-linkx.active{background:rgba(255,255,255,.09);color:#fff}.nav-linkx i,.nav-parent i{width:20px;text-align:center;color:#9dd7e9}.nav-parent .chev{margin-left:auto;width:auto;transition:.2s}.nav-parent[aria-expanded="true"] .chev{transform:rotate(90deg)}.subnav{padding:3px 0 4px 26px}.subnav a{display:flex;gap:9px;align-items:center;color:#bdd1db;text-decoration:none;font-size:11.5px;padding:8px 10px;border-radius:8px}.subnav a:hover{background:rgba(255,255,255,.07);color:#fff}.sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1050;opacity:0;visibility:hidden;transition:.2s}.sidebar-overlay.show{opacity:1;visibility:visible}.main{margin-left:292px;min-height:100vh}.topbar{height:74px;position:sticky;top:0;z-index:1030;background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 26px}.mobile-menu{display:none}.icon-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--text)}.content{padding:26px;max-width:1900px;margin:auto}.page-title{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:700;margin:0}.eyebrow{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--blue);font-weight:700}.muted{color:var(--muted)}.cardx{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.welcome{background:linear-gradient(120deg,var(--deep),var(--blue));color:#fff;padding:24px;border-radius:19px;overflow:hidden;position:relative}.welcome:after{content:'';position:absolute;width:260px;height:260px;border:45px solid rgba(255,255,255,.08);border-radius:50%;right:-90px;top:-120px}.welcome .page-title{color:#fff}.welcome p{color:#d7eaf2}.kpi{padding:18px;min-height:110px}.kpi-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:rgba(106,185,216,.15);color:var(--blue)}.kpi-value{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:28px}.btn-brand{background:linear-gradient(135deg,var(--deep),var(--blue));border:0;color:#fff}.btn-brand:hover{color:#fff;background:var(--deep2)}.btn{border-radius:10px;font-size:12px;font-weight:600}.filters{display:grid;grid-template-columns:minmax(230px,2fr) repeat(3,minmax(150px,1fr)) auto;gap:10px}.form-control,.form-select{min-height:42px;border-radius:10px;border-color:var(--line);background:var(--card);color:var(--text);font-size:12.5px}.form-control:focus,.form-select:focus{background:var(--card);color:var(--text);border-color:var(--sky);box-shadow:0 0 0 .2rem rgba(106,185,216,.14)}.form-label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700}.table-wrap{overflow:auto;border-radius:0 0 18px 18px;max-height:68vh}.table{margin:0;color:var(--text);white-space:nowrap;font-size:12px}.table>:not(caption)>*>*{background:transparent;color:inherit;border-color:var(--line);padding:.78rem}.table thead th{position:sticky;top:0;background:var(--card);z-index:2;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.actions-cell{position:sticky;right:0;background:var(--card)!important;z-index:3}.action-btn{width:31px;height:31px;border:0;border-radius:9px;display:inline-grid;place-items:center;margin:0 2px}.view{background:rgba(47,118,151,.12);color:var(--blue)}.edit{background:rgba(216,163,60,.14);color:#af7410}.del{background:rgba(201,82,97,.13);color:var(--danger)}.modal-content{background:var(--card);color:var(--text);border:0;border-radius:18px;overflow:hidden}.modal-header,.modal-footer{border-color:var(--line);background:var(--card);position:sticky;z-index:5}.modal-header{top:0}.modal-footer{bottom:0}.modal-body{max-height:calc(100vh - 170px);overflow:auto;padding:22px}.modal-title{font-family:'Cormorant Garamond',serif;font-size:25px;font-weight:700}.field-card{border:1px solid var(--line);border-radius:12px;padding:11px;background:color-mix(in srgb,var(--card) 93%,var(--bg))}.view-label{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.view-value{font-size:12.5px;font-weight:600;word-break:break-word}.badge-soft{background:rgba(106,185,216,.13);color:var(--blue);border:1px solid rgba(106,185,216,.18)}.chart-box{height:300px}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr}.auth-hero{background:linear-gradient(125deg,rgba(11,45,66,.92),rgba(47,118,151,.72));padding:7vw;color:#fff;display:flex;flex-direction:column;justify-content:space-between}.auth-logo{width:170px;height:110px;object-fit:contain;background:#fff;padding:8px;border-radius:15px}.auth-hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(46px,6vw,78px);line-height:.92}.auth-panel{display:grid;place-items:center;padding:34px}.auth-card{width:min(470px,100%);padding:32px}.auth-card h2{font-family:'Cormorant Garamond',serif;font-size:36px}.module-stats{display:flex;gap:9px;flex-wrap:wrap}.stat-pill{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:8px 12px;font-size:11px}.scroll-note{display:none;font-size:10px;color:var(--muted)}
@media(max-width:1100px){.filters{grid-template-columns:1fr 1fr}.content{padding:20px}}
@media(max-width:991px){body.sidebar-open{overflow:hidden}.sidebar{transform:translateX(-100%);width:min(330px,90vw);box-shadow:none}.sidebar.open{transform:translateX(0);box-shadow:15px 0 40px rgba(0,0,0,.3)}.side-close{display:block}.main{margin-left:0}.mobile-menu{display:inline-grid;place-items:center}.content{padding:18px}.auth-page{grid-template-columns:1fr}.auth-hero{display:none}.modal-dialog{margin:.5rem}.modal-body .col-lg-4{width:50%}}
@media(max-width:767px){.topbar{height:66px;padding:0 13px}.content{padding:13px}.page-title{font-size:27px}.filters{grid-template-columns:1fr}.chart-box{height:250px}.modal-dialog{max-width:none;margin:0}.modal-content{min-height:100vh;border-radius:0}.modal-body{max-height:calc(100vh - 145px);padding:15px}.modal-body .col-lg-4{width:100%}.scroll-note{display:block}.table-wrap{max-height:64vh}.auth-panel{padding:18px}.auth-card{padding:22px}.brand-logo-box{width:70px;height:58px}}

.workspace{background:rgba(47,118,151,.12);color:var(--blue)}.share{background:rgba(47,143,102,.13);color:var(--success)}
.workspace-tabs{display:flex;gap:6px;padding:12px;border-bottom:1px solid var(--line);overflow-x:auto}.workspace-tab{border:0;background:transparent;color:var(--muted);padding:10px 13px;border-radius:10px;white-space:nowrap;font-size:11px;font-weight:700}.workspace-tab.active{background:rgba(47,118,151,.12);color:var(--blue)}.workspace-tab i{margin-right:7px}.workspace-tab span{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:var(--line);margin-left:5px}.event-workspace-select{min-width:320px}.workspace-table{max-height:58vh}.small-value{font-size:20px!important}.section-title{font-family:'Cormorant Garamond',serif;font-weight:700}.upcoming-list,.upcoming-row{display:grid;gap:8px}.upcoming-row{grid-template-columns:1fr auto;text-decoration:none;color:var(--text);padding:11px 12px;border:1px solid var(--line);border-radius:10px}.upcoming-row span:last-child{color:var(--muted);font-size:11px}.report-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:18px;border-bottom:1px solid var(--line)}.report-head h2{font-family:'Cormorant Garamond',serif;margin:0}.report-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.report-kpis>div{border:1px solid var(--line);border-radius:12px;padding:12px}.report-kpis span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.report-kpis b{display:block;margin-top:5px}.report-section{margin-top:22px}.report-section h4{font-family:'Cormorant Garamond',serif;font-weight:700}.report-section h4 span{font-family:Montserrat,sans-serif;font-size:10px;background:var(--line);padding:4px 7px;border-radius:999px}.public-feedback-page{min-height:100vh;padding:30px 15px;display:grid;place-items:center;background:linear-gradient(145deg,#edf7fb,#f8f8ef)}.public-feedback-card{width:min(850px,100%);padding:32px}.public-logo{margin:auto;width:110px;height:82px}.feedback-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.feedback-summary-grid>div{padding:11px;border:1px solid var(--line);border-radius:10px}.feedback-summary-grid span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase}.feedback-summary-grid b{display:block;margin-top:4px;font-size:12px}
@media(max-width:767px){.event-workspace-select{min-width:100%;width:100%}.report-kpis{grid-template-columns:1fr 1fr}.feedback-summary-grid{grid-template-columns:1fr 1fr}.upcoming-row{grid-template-columns:1fr}.public-feedback-card{padding:20px}}
@media print{.sidebar,.topbar,.workspace-tabs,.btn,.sidebar-overlay{display:none!important}.main{margin:0!important}.content{padding:0!important}.cardx{box-shadow:none!important;border:0!important}#workspaceSummary{display:none}.workspace-table{max-height:none!important}.report-section{break-inside:avoid}.workspaceContent{padding:0!important}}

/* BQT v5 event-centric menu/wastage */
.summary-table .client-cell{min-width:180px}.summary-table .id-cell{font-weight:700;color:var(--brand)}
.summary-table .action-btn{display:inline-flex}.detail-hero{background:linear-gradient(135deg,#123f5b,#2f7697);color:#fff;border-radius:18px;padding:20px}.detail-hero .meta{opacity:.86}
.category-block{border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:14px;background:var(--card)}
.category-title{padding:10px 14px;background:color-mix(in srgb,var(--brand) 10%,var(--card));font-weight:800;color:var(--brand);display:flex;align-items:center;justify-content:space-between}.category-items{padding:0 14px}.category-row{display:grid;grid-template-columns:minmax(180px,1fr) 90px 100px 90px;gap:12px;padding:10px 0;border-bottom:1px dashed var(--border);align-items:center}.category-row:last-child{border-bottom:0}.category-row .dish{font-weight:600}.category-row .mini{font-size:12px;color:var(--muted)}
.repeater-row{display:grid;grid-template-columns:170px minmax(210px,1.5fr) 100px 110px 110px 44px;gap:10px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:14px;margin-bottom:10px;background:var(--soft)}
.waste-repeater-row{grid-template-columns:150px minmax(180px,1.4fr) 85px repeat(5,minmax(90px,1fr)) 44px}.calc-chip{background:rgba(35,133,91,.1);color:#237d59;border-radius:10px;padding:9px;font-size:12px;font-weight:700}
.feedback-status.pending{background:#fff3cd;color:#8a6500}.feedback-status.success{background:#dff5e9;color:#17683f}.feedback-status{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.pdf-menu-preview{font-family:Arial,sans-serif;color:#111}.pdf-menu-preview h2{text-transform:uppercase;font-size:18px}.pdf-menu-preview h3{text-transform:uppercase;text-decoration:underline;font-size:14px;margin:18px 0 8px}.pdf-menu-preview .menu-line{display:flex;justify-content:space-between;gap:20px;padding:3px 0}.detail-toolbar{display:flex;gap:8px;flex-wrap:wrap}.modal-xxl{max-width:1320px}
@media(max-width:991.98px){.repeater-row,.waste-repeater-row{grid-template-columns:1fr 1fr}.repeater-row .remove-cell,.waste-repeater-row .remove-cell{grid-column:2;text-align:right}.category-row{grid-template-columns:1fr 80px 90px}}
@media(max-width:575.98px){.repeater-row,.waste-repeater-row{grid-template-columns:1fr}.repeater-row .remove-cell,.waste-repeater-row .remove-cell{grid-column:1}.category-row{grid-template-columns:1fr 70px}.category-row .pax-col{display:none}.detail-hero{padding:16px;border-radius:14px}.modal-dialog.modal-xxl{margin:0;max-width:none;height:100%}.modal-dialog.modal-xxl .modal-content{min-height:100%;border-radius:0}}
@media print{.no-print,.sidebar,.topbar,.sidebar-overlay{display:none!important}.main{margin:0!important}.content{padding:0!important}.cardx{box-shadow:none!important;border:0!important}}
