:root{--ink:#1c2535;--muted:#778195;--line:#e9edf3;--blue:#4268e8;--blue-dark:#3157d7;--pale:#f7f9fc;--panel:#fff;--nav:#fbfcfe}*{box-sizing:border-box}body{margin:0;background:var(--pale);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:14px}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;width:254px;inset:0 auto 0 0;background:var(--nav);border-right:1px solid var(--line);padding:28px 15px;display:flex;flex-direction:column}.brand{height:43px;display:flex;align-items:center;gap:9px;padding-left:14px;font:800 21px Manrope;color:#26334d;letter-spacing:-1.1px}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--blue);color:#fff;font:800 17px Manrope}.workspace-label{font-size:10px;letter-spacing:1.2px;color:#a3abba;font-weight:700;margin:39px 14px 12px}.manage-label{margin-top:29px}.nav-link{border:0;background:transparent;color:#627087;width:100%;height:43px;border-radius:8px;display:flex;gap:13px;align-items:center;padding:0 14px;font:600 13px "DM Sans";cursor:pointer;text-align:left;margin:2px 0}.nav-link i{font-style:normal;font-size:18px;width:18px;text-align:center;color:#7c879a}.nav-link:hover,.nav-link.active{background:#ebf0ff;color:#355ad9}.nav-link.active i{color:#355ad9}.nav-count{font-size:10px;background:#e7ecf6;border-radius:10px;padding:2px 7px;margin-left:auto;color:#607088}.sidebar-footer{margin: auto 9px 1px;padding:17px 12px;border-radius:10px;background:#f2f5fb;color:#657188;font-size:12px}.help-icon{float:left;border:1px solid #a7b0c0;border-radius:50%;width:20px;height:20px;text-align:center;margin-right:9px;font-weight:bold}.sidebar-footer p{margin:8px 0 0 29px;font-size:11px;color:#9ba5b7}main{margin-left:254px;width:calc(100% - 254px);padding-bottom:46px}.topbar{height:84px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 48px}.location{display:flex;gap:10px;align-items:center}.pin{color:#4770ed;font-size:12px}.location small,.profile small{display:block;color:#9aa4b5;font-size:9px;font-weight:700;letter-spacing:.8px;margin-bottom:4px}.location strong{font-size:13px}.location strong span{color:#8c97aa;margin-left:7px}.top-actions{display:flex;align-items:center;gap:18px}.icon-button{border:0;background:transparent;font-size:19px;color:#718096;position:relative}.notification b{position:absolute;width:6px;height:6px;background:#e15b72;border:1px solid #fff;border-radius:50%;right:2px;top:2px}.header-rule{height:28px;border-left:1px solid var(--line)}.profile{display:flex;align-items:center;gap:9px;border:0;background:none;text-align:left;cursor:pointer}.profile strong{font-size:12px}.profile i{font-style:normal;color:#8490a2}
.profile-menu{position:relative}.profile-dropdown{display:none;position:absolute;right:0;top:calc(100% + 10px);background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px #1a284522;min-width:170px;overflow:hidden;z-index:9}.profile-dropdown.open{display:block}.profile-dropdown button{width:100%;text-align:left;padding:11px 14px;border:0;background:#fff;font:600 12px "DM Sans";color:#3d4a5f;cursor:pointer}.profile-dropdown button:hover{background:#f5f7fb}
.office-switcher{border:0;background:transparent;font:700 13px "DM Sans";color:var(--ink);cursor:pointer;padding:2px 22px 2px 0}.avatar{border-radius:50%;display:grid;place-items:center;background:#e8dcce;color:#7a5538;font-size:10px;font-weight:700}.avatar-sm{width:35px;height:35px}.page-heading{max-width:1340px;margin:0 auto;padding:39px 48px 28px;display:flex;justify-content:space-between;align-items:flex-end}.eyebrow{font-size:10px;letter-spacing:1.15px;font-weight:700;color:#9aa5b7;margin:0 0 9px}.page-heading h1{font:700 26px Manrope;margin:0;letter-spacing:-.7px}.page-heading h1 span{font-size:21px}.subtle{margin:7px 0 0;color:var(--muted);font-size:13px}.heading-actions{display:flex;gap:10px}.primary-button,.secondary-button,.select-button,.filter{height:36px;border-radius:8px;padding:0 14px;font:600 12px "DM Sans";cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.primary-button{background:var(--blue);border:1px solid var(--blue);color:#fff;box-shadow:0 2px 6px #4268e824}.primary-button:hover{background:var(--blue-dark)}.secondary-button,.select-button,.filter{background:#fff;border:1px solid #dfe5ef;color:#4e5c70}.secondary-button:hover,.select-button:hover,.filter:hover{border-color:#c5cede;background:#fafbfd}.stats-grid,.dashboard-grid,.lower-grid,.report-grid{max-width:1340px;margin:0 auto;display:grid;gap:17px;padding:0 48px}.stats-grid{grid-template-columns:repeat(4,1fr)}.stat-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px;display:flex;gap:13px;min-height:121px}.stat-icon,.quick-icon{display:grid;place-items:center;border-radius:9px;font-size:19px;font-weight:700}.stat-icon{width:42px;height:42px}.blue,.sky{background:#eaf0ff;color:#4d70e7}.orange,.peach{background:#fff0e5;color:#e98443}.violet{background:#f2ecff;color:#8661dc}.green,.mint{background:#e8f8ef;color:#42a66c}.stat-card p{margin:1px 0 5px;color:#69758a;font-size:12px}.stat-card strong{font:700 25px Manrope;letter-spacing:-1px}.stat-card small{display:block;margin-top:4px;font-size:10px}.trend{color:#26a266}.trend em{font-style:normal;color:#a0a9b8;margin-left:4px}.normal{color:#9ca5b5}.dashboard-grid{grid-template-columns:1.25fr .95fr;margin-top:17px}.lower-grid{grid-template-columns:1.25fr .95fr;margin-top:17px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;padding:21px 22px 16px}.panel-heading h2,.empty-panel h2,.report-card h2{font:700 15px Manrope;margin:0;letter-spacing:-.25px}.panel-heading p{margin:5px 0 0;font-size:11px;color:#99a4b5}.text-button{border:0;background:none;color:#476ce5;font:600 12px "DM Sans";cursor:pointer}.text-button span{font-size:16px}.arrival-list{padding:0 22px}.arrival{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;padding:13px 0;border-top:1px solid #eff2f6}.avatar-lg{width:38px;height:38px;font-size:11px}.arrival strong,.activity strong{font-size:12px}.arrival small,.activity small{display:block;color:#8893a5;font-size:11px;margin-top:3px}.arrival-time{text-align:right}.arrival-time strong{display:block;color:#55627a;font-size:11px}.arrival-time span{font-size:10px;color:#a0a9b8}.activity-list{padding:1px 22px}.activity{display:flex;gap:10px;position:relative;padding:12px 0;border-top:1px solid #eff2f6}.activity .dot{width:8px;height:8px;border-radius:50%;margin-top:5px;background:#4c74e9;box-shadow:0 0 0 4px #eff3ff}.activity .checkout-dot{background:#42b178;box-shadow:0 0 0 4px #eaf9f0}.activity time{margin-left:auto;color:#9ca6b6;font-size:10px}.live-label{font-size:10px;color:#43a772;font-weight:600}.live-label b{display:inline-block;width:6px;height:6px;background:#43bb79;border-radius:50%;margin-right:4px}.view-activity{width:100%;padding:13px;border:0;border-top:1px solid #eff2f6;background:#fff;color:#4f70df;font:600 11px "DM Sans";border-radius:0 0 10px 10px;cursor:pointer}.select-button{height:31px;font-size:10px;padding:0 10px}.chart{height:189px;margin:0 22px 19px;display:flex;align-items:end;justify-content:space-around;border-bottom:1px solid #e8edf4;background:repeating-linear-gradient(to bottom,transparent 0,transparent 44px,#f1f3f7 45px)}.chart>div{height:100%;width:33px;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:8px}.chart span{width:23px;background:#cbd8fc;border-radius:4px 4px 0 0;position:relative}.chart .today-bar{background:#4e71e6}.chart b{position:absolute;background:#23395f;color:#fff;font-size:9px;padding:4px 6px;border-radius:4px;top:-25px;left:0}.chart small{height:19px;font-size:10px;color:#8893a5}.quick-actions{padding:0 15px 14px}.quick-actions button,.settings-list button{width:100%;display:flex;align-items:center;gap:11px;border:0;background:#fff;padding:12px 7px;border-top:1px solid #eff2f6;text-align:left;cursor:pointer}.quick-actions button:first-child{border:0}.quick-icon{width:34px;height:34px;flex:0 0 auto;font-size:16px}.quick-actions strong,.settings-list strong{display:block;font-size:11px}.quick-actions small,.settings-list small{display:block;font-size:10px;color:#98a2b3;margin-top:3px}.quick-actions i,.settings-list i{margin-left:auto;color:#8b99ad;font-style:normal}.view{display:none}.active-view{display:block}.table-panel{max-width:1340px;margin:0 48px;padding:8px 22px 18px}.table-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 4px;min-height:42px;border-bottom:1px solid var(--line)}.search{width:280px;height:34px;min-height:34px;max-height:34px;flex:0 0 auto;border:1px solid #d9e0eb;border-radius:8px;display:inline-flex;align-items:center;gap:8px;padding:0 11px;color:#8b97a9;background:#fbfcfe;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.search>span{font-size:13px;line-height:1;opacity:.75;flex:0 0 auto}.search input,.search input:focus{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;margin:0!important;padding:0!important;height:100%!important;min-height:0!important;width:100%;font:500 13px/1.2 "DM Sans",sans-serif!important;color:var(--ink);border-radius:0!important}.search:hover{border-color:#c5cede;background:#fff}.search:focus-within{border-color:#91a8f0;background:#fff;box-shadow:0 0 0 3px #4268e814;color:#5b6b82}.filter{height:34px}table{width:100%;border-collapse:collapse;text-align:left}th{color:#8f9aab;font-size:10px;letter-spacing:.8px;padding:12px 10px;border-bottom:1px solid var(--line);font-weight:700}td{padding:12px 10px;border-bottom:1px solid #eef1f5;font-size:13px;color:#5d6a7e;vertical-align:middle}td:first-child{color:#243247;font-weight:600}.table-person{display:flex;align-items:center;gap:10px}.table-person .avatar{width:30px;height:30px;font-size:10px}.status{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;line-height:1.2;white-space:nowrap}.inside{background:#e7f7ee;color:#2f9a5f}.expected{background:#eef2ff;color:#4f6fd6}.done{background:#f1f4f8;color:#6e7b8f}.table-action{border:1px solid #d7dfec;background:#fff;color:#4268e8;border-radius:7px;padding:0 11px;height:30px;font:600 11px "DM Sans";cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .15s ease,border-color .15s ease}.table-action:hover{background:#f3f6ff;border-color:#b7c6ef}.table-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.visit-tabs{display:flex;align-items:stretch;gap:2px;height:42px;margin-bottom:-1px}.tab{border:0;background:transparent;color:#7d899c;padding:0 14px;height:100%;font:600 12px "DM Sans";cursor:pointer;border-bottom:2px solid transparent;display:inline-flex;align-items:center}.tab:hover{color:#4a5870}.tab.active{color:#4268e8;border-bottom-color:#4268e8}.form-card{max-width:850px;margin:0 auto;padding:27px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:11px;color:#566276;font-weight:600}label>input,label>select,.form-card input,.form-card select,.modal-form input,.modal-form select,.login-card input{width:100%;height:38px;border:1px solid #e0e5ee;border-radius:8px;padding:0 11px;margin-top:6px;font:500 13px "DM Sans";color:#48566c;background:#fff;outline:none;transition:border-color .15s ease,box-shadow .15s ease}label>input:focus,label>select:focus,.form-card input:focus,.form-card select:focus,.modal-form input:focus,.modal-form select:focus,.login-card input:focus{border-color:#91a8f0;box-shadow:0 0 0 3px #4268e814}.form-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.form-footer p{font-size:11px;color:#8994a6}.empty-panel{max-width:650px;margin:15px auto;text-align:center;padding:48px}.empty-panel .large-icon{font-size:35px;color:#5475e7}.empty-panel p{color:#8c97a7;font-size:12px;margin:9px 0 20px}.report-grid{grid-template-columns:repeat(3,1fr)}.report-card{padding:24px}.report-card h2{margin:15px 0 7px}.report-card p{color:#8490a2;font-size:12px;min-height:33px}.report-card .text-button{padding:0}.settings-list{max-width:800px;margin:0 auto;padding:8px 20px}.settings-list button{padding:14px 4px}
.settings-grid{max-width:1340px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 48px 48px;width:100%;box-sizing:border-box;align-items:start}
.settings-grid .form-card,.settings-grid>form.form-card{max-width:none;width:100%;margin:0;padding:22px 24px;display:block;box-sizing:border-box;grid-column:span 1;min-width:0}
.settings-grid .form-card[hidden],.admin-only[hidden]{display:none!important}
.settings-grid form{display:block;width:100%;margin:0}
.settings-grid h2{font:700 15px Manrope,sans-serif;margin:0 0 4px}
.settings-grid>.form-card>.subtle,.settings-grid>form.form-card>.subtle{margin:0 0 16px}
.settings-grid .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;width:100%}
.settings-grid .form-grid>label{display:flex;flex-direction:column;gap:6px;min-width:0}
.settings-grid .form-grid>label>input,.settings-grid .form-grid>label>select{width:100%;min-width:0;margin-top:0;box-sizing:border-box}
.settings-grid .form-grid>.toggle-row{grid-column:1/-1;margin:4px 0 0}
.settings-grid .toggle-row{display:flex;align-items:center;gap:9px;width:100%;margin:8px 0}
.settings-grid .form-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.settings-grid .form-footer p{flex:1 1 200px;margin:0;min-width:0}
.settings-grid .mail-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 0}
.settings-grid .mail-form-footer .mail-actions{margin:0;flex:0 0 auto}
.settings-grid .mail-help{display:block;margin:12px 0 0}
.settings-grid .offices-table{display:table;width:100%;margin:8px 0 0;border-collapse:collapse}
.settings-grid .offices-table th{border-bottom:1px solid var(--line)}
.settings-grid .offices-table td{border-top:0;border-bottom:1px solid #eef1f5}
.settings-grid .offices-table tr:last-child td{border-bottom:0}
#mailStatusCard,#securitySettingsCard,#backupSettingsCard,#productionChecklistCard,#kioskSettingsCard,#officesSettingsCard,#officeForm,#azureSettingsCard{grid-column:1/-1}
#mailSettingsFields{grid-template-columns:repeat(3,minmax(0,1fr))}
#securitySettingsForm .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#officeForm .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1100px){
  #mailSettingsFields,#securitySettingsForm .form-grid,#officeForm .form-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  #mailSettingsFields,#securitySettingsForm .form-grid,#officeForm .form-grid,#addOfficeForm{grid-template-columns:1fr}
}
#mailSettingsFields.is-disabled{opacity:.55;pointer-events:none}
.toggle-row{display:flex;align-items:center;gap:9px;font-size:12px;color:#48566c;font-weight:500}
.toggle-row input{width:auto!important;height:auto!important;margin:0!important;flex:0 0 auto}
@media(max-width:1100px){
  .settings-grid{grid-template-columns:1fr;padding:0 32px 48px}
}
@media(max-width:720px){
  .settings-grid{padding:0 16px 40px;grid-template-columns:1fr}
  .settings-grid .form-grid,#addOfficeForm{grid-template-columns:1fr}
  #addOfficeForm .primary-button{width:100%;justify-self:stretch}
}
.report-date{height:34px;margin:14px 0 10px;width:100%;border:1px solid #d9e0eb;border-radius:8px;padding:0 10px;font:500 12px "DM Sans";color:#48566c;background:#fbfcfe}
.offices-table{width:100%;border-collapse:collapse;margin-top:6px}.offices-table th{text-align:left;font-size:9px;letter-spacing:.7px;color:#9ca6b5;padding:8px}.offices-table td{padding:10px 8px;font-size:12px;color:#48566c;border-top:1px solid #eef1f5}
#addOfficeForm{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:14px 16px;margin-top:16px;padding-top:16px;border-top:1px solid #eef1f5;align-items:end;border-bottom:0}
#addOfficeForm label{display:flex;flex-direction:column;gap:6px;min-width:0}
#addOfficeForm label>input{margin-top:0;width:100%;box-sizing:border-box}
#addOfficeForm .primary-button{justify-self:start;margin:0;white-space:nowrap}
.compact td{padding:8px}.compact th{padding:7px 8px}.modal-backdrop{display:none;position:fixed;inset:0;background:#14203b80;z-index:5;place-items:center}.modal-backdrop.open{display:grid}.modal{width:440px;background:#fff;border-radius:13px;padding:28px;position:relative;box-shadow:0 18px 60px #15204455}.modal h2{font:700 21px Manrope;margin:0}.modal-close{position:absolute;right:18px;top:15px;border:0;background:#f2f4f8;color:#7d8797;font-size:20px;width:28px;height:28px;border-radius:50%;cursor:pointer}.modal-search{display:flex;align-items:center;gap:8px;border:1px solid #d9e0eb;border-radius:8px;padding:0 11px;height:36px;margin:18px 0 12px;color:#8995a7;background:#fbfcfe;overflow:hidden}.modal-search input,.modal-search input:focus{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;margin:0!important;padding:0!important;height:100%!important;width:100%;font:500 13px "DM Sans"!important;color:var(--ink)}.visitor-pick{border:1px solid #e3e8f0;border-radius:8px;padding:11px;display:flex;gap:10px;align-items:center}.visitor-pick strong{font-size:12px}.visitor-pick small{display:block;color:#8994a5;font-size:10px;margin-top:4px}.visitor-pick .primary-button{margin-left:auto;height:33px;padding:0 10px}.success-message{display:none;margin-top:14px;padding:12px;border-radius:6px;background:#eaf9f0;color:#268a52;font-size:11px;font-weight:600}.success-message.show{display:block}.toast{display:none;position:fixed;right:28px;bottom:28px;background:#24334e;color:#fff;border-radius:7px;padding:13px 17px;font-size:12px;box-shadow:0 7px 22px #1a284533;z-index:8}.toast.show{display:block}
.qr-preview{max-width:850px;margin:18px auto 0;padding:20px 27px;display:none;align-items:center;gap:18px}.qr-preview.show{display:flex}.qr-preview img{width:88px;height:88px;border:1px solid var(--line);border-radius:8px}.qr-preview strong{display:block;font-size:13px}.qr-preview small{display:block;color:#8994a5;font-size:11px;margin-top:4px;max-width:420px}
.invite-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;align-items:center}.invite-actions input{flex:1;min-width:180px;height:36px;border:1px solid #e0e5ee;border-radius:6px;padding:0 10px;font:12px "DM Sans";color:#48566c;background:#fff}.mail-toggle{margin:14px 0 18px;font-size:13px}.mail-form-footer{align-items:center;gap:12px}.mail-actions{display:flex;gap:8px;flex-wrap:wrap}.mail-help{margin-top:8px}.audit-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-bottom:0;min-height:0;margin-bottom:12px}.audit-tools .search{width:220px}.audit-tools select,.audit-tools input[type="date"]{height:34px;margin:0;border:1px solid #d9e0eb;border-radius:8px;padding:0 10px;font:500 12px "DM Sans";color:#48566c;background:#fbfcfe}
.badge-print-area{display:none!important;position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
@media print{body.printing-badge>*:not(.badge-print-area){display:none!important}body.printing-badge .badge-print-area{display:block!important;position:fixed;inset:0;width:auto;height:auto;overflow:visible;pointer-events:auto}.badge-card{width:320px;margin:60px auto;text-align:center;border:2px solid #1c2535;border-radius:14px;padding:26px;font-family:"DM Sans",sans-serif}.badge-office{font-size:11px;letter-spacing:1px;color:#667289;text-transform:uppercase;margin:0 0 12px}.badge-card h2{margin:0 0 4px;font:700 20px Manrope}.badge-card p{margin:2px 0;font-size:12px;color:#48566c}.badge-card img{width:150px;height:150px;margin:16px 0}.badge-number{font:700 17px Manrope;letter-spacing:1px;margin-top:12px}}@media(max-width:1050px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.lower-grid{grid-template-columns:1fr}.sidebar{width:205px}main{margin-left:205px;width:calc(100% - 205px)}}@media(max-width:720px){.sidebar{display:none}main{margin:0;width:100%}.topbar{padding:0 20px}.page-heading,.stats-grid,.dashboard-grid,.lower-grid,.report-grid{padding-left:20px;padding-right:20px}.page-heading{align-items:flex-start;gap:18px;flex-direction:column}.stats-grid,.report-grid{grid-template-columns:1fr}.top-actions .profile span:not(.avatar){display:none}.table-panel{margin:0 20px;overflow:auto;padding-left:16px;padding-right:16px}.table-tools{flex-direction:column;align-items:stretch;gap:10px;border-bottom:0}.visit-tabs{height:36px;border-bottom:1px solid var(--line)}.search{width:100%}.form-grid{grid-template-columns:1fr}.modal{width:calc(100% - 32px)}}

.checklist{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.checklist li{display:flex;gap:10px;align-items:flex-start;padding:12px 12px;border:1px solid #e8edf5;border-radius:8px;background:#fbfcfe}
.checklist .check-mark{flex:0 0 auto;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;margin-top:1px}
.checklist li.is-done{border-color:#cfe9d9;background:#f3fbf6}
.checklist li.is-done .check-mark{background:#e7f7ee;color:#2f9a5f}
.checklist li.is-todo .check-mark{background:#eef2f8;color:#8b97a9}
.checklist li.is-optional{opacity:.92}
.checklist li strong{display:block;font-size:12px;color:#243247;font-weight:700}
.checklist li small{display:block;margin-top:4px;font-size:11px;color:#8994a6;font-weight:500;line-height:1.35}
.prod-banner{margin:0 0 14px;padding:12px 14px;border-radius:8px;font:600 12px "DM Sans";line-height:1.4}
.prod-banner.is-open{background:#fff7ed;border:1px solid #f0d2a8;color:#8a5a12}
.prod-banner.is-ready{background:#f3fbf6;border:1px solid #cfe9d9;color:#237a4b}

#settings .page-heading{max-width:1340px;padding-left:48px;padding-right:48px}
@media(max-width:1100px){#settings .page-heading{padding-left:32px;padding-right:32px}}
@media(max-width:720px){#settings .page-heading{padding-left:16px;padding-right:16px}}

.invite-only-portal .sidebar-footer{margin-top:auto}
.invite-only-portal #manageNavLabel,
.invite-only-portal #manageNav{display:none!important}

/* Shared polish */
.page-heading{padding-bottom:22px}
.panel{box-shadow:0 1px 2px #1c253508}
.stat-card{transition:border-color .15s ease,box-shadow .15s ease,transform .12s ease;text-align:left;font:inherit;color:inherit}
button.stat-card{appearance:none;-webkit-appearance:none;cursor:pointer;width:100%}
.stat-card.is-clickable:hover{border-color:#b7c6ef;box-shadow:0 6px 18px #1c253512;transform:translateY(-1px)}
.stat-card.is-clickable:focus-visible{outline:2px solid #91a8f0;outline-offset:2px}
.stat-card.is-clickable:active{transform:translateY(0);box-shadow:0 2px 8px #1c25350c}
.nav-link{transition:background .15s ease,color .15s ease}
tbody tr:hover td{background:#fafbfd}
.toast{border:1px solid #334866}

/* Collapsible sidebar — full-page content when hidden */
.sidebar{transition:transform .22s ease;z-index:6}
main{transition:margin-left .22s ease,width .22s ease}
.sidebar-toggle{
  position:absolute;right:-13px;top:84px;z-index:7;
  width:26px;height:42px;border-radius:0 9px 9px 0;
  border:1px solid var(--line);border-left:0;background:#fff;color:#627087;
  font:700 18px Manrope;line-height:1;cursor:pointer;padding:0;
  box-shadow:2px 0 8px #1c253510;display:grid;place-items:center;
}
.sidebar-toggle:hover,.sidebar-reopen:hover,.sidebar-top-toggle:hover{background:#f3f6fb;color:var(--ink)}
.sidebar-reopen{
  position:fixed;left:0;top:88px;z-index:8;
  width:28px;height:48px;border-radius:0 10px 10px 0;
  border:1px solid var(--line);border-left:0;background:#fff;color:#627087;
  font:700 18px Manrope;cursor:pointer;padding:0;
  box-shadow:2px 0 10px #1c253514;display:none;place-items:center;
}
.sidebar-top-toggle{
  width:32px;height:32px;border-radius:8px;border:1px solid var(--line);
  background:#f7f9fc;color:#627087;font-size:14px;cursor:pointer;padding:0;
  display:inline-grid;place-items:center;margin-right:2px;flex:0 0 auto;
}
body.sidebar-collapsed .sidebar{transform:translateX(-100%);pointer-events:none}
body.sidebar-collapsed main{margin-left:0!important;width:100%!important}
body.sidebar-collapsed .sidebar-reopen{display:grid}
body.sidebar-collapsed .sidebar-toggle{display:none}
@media(max-width:720px){
  .sidebar-toggle,.sidebar-reopen{display:none!important}
  body.sidebar-collapsed main{margin:0!important;width:100%!important}
}

/* Scan QR modal — keep camera preview inside the dialog */
.modal-backdrop{z-index:40}
.scan-modal{width:min(480px,92vw);max-height:min(92vh,760px);overflow:auto;box-sizing:border-box}
.scan-modal h2{margin-right:28px}
.scan-modal>.subtle{margin:8px 0 14px}
.scan-frame{
  position:relative;width:100%;aspect-ratio:4/3;max-height:min(42vh,320px);
  margin:0;border-radius:12px;overflow:hidden;background:#101827;border:1px solid #d9e0eb;
}
.scan-frame video{
  display:block;width:100%;height:100%;object-fit:cover;object-position:center;background:#101827;
}
.scan-status{margin:12px 0 0;color:#5d6b82;font-size:13px;min-height:20px}
.scan-modal .modal-search{margin-top:12px}
.scan-modal #scanManualSubmit{width:100%;margin-top:4px}
