:root{--sidebar-width:260px;--header-height:72px;--ink:#17152c}
.app-header{position:sticky;top:0;z-index:40;height:var(--header-height);background:#fff;border-bottom:1px solid var(--line)}.app-header-inner{height:100%;max-width:1480px;margin:auto;padding:0 28px;display:flex;justify-content:space-between;align-items:center;gap:20px}.app-header-brand,.app-header-actions,.app-brand{display:flex;align-items:center;gap:12px}.app-brand{color:var(--p);font-weight:850;font-size:20px;text-decoration:none;white-space:nowrap}.app-logo{background:var(--p);color:#fff;width:39px;height:39px;border-radius:12px;display:grid;place-items:center;font-size:15px}.app-header-context{font-size:13px;color:var(--muted)}.app-header-actions form{margin:0}.app-header-button{border:0;border-radius:10px;padding:10px 15px;color:var(--p);background:#f0eef9;font:inherit;font-size:13px;font-weight:750;display:inline-flex;align-items:center;gap:8px;cursor:pointer;text-decoration:none}.app-header-button.primary{color:#fff;background:var(--p)}.menu-toggle,.menu-close{display:none;border:0;cursor:pointer;font:inherit}.menu-toggle{width:40px;height:40px;border-radius:10px;background:#f0eef9;color:var(--p);align-items:center;justify-content:center}.menu-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.app-navigation{position:fixed;right:0;top:0;width:var(--sidebar-width);height:100vh;height:100dvh;z-index:60;outline:none}.app-navigation .panel-sidebar{position:static;border:0;border-radius:0;width:100%;height:100%;padding:22px 12px 18px;display:flex;flex-direction:column;box-shadow:-4px 0 24px #251c6010;overflow-y:auto;overscroll-behavior:contain}.app-navigation .sidebar-heading{padding:6px 10px 23px;flex-shrink:0}.app-navigation .panel-sidebar nav{display:block;flex:1}.app-navigation .side-link{padding:12px;margin:5px 0;font-size:14px;text-decoration:none}.app-navigation .sidebar-foot{display:block;margin-top:20px;flex-shrink:0}.app-shell .app-header,.app-shell .app-content,.app-shell .app-footer{margin-right:var(--sidebar-width)}.app-content{min-width:0}.app-shell .admin-layout{display:block}.app-shell .admin-layout>.stack{display:grid;gap:18px;min-width:0}.app-shell .container{width:min(1280px,calc(100% - 48px))}.app-shell .page{padding-top:30px}.app-shell .page-title{margin-bottom:24px}.menu-backdrop{position:fixed;inset:0;border:0;background:#13102480;backdrop-filter:blur(3px);z-index:50;cursor:pointer}.menu-backdrop[hidden]{display:none}.menu-toggle:focus-visible,.menu-close:focus-visible,.app-header-button:focus-visible,.app-navigation .side-link:focus-visible{outline:3px solid #a49ce7;outline-offset:3px}.app-navigation .side-link[aria-current=page]{background:#fff;color:var(--p);font-weight:800}
/* Shared navigation must not depend on the page-specific stylesheet. */
.app-navigation .panel-sidebar{color:#fff;font-family:Vazirmatn,Tahoma,sans-serif;line-height:1.8}
.app-navigation .sidebar-heading b{color:#fff;font-weight:800}
.app-navigation .side-link,.app-navigation .side-link:visited{display:flex;align-items:center;gap:10px;border-radius:12px;color:#dedbf7;font-family:inherit;font-size:14px;font-weight:700;line-height:1.8;text-decoration:none}
.app-navigation .side-link:hover,.app-navigation .side-link:focus-visible{background:#ffffff16;color:#fff}
.app-navigation .side-link.active,.app-navigation .side-link[aria-current=page]{background:#fff;color:var(--p);font-weight:800}
.selection-count{font-size:11px;color:var(--muted);font-weight:600;background:#f2f1f8;border-radius:7px;padding:4px 8px;white-space:nowrap;margin-right:6px}.selection-list{border:1px solid var(--line);border-radius:12px;overflow:auto;max-height:420px;scrollbar-width:thin;scrollbar-color:#c7c2df #f5f4fa}.selection-list:focus-visible{outline:2px solid var(--p2);outline-offset:3px}.selection-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;text-align:right}.selection-table thead th{position:sticky;top:0;z-index:1;background:#f7f7fb;color:var(--muted);font-size:12px;font-weight:650;padding:11px 14px;border-bottom:1px solid var(--line)}.selection-table thead th:first-child{width:36%}.selection-table th[scope=row]{font-weight:700;font-size:14px;overflow-wrap:anywhere}.selection-table tbody td,.selection-table tbody th{padding:12px 14px;border-bottom:1px solid #f0eef6;vertical-align:middle}.selection-table tbody tr:last-child>*{border-bottom:0}.selection-table td{font-size:13px}.selection-table small{font-size:11px;color:var(--muted);font-weight:500}.selection-table .selection-subtotal{font-weight:800;color:var(--p)}.selection-table .selection-kind{font-size:11px;padding:4px 8px;white-space:normal;line-height:1.7}.selection-table .selection-base{background:#faf9ff}.selection-table tbody tr:hover{background:#f9f8fc}
.verification-upload{margin-top:24px;border-top:1px solid var(--line);padding-top:24px}.upload-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.upload-heading h3{margin:0 0 6px;font-size:18px}.upload-heading p{font-size:13px;color:var(--muted);margin:0}.document-drop{position:relative;background:linear-gradient(135deg,#fcfbff,#f5f3fd);border:2px dashed #ccc6e7;border-radius:18px;transition:border-color .15s,background .15s}.document-drop:hover,.document-drop:focus-within,.document-drop.is-dragging{border-color:var(--p);background:#efebff}.document-drop.is-dragging{box-shadow:0 0 0 5px #eeebfa}.document-drop-label{display:flex;flex-direction:column;align-items:center;gap:9px;padding:28px 20px;margin:0;text-align:center;cursor:pointer}.document-drop-label strong{font-size:17px;font-weight:800}.document-drop-label>span:not(.upload-symbol):not(.upload-browse){font-size:13px;color:var(--muted)}.upload-symbol{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:#eae5ff;color:var(--p);margin-bottom:4px}.upload-symbol svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.upload-browse{background:#fff;border:1px solid #ddd7ef;border-radius:9px;color:var(--p);font-size:13px;font-weight:750;padding:8px 16px;margin-top:3px}.document-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;opacity:0;border:0!important;top:50%;left:50%}.upload-help{font-size:12px;color:var(--muted);margin:10px 0}.document-preview{display:flex;gap:16px;align-items:center;padding:14px;border:1px solid #d9eadd;border-radius:14px;background:#f8fcf9;margin-top:15px}.document-preview[hidden]{display:none}.document-preview img{width:90px;height:72px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:8px}.document-preview>div{flex:1;min-width:0}.document-preview b{display:block;font-size:14px;overflow-wrap:anywhere}.document-preview span,.document-preview small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.upload-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}.upload-actions p{font-size:12px;color:var(--muted);margin:0}.upload-actions button{white-space:nowrap}#document-client-error[hidden]{display:none}
@media(min-width:901px) and (max-width:1200px){.booking-page .grid{grid-template-columns:1fr}.booking-page .summary{position:static}.booking-page .boards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.app-shell .app-header,.app-shell .app-content,.app-shell .app-footer{margin-right:0}.app-navigation{width:min(290px,85vw);transform:translateX(100%);visibility:hidden;transition:transform .2s,visibility .2s}.menu-open .app-navigation{transform:translateX(0);visibility:visible}.menu-open{overflow:hidden}.menu-toggle{display:flex}.menu-close{display:grid;place-items:center;position:absolute;left:13px;top:17px;width:32px;height:32px;z-index:1;background:#ffffff17;color:#fff;border-radius:9px;font-size:25px;line-height:1}.app-navigation .panel-sidebar{padding-top:24px}.app-navigation .sidebar-heading{padding-left:30px}.app-header-context{display:none}.app-header-inner{padding:0 20px}.app-shell .container{width:calc(100% - 32px)}.app-shell .page{padding-top:24px}.app-shell .admin-layout>.stack{gap:16px}}
@media(max-width:600px){:root{--header-height:64px}.app-header-inner{padding:0 12px;gap:10px}.app-brand{font-size:16px;gap:8px}.app-logo{width:32px;height:32px;font-size:12px;border-radius:9px}.app-header-brand{gap:8px}.app-header-button{padding:8px 11px;font-size:12px}.app-header-button>span{display:none}.app-shell .container{width:calc(100% - 24px)}.selection-list{max-height:380px}.selection-table,.selection-table tbody{display:block}.selection-table thead{display:none}.selection-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 14px;border-bottom:1px solid var(--line)}.selection-table tbody tr:last-child{border-bottom:0}.selection-table tbody td,.selection-table tbody th{padding:0;border:0;min-width:0}.selection-table tbody th{grid-column:1;font-size:14px;align-self:center}.selection-table .selection-type{grid-column:2;grid-row:1;align-self:start}.selection-table td[data-label]{grid-column:1/-1;display:flex;justify-content:flex-end;gap:5px;align-items:center;font-size:12px}.selection-table td[data-label]::before{content:attr(data-label);margin-left:auto;color:var(--muted);font-size:11px;font-weight:500}.selection-count{font-size:10px}.upload-heading{align-items:flex-start;flex-wrap:wrap}.upload-heading h3{font-size:16px}.document-drop-label{padding:24px 12px}.document-drop-label strong{font-size:16px}.document-preview{gap:10px;flex-wrap:wrap}.document-preview img{width:72px;height:64px}.document-preview .btn{padding:7px 10px;font-size:12px}.upload-actions{flex-direction:column;align-items:stretch}.upload-actions p{text-align:center}.selection-heading{align-items:center}.selection-heading .sub{font-size:12px}}
.booking-page .main{container-type:inline-size}.booking-page .review-items{grid-template-columns:1fr;gap:8px;max-height:420px;overflow:auto;padding:2px}.booking-page .review-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"title kind subtotal" "rate kind subtotal";gap:4px 14px;padding:12px}.booking-page .review-item h4{grid-area:title;margin:0;font-size:13px;line-height:1.8}.booking-page .review-item-kind{grid-area:kind;align-self:center;justify-self:start;font-size:10px}.booking-page .review-item-rate{grid-area:rate;margin:0;font-size:11px}.booking-page .review-item-subtotal{grid-area:subtotal;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:3px;border:0;padding:0}.booking-page .review-item-subtotal span{font-size:10px}.booking-page .review-item-subtotal b{font-size:13px}@container(max-width:450px){.booking-page .review-item{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title kind" "rate subtotal";gap:6px 10px}.booking-page .review-item-subtotal span{display:none}}

.app-header{box-shadow:0 3px 18px #25205e05}.app-header-context{display:flex;align-items:center;gap:8px;background:#f7f6fc;border:1px solid #eeecf7;padding:8px 13px;border-radius:999px;font-weight:600}.header-context-dot{width:7px;height:7px;border-radius:50%;background:#8176ca}.header-account{display:flex;align-items:center;gap:10px;padding:6px 10px;border:1px solid #e7e3f3;border-radius:14px;background:#faf9ff;text-decoration:none;color:var(--ink);min-width:0;transition:background .15s,border-color .15s}.header-account:hover{background:#f0edfc;border-color:#c9c0e6}.header-account:focus-visible{outline:3px solid #a49ce7;outline-offset:3px}.header-avatar{width:38px;height:38px;flex-shrink:0;display:grid;place-items:center;background:linear-gradient(135deg,#423994,#6d60b7);color:#fff;border-radius:12px;font-size:14px;font-weight:800}.header-account-info{min-width:0;display:flex;flex-direction:column;gap:2px}.header-account-info strong{font-size:13px;font-weight:800;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-account-info small{font-size:10px;color:var(--muted)}.header-account-arrow{width:15px;height:15px;fill:none;stroke:#8a82a4;stroke-width:1.7;flex-shrink:0}.header-logout{background:#fff;color:#655c7c;border:1px solid #e8e4f1}.header-logout:hover{background:#fff1f3;color:#a92e46;border-color:#efced5}.header-logout svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media(max-width:1100px){.app-header-context{display:none}.header-account-info strong{max-width:180px}}@media(max-width:600px){.app-header-actions{gap:7px}.header-account{padding:4px 6px;gap:6px;border-radius:11px}.header-avatar{width:30px;height:30px;border-radius:9px;font-size:12px}.header-account-info strong{font-size:11px;max-width:125px}.header-account-info small{font-size:9px}.header-account-arrow{display:none}.header-logout{padding:8px}.app-header-inner{gap:6px}}@media(max-width:420px){.app-brand>span:last-child{display:none}.header-account-info strong{max-width:150px}.app-header-brand{gap:6px}}.header-brand-image{width:126px;height:42px;object-fit:contain}.sidebar-emblem img{width:38px;height:32px;object-fit:contain}.auth-brand-image{display:block;width:172px;height:49px;object-fit:contain;margin:0 0 16px}.legal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px;padding:16px 0;font-size:13px}.legal-links a{color:#51469b}.legal-page{max-width:940px;margin:auto}.legal-document{padding:28px 34px;line-height:2.15}.legal-document h2{font-size:18px;margin:24px 0 8px}.legal-document h2:first-child{margin-top:0}.legal-document p{color:#52566c;font-size:14px}.legal-document a,.policy-check a{color:#43338b;text-decoration:underline;text-underline-offset:4px}.cookie-consent{position:fixed;bottom:18px;left:22px;right:22px;max-width:940px;margin:auto;z-index:1200;background:#fff;border:1px solid #ddd7f3;border-radius:18px;padding:20px 24px;box-shadow:0 12px 60px #17133535;display:flex;align-items:center;gap:24px;font-size:13px;line-height:1.9}.cookie-consent p{margin:5px 0;color:#626179}.cookie-consent a{color:#51469b;text-decoration:underline}.cookie-consent form{display:flex;flex-direction:column;gap:9px;flex-shrink:0}.cookie-consent .btn,.cookie-settings .btn{font-size:13px;padding:11px 16px}.cookie-settings{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.policy-check{align-items:flex-start!important}.policy-check input{flex-shrink:0;margin-top:4px}@media(max-width:600px){.header-brand-image{width:90px;height:32px}.legal-document{padding:18px}.cookie-consent{bottom:8px;left:8px;right:8px;padding:14px;display:block;max-height:65vh;overflow:auto}.cookie-consent form{flex-direction:row;flex-wrap:wrap;margin-top:12px}.cookie-consent form .btn{flex:1;font-size:11px}.legal-document h2{font-size:16px}}
.discount-box{padding:18px;border:1px dashed #beb4de;border-radius:14px;background:#faf9fe;margin-bottom:18px}.discount-box p{font-size:12px;color:#827a96;margin:6px 0}.discount-box form{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.discount-box input[name=code]{flex:1;min-width:140px;height:44px;border:1px solid #ddd7ec;border-radius:10px;padding:10px}.discount-box .btn{font-size:12px;padding:10px 14px}.discount-summary{display:grid;grid-template-columns:1fr auto;gap:10px;font-size:13px;padding:14px 0}.discount-saving{color:#14805a}.discount-box .field-error{color:#c43251}
/* One outline icon family for both panels; inherit active and hover colors. */
.app-navigation .side-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 24px;opacity:1}.app-navigation .side-icon svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.app-navigation .sidebar-emblem img{filter:brightness(0) invert(1)}
.header-avatar .user-avatar-icon{display:block;width:22px;height:22px}@media(max-width:600px){.header-avatar .user-avatar-icon{width:20px;height:20px}}
