@import"https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap"layer(base);/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--color-gray-50:#f8fafc;--color-gray-100:#f1f5f9;--color-gray-200:#e6ebf1;--color-gray-300:#cbd5e1;--color-gray-400:#94a3b8;--color-gray-500:#64748b;--color-gray-600:#475569;--color-gray-700:#334155;--color-gray-800:#1e293b;--color-gray-900:#0f172a;--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-semibold:600;--radius-md:2px;--radius-lg:3px;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--font-outfit:Outfit, sans-serif;--font-serif:Outfit, sans-serif;--color-ink:#0f172a;--color-cream:#f6f8fb;--color-brand-25:#f5f6ff;--color-brand-50:#eef1ff;--color-brand-100:#e0e5ff;--color-brand-200:#c6cfff;--color-brand-300:#a3b0fc;--color-brand-400:#808cf8;--color-brand-500:#6366f1;--color-brand-600:#4f46e5;--color-brand-700:#4338ca;--color-brand-900:#302b82;--color-success-50:#ecfdf3;--color-success-100:#d1fadf;--color-success-200:#a6f4c5;--color-success-400:#32d583;--color-success-500:#12b76a;--color-success-600:#039855;--color-success-700:#027a48;--color-error-50:#fef3f2;--color-error-300:#fda29b;--color-error-400:#f97066;--color-error-500:#f04438;--color-error-600:#d92d20;--color-error-700:#b42318;--color-warning-50:#fffaeb;--color-warning-100:#fef0c7;--color-warning-200:#fedf89;--color-warning-500:#f79009;--color-warning-700:#b54708;--color-theme-purple-500:#7c6cf5;--shadow-theme-xs:0px 1px 2px 0px #0f172a0a;--shadow-theme-sm:0px 1px 2px 0px #0f172a0d;--shadow-theme-md:0px 4px 10px -3px #0f172a14, 0px 2px 4px -2px #0f172a0a;--shadow-theme-lg:0px 10px 24px -6px #0f172a1f, 0px 3px 6px -3px #0f172a0d;--shadow-theme-xl:0px 18px 40px -8px #0f172a2e, 0px 6px 12px -4px #0f172a0f;--shadow-focus-ring:0px 0px 0px 3px #4f46e52e}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,:after,:before{border-color:var(--color-gray-200,currentColor)}::file-selector-button{border-color:var(--color-gray-200,currentColor)}body{color:var(--color-gray-800);background-color:var(--color-cream);font-family:Outfit,sans-serif}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:375px){.container{max-width:375px}}@media (min-width:425px){.container{max-width:425px}}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.w-full{width:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.rounded{border-radius:.25rem}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-gray-200{border-color:var(--color-gray-200)}.bg-brand-600{background-color:var(--color-brand-600)}.bg-error-600{background-color:var(--color-error-600)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.font-\[inherit\]{font-family:inherit}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[13px\]{font-size:13px}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-gray-700{color:var(--color-gray-700)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.shadow-theme-xs{--tw-shadow:0px 1px 2px 0px var(--tw-shadow-color,#0f172a0a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition\!{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events!important;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))!important;transition-duration:var(--tw-duration,var(--default-transition-duration))!important}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:bg-brand-700:hover{background-color:var(--color-brand-700)}.hover\:bg-error-700:hover{background-color:var(--color-error-700)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}}.disabled\:cursor-default:disabled{cursor:default}.disabled\:opacity-55:disabled{opacity:.55}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}:root{--blue: var(--color-brand-600);--blue-dark: var(--color-brand-700);--gold: var(--color-brand-500);--ink: var(--color-brand-600);--bg: var(--color-cream);--line: var(--color-gray-200);--text: var(--color-gray-800);--muted: var(--color-gray-500);--surface: #ffffff;--surface-muted: var(--color-gray-50);--radius: 2px;--radius-sm: 2px;--radius-md: 3px;--radius-lg: 3px;--border-w: 1px;--sidebar-w: 250px;--sidebar-collapsed-w: 74px;--topbar-h: 60px;--control-h: 38px}.page-head h2,.section-card>h3,.modal-head h3,.login-card h1,.profile-info h2,.edition-card h3,.brand-text strong{font-family:var(--font-outfit);letter-spacing:-.01em}.page-head h2{font-size:22px;font-weight:700}.money,.kpi-value,.grid td.num,.grid th.num{font-family:Outfit,system-ui,sans-serif;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"lnum" 1;letter-spacing:-.005em}.money{font-weight:600;white-space:nowrap}.money-pos{color:var(--color-success-700)}.money-neg{color:var(--color-error-600)}.money-muted{color:var(--muted)}.money-sm{font-size:13px;font-weight:500}.money-lg{font-size:22px;font-weight:700}.money-xl{font-size:28px;font-weight:700}.invoice-total-box{display:flex;gap:24px;align-items:baseline;justify-content:flex-end;margin-top:12px;padding:12px 16px;background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius);flex-wrap:wrap}.invoice-total-box .ttc{display:flex;align-items:baseline;gap:10px}.invoice-total-box .ttc>span{font-family:var(--font-serif);font-size:16px;color:var(--color-ink)}*{box-sizing:border-box}svg.lucide{vertical-align:-.18em;flex-shrink:0}body{margin:0;font-family:Outfit,system-ui,sans-serif;color:var(--text);background:var(--bg);font-size:14px;-webkit-font-smoothing:antialiased}a{color:var(--color-brand-600)}.center,.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center}.app{display:flex;height:100vh;overflow:hidden;background:var(--bg)}.sidebar{width:var(--sidebar-w);background:var(--surface);color:var(--text);display:flex;flex-direction:column;padding:0;height:100vh;overflow:hidden;flex-shrink:0;transition:width .22s ease;border-right:1px solid var(--line)}.sidebar.collapsed{width:var(--sidebar-collapsed-w)}.brand{display:flex;align-items:center;gap:11px;padding:16px 16px 14px;flex-shrink:0;border-bottom:1px solid var(--line)}.brand-logo{width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-lg);background:var(--color-brand-600);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;color:#fff;font-family:var(--font-outfit);letter-spacing:-.02em}.brand-text{display:flex;flex-direction:column;min-width:0;line-height:1.2}.brand-text strong{font-size:15px;font-weight:700;white-space:nowrap;color:var(--color-gray-900);letter-spacing:-.01em}.brand-text small{color:var(--muted);font-size:10.5px;white-space:nowrap;letter-spacing:.5px;text-transform:uppercase}.sidebar.collapsed .brand-text{display:none}.sidebar nav{display:flex;flex-direction:column;flex:1;overflow-y:auto;min-height:0;padding:8px 12px 12px;gap:1px}.sidebar nav::-webkit-scrollbar{width:5px}.sidebar nav::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius)}.navlink{color:var(--color-gray-600);text-decoration:none;display:flex;align-items:center;gap:10px;padding:8px 11px;border-radius:var(--radius-lg);font-size:13.5px;font-weight:500;white-space:nowrap;position:relative;transition:background .13s,color .13s}.navlink .nav-icon{flex-shrink:0;color:var(--color-gray-400);transition:color .13s}.navlink:hover{background:var(--color-gray-50);color:var(--color-gray-900)}.navlink:hover .nav-icon{color:var(--color-gray-600)}.navlink.active{background:var(--color-brand-50);color:var(--color-brand-700);font-weight:600}.navlink.active:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:3px;border-radius:0 var(--radius) var(--radius) 0;background:var(--color-brand-600)}.navlink.active .nav-icon{color:var(--color-brand-600)}.sidebar.collapsed .navlink{justify-content:center;padding:9px}.sidebar.collapsed .navlink.active:before{display:none}.sidebar.collapsed .navlink span.nav-label{display:none}@keyframes syncSlide{0%{transform:translate(-120%)}to{transform:translate(320%)}}.sync-bar-anim{animation:syncSlide 1.1s ease-in-out infinite;border-radius:3px}@media (prefers-reduced-motion: reduce){.sync-bar-anim{animation:none;width:100%!important;opacity:.6}}.nav-badge{margin-left:auto;flex-shrink:0;min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-error-500);color:#fff;font-size:11px;font-weight:700;border-radius:9999px;font-variant-numeric:tabular-nums}.nav-badge-info{background:var(--blue)}.sidebar.collapsed .nav-badge{position:absolute;top:4px;right:6px;margin:0;min-width:15px;height:15px;font-size:9px;padding:0 3px}.navlink{position:relative}.nav-section{padding:15px 12px 6px;font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:var(--color-gray-400)}.nav-section-abbr{display:none}.sidebar.collapsed .nav-section{text-align:center;padding:12px 4px 5px;letter-spacing:.5px;font-size:11px}.sidebar.collapsed .nav-section-full{display:none}.sidebar.collapsed .nav-section-abbr{display:inline}.sidebar-footer{padding:12px;border-top:1px solid var(--line);flex-shrink:0}.user-card{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--radius-lg);background:var(--color-gray-50)}.user-card .u-avatar{width:34px;height:34px;border-radius:50%;flex-shrink:0;background:var(--color-brand-100);color:var(--color-brand-700);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}.user-card .u-meta{min-width:0;flex:1;line-height:1.25}.user-card .u-meta div{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-card .u-meta small{color:var(--muted);font-size:11px}.user-card .u-logout{background:none;border:0;color:var(--muted);cursor:pointer;padding:6px;border-radius:var(--radius);display:flex;align-items:center}.user-card .u-logout:hover{background:var(--color-gray-100);color:var(--color-error-600)}.sidebar.collapsed .user-card{flex-direction:column;gap:6px}.sidebar.collapsed .user-card .u-meta{display:none}.content{flex:1;display:flex;flex-direction:column;min-width:0;height:100vh}.topbar{flex-shrink:0;height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:0 22px;position:sticky;top:0;z-index:30;box-shadow:var(--shadow-theme-xs)}.hamburger,.collapse-btn{background:none;border:1px solid var(--line);border-radius:var(--radius);width:38px;height:38px;cursor:pointer;color:var(--color-gray-600);display:flex;align-items:center;justify-content:center}.hamburger{display:none}.collapse-btn:hover,.hamburger:hover{background:var(--color-gray-50);color:var(--text)}.collapse-btn{display:none}@media (min-width: 861px){.collapse-btn{display:flex}}.topbar-title{display:none;font-weight:700;color:var(--blue-dark)}.topbar-brand{font-weight:700;color:var(--color-gray-800);font-size:15px}.topbar-brand small{display:block;font-weight:500;color:var(--muted);font-size:12px}.sidebar-overlay{display:none}.page{padding:24px;overflow:auto;flex:1}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:12px;flex-wrap:wrap}.page-head h2{margin:0;font-size:22px;font-weight:700;color:var(--color-gray-900);display:flex;align-items:center;gap:10px}.page-head h2 .ph-icon{color:var(--blue);display:inline-flex}.page-head .ph-sub{margin:3px 0 0;font-size:13px;color:var(--muted);font-weight:400}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.badge{font-size:12px;font-weight:600;padding:3px 10px;border-radius:var(--radius);background:var(--color-gray-100);color:var(--color-gray-600);display:inline-flex;align-items:center;gap:5px}.badge-green{background:var(--color-success-50);color:var(--color-success-700)}.badge-amber{background:var(--color-warning-50, #fef0c7);color:var(--color-warning-700, #b54708)}.badge-seminar{background:#efe9ff;color:#6941c6}.sup-tag{display:inline-flex;align-items:center;gap:8px;font-weight:500;white-space:nowrap}.sup-tag .sup-ic{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius);background:#1f6fb21a;color:#1f6fb2;flex-shrink:0}.status-badge,.badge{white-space:nowrap}.gl-tag{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--radius);font-size:12px;font-weight:600;white-space:nowrap}.gl-tag.gl-in{background:var(--color-success-50);color:var(--color-success-700)}.gl-tag.gl-out{background:#fee4e2;color:#b42318}.gl-tag.gl-int{background:#efe9ff;color:#6941c6}.badge-yellow{background:var(--color-warning-50);color:var(--color-warning-700)}.badge-red{background:var(--color-error-50);color:var(--color-error-700)}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;vertical-align:middle}.dot-green{background:var(--color-success-500)}.dot-yellow{background:var(--color-warning-500)}.dot-red{background:var(--color-error-500)}.dot-grey{background:var(--color-gray-400)}.btn{background:var(--ink);color:#fff;border:0;padding:0 16px;min-height:var(--control-h);border-radius:var(--radius);cursor:pointer;font-size:14px;font-weight:600;font-family:inherit;box-shadow:var(--shadow-theme-xs);display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:background .15s}.btn:hover{background:var(--color-brand-700)}.btn:disabled{opacity:.55;cursor:default;box-shadow:none}.btn-sm{background:var(--surface);border:1px solid var(--line);padding:7px 12px;border-radius:var(--radius);cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;color:var(--color-gray-700);display:inline-flex;align-items:center;gap:6px;transition:background .15s,border-color .15s}.btn-sm:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-300)}.btn-sm:disabled{opacity:.5;cursor:default}.btn-link{background:none;border:0;color:var(--color-brand-600);cursor:pointer;padding:2px 0;text-align:left;font-family:inherit;font-size:14px;font-weight:500}.btn-link:hover{color:var(--color-brand-700);text-decoration:underline}.btn-link:disabled{color:var(--color-gray-400);cursor:default;text-decoration:none}.btn-link.danger{color:var(--color-error-600)}input,select,textarea{padding:8px 11px;min-height:var(--control-h);border:var(--border-w) solid var(--color-gray-300);border-radius:var(--radius);font-size:14px;width:100%;font-family:inherit;color:var(--text);background:var(--surface);transition:border-color .15s,box-shadow .15s}textarea{min-height:72px}input[type=checkbox],input[type=radio]{width:auto;height:auto;min-height:0;padding:0;margin:0;accent-color:var(--color-brand-600);cursor:pointer;flex:none}input::placeholder,textarea::placeholder{color:var(--color-gray-400)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-brand-400);box-shadow:var(--shadow-focus-ring)}input:disabled,select:disabled{background:var(--color-gray-50);color:var(--muted)}textarea{font-family:inherit}label{display:block;font-size:12.5px;font-weight:500;color:var(--color-gray-600);margin-bottom:5px}.field{margin-bottom:14px}.error{color:var(--color-error-600);margin:8px 0;font-size:13px}.field.has-error input,.field.has-error textarea,.field.has-error select,.field.has-error .combobox-input,.field.has-error .ui-select-trigger,.field.has-error .input-suffix input{border-color:var(--color-error-400, #f97066);box-shadow:0 0 0 3px #f044381f}.field-error{display:block;margin-top:4px;color:var(--color-error-600);font-size:12px;font-weight:500}.ef-sec{border:1px solid var(--line);border-radius:var(--radius);padding:15px 16px;margin-bottom:14px;background:var(--surface)}.ef-sec-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.ef-sec-ic{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius);flex-shrink:0}.ef-sec-titles{flex:1;min-width:0}.ef-sec-titles h4{margin:0;font-size:14px;font-weight:700;color:var(--color-gray-900)}.ef-sec-titles p{margin:2px 0 0;font-size:12.5px;color:var(--muted);line-height:1.35}.ef-note{display:flex;align-items:center;gap:7px;margin-top:10px;padding:8px 11px;border-radius:var(--radius);font-size:12.5px;background:var(--color-brand-50);color:var(--color-brand-700)}.ef-note.warn{background:var(--color-warning-50, #fffaeb);color:var(--color-warning-700, #b54708)}.ef-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);font-size:13px}.menu-card{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin-top:10px;background:var(--color-gray-50)}.menu-card.building{background:var(--color-brand-50);border-color:var(--color-brand-200, #c7d7ea)}.menu-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13.5px}.menu-card-head>span{display:inline-flex;align-items:center;gap:6px}.menu-card-body{margin-top:10px}.menu-prod{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}.menu-prod:last-child{border-bottom:0}.menu-prod-name{display:inline-flex;align-items:center;gap:8px}.menu-prod-total{font-weight:700;border-top:1px dashed var(--line);border-bottom:0;margin-top:2px;padding-top:8px}.chip.mini{padding:1px 6px;font-size:10.5px}.mb-label{display:block;font-size:12.5px;font-weight:500;color:var(--color-gray-600);margin-bottom:6px}.mb-grid{display:grid;grid-template-columns:1fr 110px 84px 84px 34px;gap:6px;align-items:center;margin-bottom:6px}.mb-grid.mb-head{margin-bottom:4px}.mb-grid.mb-head span{font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:600}.mb-grid .num{text-align:right}.ef-summary{display:flex;margin-top:4px}@media (max-width: 560px){.mb-grid{grid-template-columns:1fr 70px 70px 34px}.mb-grid>*:nth-child(2){display:none}}.day-list{display:flex;flex-direction:column;gap:10px}.day-block{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--color-gray-50)}.day-row{display:grid;grid-template-columns:150px 1fr 130px 34px;gap:8px;align-items:center}.day-badge{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--color-gray-700);white-space:nowrap}.day-preview{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}.order-cards{display:flex;flex-direction:column;gap:10px}.order-card{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;background:var(--surface)}.order-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.order-amt{max-width:150px}.order-items{display:flex;flex-direction:column;gap:4px}.order-item{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;font-size:13px;padding:4px 0;border-top:1px dashed var(--line)}.order-item:first-child{border-top:0}.oi-name{font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis}.oi-qty{font-weight:600;color:var(--color-brand-700);white-space:nowrap}.oi-unit{white-space:nowrap;font-size:12px}.oi-total{text-align:right;min-width:70px}.order-total-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:var(--radius);background:var(--color-gray-50);font-weight:700}@media (max-width: 520px){.order-item{grid-template-columns:1fr auto}.order-item .oi-unit{display:none}}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.cat-card{display:flex;flex-direction:column;padding:16px}.cc-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.cc-title{display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:700;color:var(--color-gray-900);min-width:0}.cc-title{overflow:hidden}.cc-ic{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius);flex-shrink:0}.cc-price{margin-top:12px}.cc-price .kpi-label{margin-bottom:2px}.cc-note{font-size:12.5px;margin-top:8px}.cc-actions{display:flex;align-items:center;gap:6px;margin-top:auto;padding-top:12px}.cat-card>.cc-actions{border-top:1px solid var(--line);margin-top:14px}.menu-prices{display:flex;gap:20px;margin-top:12px;align-items:flex-end}.menu-prices .kpi-label{margin-bottom:2px}.margin-pill{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;margin-top:10px;padding:3px 10px;border-radius:var(--radius);font-size:12px;font-weight:600}.margin-pill.pos{background:var(--color-success-50);color:var(--color-success-700)}.margin-pill.neg{background:var(--color-error-50);color:var(--color-error-700)}.mp-list{display:flex;flex-direction:column;gap:10px}.mp-item{border:1px solid var(--line);border-radius:var(--radius);padding:11px 12px;background:var(--surface)}.mp-row1{display:flex;gap:8px;align-items:center}.mp-row1>input:first-child{flex:1;min-width:0}.mp-cat{width:140px;flex-shrink:0}.mp-seg{flex-shrink:0}.mp-seg button{padding:7px 9px;font-size:12px}.mp-row2{display:flex;flex-wrap:wrap;gap:10px;margin-top:9px}.mp-field{flex:1 1 140px;min-width:128px}.mp-field.mp-sup{flex:1.4 1 170px}.mp-field.mp-qty{flex:0 0 96px;min-width:96px}.mp-field>label{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);font-weight:600;margin-bottom:3px}@media (max-width: 560px){.mp-row1{flex-wrap:wrap}.mp-cat{width:100%}.mp-field{flex:1 1 100%}}.po-lines{display:flex;flex-direction:column;gap:8px}.po-line{display:grid;grid-template-columns:minmax(0,1fr) 78px 132px 96px 34px;gap:8px;align-items:center}.po-head{margin-bottom:2px}.po-head span{font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:600;padding:0 2px}.po-head span.num,.po-line input.num{text-align:right}.po-total{text-align:right;font-size:13px}@media (max-width: 560px){.po-head{display:none}.po-line{grid-template-columns:1fr 1fr;gap:6px;padding:10px;border:1px solid var(--line);border-radius:var(--radius);align-items:start}.po-line>*:nth-child(1){grid-column:1 / -1}.po-line>*:last-child{grid-column:1 / -1;justify-self:end}}@media (max-width: 640px){.day-row{grid-template-columns:1fr 34px}.day-row .day-badge{grid-column:1 / -1}.day-row .day-menu,.day-row .day-price{grid-column:1 / 2}}.ok{color:var(--color-success-600);margin-left:8px}.muted{color:var(--muted)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-theme-xs)}.surv-grid{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}@media (min-width: 1180px){.surv-grid{grid-template-columns:1fr 1fr}}.surv-card{margin:0}.soldes-legend{background:var(--color-brand-50, #eff4fb);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin-bottom:14px;font-size:12.5px}.soldes-legend .sl-title{font-weight:600;margin-bottom:6px}.soldes-legend ul{margin:0;padding-left:18px;display:grid;grid-template-columns:1fr;gap:3px;color:var(--muted)}@media (min-width: 900px){.soldes-legend ul{grid-template-columns:1fr 1fr}}.soldes-legend b{color:var(--text)}.combo{position:relative;flex:1;min-width:160px}.combo>input{width:100%}.combo-menu{position:absolute;top:100%;left:0;right:0;z-index:40;margin-top:3px;list-style:none;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-theme-lg);max-height:260px;overflow:auto}.combo-menu li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--radius);cursor:pointer;font-size:13px}.combo-menu li:hover{background:var(--color-brand-50, #eff4fb)}.combo-create{color:var(--color-brand-600);font-weight:600;border-top:1px solid var(--line);margin-top:2px}.reopen-meta{font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:6px;margin-bottom:12px}.reopen-impact{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.ri-box{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:2px}.ri-box span{font-size:11px;color:var(--muted);display:inline-flex;align-items:center;gap:4px}.ri-box b{font-size:16px;font-variant-numeric:tabular-nums}.ri-box small{font-size:10.5px;color:var(--muted)}.ri-removed{background:#fef3f2}.ri-removed b{color:#b42318}.ri-added{background:#ecfdf3}.ri-added b{color:#067647}.ri-alert{background:#fef3f2;border-color:#fda29b}.ri-alert b{color:#b42318}.ri-neutral b{color:var(--text)}.surv-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;font-size:12px}.surv-pager-btns{display:flex;align-items:center;gap:8px}.form-row{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end;margin-bottom:16px}.form-row>div{min-width:150px;flex:1 1 150px}.modal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.modal-form-grid .field{margin-bottom:0;min-width:0}.modal-form-grid .full{grid-column:1 / -1}@media (max-width: 560px){.modal-form-grid{grid-template-columns:1fr}}.form-actions{align-self:flex-end}.grid{display:table;width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.grid>thead,.grid>tbody,.grid>tfoot{display:table-row-group}.grid>thead{display:table-header-group}.grid>tfoot{display:table-footer-group}.grid tr{display:table-row}.grid th,.grid td{display:table-cell}.grid th,.grid td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--color-gray-100)}.grid th{background:var(--color-gray-50);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--color-gray-500);border-bottom:1px solid var(--color-gray-200)}.grid thead tr:first-child th:first-child{border-top-left-radius:var(--radius)}.grid thead tr:first-child th:last-child{border-top-right-radius:var(--radius)}.grid tbody tr:last-child td:first-child{border-bottom-left-radius:var(--radius)}.grid tbody tr:last-child td:last-child{border-bottom-right-radius:var(--radius)}.card>.grid,.report-sheet>.grid,.section-card>.grid{width:100%}.card>.grid,.section-card>.grid,.report-sheet>.grid{border:0;border-radius:0}.grid-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);-webkit-overflow-scrolling:touch}.grid-scroll>.grid{border:0;border-radius:0;min-width:100%}.grid-scroll::-webkit-scrollbar{height:8px}.grid-scroll::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:var(--radius)}.grid td.row-actions,.grid td.invoice-actions{white-space:nowrap}.grid tbody tr:last-child td{border-bottom:0}.grid tbody tr:hover td{background:var(--color-gray-50)}.grid tbody tr.line-free td{background:var(--color-success-50)}.grid tbody tr.line-group-head td{font-weight:700;letter-spacing:.4px;background:var(--surface);padding-top:10px;color:var(--muted);font-size:12px;text-transform:uppercase}.grid tbody tr.line-free:hover td{background:var(--color-success-100)}.room-charge-note{display:flex;align-items:center;gap:8px;background:var(--color-success-50);color:var(--color-success-700);border:1px solid var(--color-success-200);border-radius:var(--radius);padding:9px 12px;font-size:13px;margin-bottom:12px}.chip{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;background:var(--color-gray-100);color:var(--color-gray-600);border-radius:var(--radius);padding:3px 9px;margin:2px;font-size:12px;font-weight:500;line-height:1.35;vertical-align:middle}.grid td.num,.grid th.num{text-align:right;white-space:nowrap}.icon-btn{display:inline-flex;align-items:center;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:6px 10px;font-size:12px;font-weight:500;cursor:pointer;color:var(--color-gray-700);font-family:inherit;transition:background .15s,border-color .15s}.icon-btn:hover{background:var(--color-brand-50);border-color:var(--color-brand-300);color:var(--color-brand-700)}.icon-btn.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.icon-btn.primary:hover{background:var(--color-brand-700)}.icon-btn.danger{color:var(--color-error-600)}.icon-btn.danger:hover{background:var(--color-error-50);border-color:var(--color-error-300);color:var(--color-error-700)}.invoice-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.rowmenu{position:relative;display:inline-block}.rowmenu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120}.rowmenu-pop{position:fixed;z-index:121;min-width:200px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-theme-lg);padding:5px}.rowmenu-item{display:flex;align-items:center;gap:9px;width:100%;text-align:left;border:0;background:none;padding:8px 10px;border-radius:var(--radius);cursor:pointer;font-family:inherit;font-size:13px;color:var(--color-gray-700)}.rowmenu-item:hover{background:var(--color-gray-50)}.rowmenu-item.danger{color:var(--color-error-600)}.rowmenu-item.danger:hover{background:var(--color-error-50)}.rowmenu-sep{height:1px;background:var(--color-gray-100);margin:4px 2px}.kpi.clickable{cursor:pointer;transition:box-shadow .15s,transform .05s}.kpi.clickable:hover{box-shadow:var(--shadow-theme-md)}.kpi.clickable.on{box-shadow:0 0 0 2px var(--blue)}.kpi.clickable.on-red{box-shadow:0 0 0 2px var(--color-error-400)}.kpi.clickable.on-green{box-shadow:0 0 0 2px var(--color-success-400)}.payer-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:var(--radius)}.payer-chip.client{background:var(--color-brand-50);color:var(--color-brand-700)}.payer-chip.company{background:#f2e9f7;color:#6b3a8b}.seg-filter{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.seg-filter button{border:0;background:var(--surface);padding:8px 14px;cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;color:var(--color-gray-600);display:inline-flex;align-items:center;justify-content:center;gap:6px}.seg-filter button+button{border-left:1px solid var(--line)}.seg-filter button.on{background:var(--blue);color:#fff}.planning-scroll{overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-theme-xs)}.planning{border-collapse:collapse;width:100%}.planning th,.planning td{border:1px solid var(--color-gray-100);text-align:center;font-size:12px}.planning.view-day th,.planning.view-day td{min-width:240px}.planning.view-week th,.planning.view-week td{min-width:96px}.planning.view-month{table-layout:fixed}.planning.view-month th,.planning.view-month td{min-width:0;padding-left:0;padding-right:0}.planning.view-month .sticky-col{width:90px}.planning.view-month .dow,.planning.view-month .res-label{display:none}.planning thead th{background:var(--color-gray-50);padding:7px 2px;font-weight:600;color:var(--color-gray-600)}.planning .dow{text-transform:capitalize;color:var(--muted);font-size:11px}.planning .dnum{font-size:15px;color:var(--text);font-weight:600}.planning .dhour{font-size:8.5px;color:var(--blue);letter-spacing:.3px;margin-top:1px;font-variant-numeric:tabular-nums;white-space:nowrap}.planning.view-month .dhour{display:none}.planning .dtoday{font-size:8.5px;font-weight:700;color:#fff;background:var(--blue);border-radius:6px;padding:0 5px;margin:2px auto 0;width:fit-content;text-transform:uppercase;letter-spacing:.3px}.planning th.is-weekend,.planning td.is-weekend.free{background:var(--color-gray-50)}.planning th.is-today{background:var(--color-brand-50);box-shadow:inset 0 -3px 0 var(--blue)}.planning td.is-today.free{background:var(--color-brand-25)}.sticky-col{position:sticky;left:0;background:var(--color-gray-50);z-index:2;min-width:150px!important;max-width:150px;text-align:left!important;padding:8px 10px}.room-cell{white-space:nowrap}.room-cell small{color:var(--muted)}.planning-group-row td{border:0;padding:0}.planning-group-head{position:sticky;left:0;z-index:3;text-align:left!important;background:var(--color-gray-100);color:var(--text);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.4px;padding:7px 10px!important;max-width:none!important;border-top:1px solid var(--line)!important}.grid-cell{height:38px;padding:2px;cursor:pointer;vertical-align:top}.grid-cell.free:hover{background:var(--color-brand-50)}.grid-cell.is-past{background:repeating-linear-gradient(45deg,var(--color-gray-50) 0 6px,transparent 6px 12px);cursor:not-allowed}.grid-cell.is-past:hover{background:repeating-linear-gradient(45deg,var(--color-gray-50) 0 6px,transparent 6px 12px)}.grid-cell.occupied{color:#fff;font-weight:600;border-radius:0}.res-label{display:block;padding:3px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--radius);text-shadow:0 1px 1px rgba(0,0,0,.3)}.cell-stack{display:flex;flex-direction:column;gap:1px;height:100%;min-height:34px}.cell-bar{flex:1 1 0;min-height:16px;display:flex;align-items:center;justify-content:space-between;gap:4px;padding:1px 5px;border-radius:2px;overflow:hidden;cursor:pointer;font-weight:600;text-shadow:0 1px 1px rgba(0,0,0,.3)}.cell-bar .res-label{padding:0;flex:1 1 auto}.cell-bar.draggable{cursor:grab}.cell-bar.draggable:active{cursor:grabbing}.cell-bar .rz{position:absolute;top:0;bottom:0;width:7px;cursor:col-resize;z-index:2}.cell-bar .rz-l{left:0}.cell-bar .rz-r{right:0}.cell-bar .rz:hover{background:#ffffff73}.cell-bar{position:relative}.grid-cell.drop-target{outline:1px dashed var(--blue, #2e90fa);outline-offset:-2px}.cell-time{flex:none;font-size:8.5px;font-weight:700;opacity:.95;font-variant-numeric:tabular-nums;white-space:nowrap}.planning.view-month .cell-time{display:none}.cell-book{flex:none;align-self:stretch;min-height:12px;border:1px dashed var(--color-brand-300, #84caff);background:var(--color-brand-25, #f5faff);color:var(--blue, #2e90fa);border-radius:2px;cursor:pointer;font-weight:700;font-size:11px;line-height:1;padding:0}.cell-book:hover{background:var(--color-brand-50, #eff6ff)}.type-dot{display:inline-block;width:10px;height:10px;border-radius:var(--radius);margin-right:6px;vertical-align:middle}.planning-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.date-nav{display:inline-flex;gap:6px;align-items:center}.range-label{text-transform:capitalize;color:var(--text);font-family:var(--font-serif);font-size:17px;margin-left:auto}.planning tfoot .avail-foot-row td{background:var(--color-gray-50)}.avail-foot-row .sticky-col{text-align:left!important;font-weight:600;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.avail-foot{text-align:center;color:var(--color-brand-700);font-weight:700}.res-quick-head{display:flex;align-items:center;gap:12px}.res-quick-icon{width:44px;height:44px;border-radius:var(--radius);background:var(--color-brand-50);color:var(--color-brand-700);display:flex;align-items:center;justify-content:center;flex-shrink:0}.res-quick-name{font-family:var(--font-outfit);font-weight:700;font-size:18px;color:var(--text);margin-bottom:4px}.res-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.rq-cell{display:flex;flex-direction:column;gap:3px;background:var(--color-brand-50);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px}.rq-k{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.rq-v{font-size:15px;font-weight:600;color:var(--text)}.res-quick-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:18px}.btn.btn-success{background:var(--color-success-600);color:#fff;display:inline-flex;align-items:center;gap:6px}.btn.btn-success:hover{background:var(--color-success-700)}.btn.btn-danger{background:var(--color-error-600, #d92d20);color:#fff;display:inline-flex;align-items:center;gap:6px}.btn.btn-danger:hover{background:var(--color-error-700, #b42318)}.grid-cell{position:relative}.res-corp-tag{position:absolute;top:2px;right:2px;display:inline-flex;opacity:.85;pointer-events:none}@media (max-width: 860px){.range-label{margin-left:0;width:100%}}.auth-shell{--a-espresso: #0f172a;--a-sand: #4f46e5;--a-gold: #4f46e5;--a-cream: #f6f8fb;--a-paper: #ffffff;--a-text: #1e293b;--a-muted: #64748b;--a-line: #e6ebf1;display:grid;grid-template-columns:1.15fr 1fr;min-height:100vh;width:100%;background:var(--a-cream)}.auth-hero{position:relative;overflow:hidden}.auth-hero-img{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/img/login.jpg) center/cover no-repeat;transform:scale(1.06);animation:authZoom 18s ease-out forwards}@keyframes authZoom{to{transform:scale(1)}}.auth-hero-veil{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#0f172ae0,#0f172a4d 55%,#0f172a8c)}.auth-hero-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:46px 52px;color:var(--a-cream)}.auth-wordmark{font-family:var(--font-serif);font-size:26px;font-weight:600;letter-spacing:.24em;color:var(--a-cream)}.auth-hero-bottom{max-width:460px}.auth-quote{font-family:var(--font-serif);font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.2;color:#faf5ec;margin-top:16px;border:0;padding:0}.auth-kicker{display:inline-flex;align-items:center;gap:12px;font-family:Outfit,sans-serif;font-size:11px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--a-gold)}.auth-kicker.on-dark{color:var(--a-sand)}.auth-kicker:before{content:"";width:28px;height:1px;background:currentColor;opacity:.7}.auth-panel{display:flex;align-items:center;justify-content:center;padding:40px;background:var(--a-cream)}.auth-box{width:100%;max-width:380px}.auth-mark{width:50px;height:50px;border-radius:var(--radius);border:1px solid rgba(150,115,63,.4);display:grid;place-items:center;color:var(--a-gold);font-family:var(--font-serif);font-weight:600;font-size:26px;margin-bottom:26px}.auth-box h1{font-family:var(--font-serif);font-weight:500;font-size:40px;color:var(--a-espresso);margin:12px 0 6px;letter-spacing:.3px}.auth-sub{color:var(--a-muted);font-size:15px;margin:0 0 30px}.auth-field{margin-bottom:18px}.auth-field label{display:block;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--a-muted);margin-bottom:8px}.auth-box input{width:100%;padding:13px 15px;font-size:15px;font-family:inherit;color:var(--a-text);background:var(--a-paper);border:1px solid var(--a-line);border-radius:var(--radius);transition:border-color .2s,box-shadow .2s;outline:none}.auth-box input:focus{border-color:var(--a-gold);box-shadow:0 0 0 3px #96733f1f}.auth-input-wrap{position:relative}.auth-input-wrap input{padding-right:46px}.auth-eye{position:absolute;top:0;right:0;height:100%;width:44px;display:flex;align-items:center;justify-content:center;background:none;border:0;padding:0;cursor:pointer;color:var(--a-muted);transition:color .2s}.auth-eye:hover{color:var(--a-gold)}.auth-eye:focus-visible{outline:2px solid var(--a-gold);outline-offset:-2px;border-radius:var(--radius)}.auth-btn{width:100%;margin-top:8px;padding:15px;cursor:pointer;font-family:Outfit,sans-serif;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:var(--a-sand);border:0;border-radius:var(--radius);transition:background .25s,transform .25s}.auth-btn:hover:not(:disabled){background:var(--color-brand-700);transform:translateY(-1px)}.auth-btn:disabled{opacity:.6;cursor:default}.auth-error{background:#fdecea;border:1px solid #f5c6c0;color:#b42318;font-size:13px;padding:10px 12px;border-radius:var(--radius);margin-bottom:14px}.auth-foot{margin-top:34px;padding-top:22px;border-top:1px solid var(--a-line);font-size:12.5px;color:var(--a-muted);text-align:center}[dir=rtl] .auth-hero-inner,[dir=rtl] .auth-box{text-align:right}[dir=rtl] .auth-wordmark{letter-spacing:.12em}@media (max-width: 860px){.auth-shell{grid-template-columns:1fr;grid-template-rows:40vh auto;min-height:100dvh}.auth-hero{min-height:40vh}.auth-hero-inner{padding:26px 30px}.auth-quote{font-size:clamp(22px,6vw,30px)}.auth-hero-bottom{max-width:none}.auth-panel{padding:42px 26px 54px}.auth-box h1{font-size:34px}}@media (max-width: 420px){.auth-shell{grid-template-rows:32vh auto}.auth-mark{margin-bottom:20px}.auth-wordmark{font-size:22px}}.logo-preview{width:160px;height:90px;border:1px dashed var(--color-gray-300);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;background:var(--color-gray-50);overflow:hidden}.logo-preview img{max-width:100%;max-height:100%}.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:4px 0 14px}.planning-hotelday-note{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--blue-dark, #175cd3);background:var(--color-brand-50, #eff6ff);border:1px solid var(--color-brand-200, #b2ddff);border-radius:var(--radius);padding:7px 12px;margin:0 0 14px}.planning-hotelday-note svg{flex:none}.legend-swatch{display:inline-block;width:12px;height:12px;border-radius:var(--radius);margin-right:5px;vertical-align:middle}.report-sheet{max-width:none}@media print{.sidebar,.topbar,.no-print,.breadcrumb,.toolbar,.kpi-row,.seg-filter,.filter-bar{display:none!important}.app,.content,.page{display:block;padding:0;margin:0;height:auto;overflow:visible}.card,.report-sheet{border:none;box-shadow:none;padding:0}body{background:#fff}.report-sheet,.report-sheet *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-sheet table.grid th{background:#b3c4de!important;color:#000!important;border:1px solid #bfbfbf!important}.report-sheet table.grid td{border:1px solid #dfdfdf!important}.report-sheet table.grid tfoot td,.report-sheet .row-versed td{background:#f0f4fa!important;font-weight:600}.report-sheet .icon-btn,.report-sheet .icon-only{display:none!important}}.toast-wrap{position:fixed;top:18px;right:18px;z-index:200;display:flex;flex-direction:column;gap:8px}.toast{padding:12px 16px;border-radius:var(--radius);color:#fff;box-shadow:var(--shadow-theme-lg);cursor:pointer;max-width:360px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px}.toast-success{background:var(--color-success-600)}.toast-error{background:var(--color-error-600)}.toast-info{background:var(--blue)}@media (max-width: 860px){.toast-wrap{left:12px;right:12px}.toast{max-width:none}}.breadcrumb{margin-bottom:12px;color:var(--muted);font-size:13px}.breadcrumb .btn-link{display:inline-flex;align-items:center;gap:4px}.profile-header{display:flex;align-items:center;gap:18px;background:linear-gradient(135deg,var(--color-brand-700),var(--color-brand-900));color:#fff;border-radius:var(--radius-lg);padding:22px 24px;box-shadow:var(--shadow-theme-sm);border:1px solid rgba(255,255,255,.12)}.avatar{width:66px;height:66px;border-radius:50%;flex-shrink:0;background:#fff3;border:2px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700}.profile-info h2{margin:0 0 6px;color:#fff}.profile-edit{align-self:flex-start;margin-left:auto;background:#ffffff2e;border:1px solid rgba(255,255,255,.4);color:#fff;width:40px;height:40px;border-radius:var(--radius);cursor:pointer;display:flex;align-items:center;justify-content:center}.profile-edit:hover{background:#ffffff4d}.profile-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.profile-tags .chip{background:#fff3;color:#fff}.contact-row{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;opacity:.95}.contact-row span{display:inline-flex;align-items:center;gap:6px}.contact-row svg{flex-shrink:0;opacity:.8}.contact-row a{color:inherit;text-decoration:none}.contact-row a:hover{text-decoration:underline}.note-card{border-left:4px solid var(--blue)}.note-card>div{margin-top:4px;color:var(--color-gray-600)}.section-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px;margin-top:16px;box-shadow:var(--shadow-theme-xs)}.section-card>h3{margin:0 0 14px;color:var(--color-gray-900);font-size:16px;border-bottom:1px solid var(--color-gray-100);padding-bottom:10px}.section-title{display:flex;align-items:center;gap:8px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;border-bottom:1px solid var(--color-gray-100);padding-bottom:10px;flex-wrap:wrap}.section-card.accent-blue{border-left:4px solid var(--blue)}.section-card.accent-purple{border-left:4px solid var(--color-theme-purple-500)}.section-card.accent-green{border-left:4px solid var(--color-success-500)}.board-icon{width:44px;height:44px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:#fff}.board-blue{background:var(--blue)}.board-purple{background:var(--color-theme-purple-500)}.board-green{background:var(--color-success-500)}.room-pill{display:inline-block;background:var(--color-gray-100);border:1px solid var(--line);border-radius:var(--radius);padding:1px 9px;font-weight:700}.op-note{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius);background:var(--color-warning-50, #fffaeb);color:var(--color-warning-700, #b54708);border:1px solid var(--color-warning-200, #fedf89);cursor:help;vertical-align:middle}.pay-summary{background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius);padding:12px 16px;margin-bottom:14px}.pay-summary .ps-row{display:flex;align-items:baseline;justify-content:space-between;padding:3px 0;font-size:14px}.pay-summary .ps-total{border-top:1px dashed var(--line);margin-top:6px;padding-top:8px;font-weight:700}.src-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius);border:1px solid var(--line);background:var(--color-surface, #fff);font-size:13px;font-weight:600;color:var(--text, #344054);cursor:pointer;transition:border-color .15s,box-shadow .15s}.src-chip:hover{border-color:var(--color-gray-300, #d0d5dd)}.src-chip.on{border-color:var(--color-brand-500, #4f46e5);box-shadow:0 0 0 2px #4f46e51f}.lang-row{padding:0 2px 8px}.lang-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;background:var(--surface);color:var(--color-gray-700);border:1px solid var(--line);border-radius:var(--radius);padding:7px 10px;font-size:12px;font-weight:700;cursor:pointer}.lang-btn:hover{background:var(--color-gray-50);border-color:var(--color-gray-300)}.money,.num,input[type=number],input[type=date],input[type=time]{unicode-bidi:plaintext}[dir=rtl] .money,[dir=rtl] .num{direction:ltr}[dir=rtl] .room-versed td:first-child,[dir=rtl] .row-versed td:first-child{box-shadow:inset -3px 0 0 var(--color-success-500, #12b76a)}[dir=rtl] .breadcrumb .btn-link svg,[dir=rtl] .section-title svg{transform:none}.row-versed td{background:#12b76a0f}.row-versed td:first-child{box-shadow:inset 3px 0 0 var(--color-success-500, #12b76a)}.row-due td{background:#f7900912}.row-due td:first-child{box-shadow:inset 3px 0 0 var(--color-warning-500, #f79009)}[dir=rtl] .row-due td:first-child{box-shadow:inset -3px 0 0 var(--color-warning-500, #f79009)}.row-cancelled td{background:#b423180d;color:var(--muted);text-decoration:line-through;text-decoration-color:#b42318b3;text-decoration-thickness:1.5px}.row-cancelled td:first-child{box-shadow:inset 3px 0 0 var(--color-error-500, #f04438)}[dir=rtl] .row-cancelled td:first-child{box-shadow:inset -3px 0 0 var(--color-error-500, #f04438)}.row-cancelled .badge{text-decoration:none}.inv-lines-cancelled table{color:var(--muted)}.inv-lines-cancelled tbody td,.inv-lines-cancelled tfoot td{text-decoration:line-through;text-decoration-color:#b4231899}.inv-lines-cancelled .badge{text-decoration:none}.badge-green-soft{background:transparent;color:var(--color-success-700, #027a48);box-shadow:inset 0 0 0 1px var(--color-success-500, #12b76a)}.etat-legend{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:12px;color:var(--color-gray-600);margin:4px 0 10px}.etat-legend .dot{display:inline-flex;align-items:center;gap:5px}.etat-legend .sw{width:11px;height:11px;border-radius:3px;display:inline-block}.lock-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a8c;backdrop-filter:blur(12px) saturate(.85);-webkit-backdrop-filter:blur(12px) saturate(.85)}.lock-card{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 26px 20px;text-align:center;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 24px 64px #00000061}.lock-badge{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-brand-50);color:var(--color-brand-600)}.lock-card h2{margin:2px 0 0;font-size:18px}.lock-sub{margin:0;font-size:12.5px;color:var(--muted);line-height:1.45}.lock-user{font-weight:600;font-size:14px;padding:6px 12px;background:var(--color-gray-50);border-radius:var(--radius);width:100%}.lock-card .auth-btn{width:100%;margin-top:2px}.lock-switch{background:none;border:none;cursor:pointer;padding:2px;color:var(--muted);font-size:12px;text-decoration:underline}.lock-switch:hover{color:var(--text)}.badge-rs{background:#7c3aed1f;color:#6d28d9}.row-room-service td{background:#7c3aed0d}.row-room-service td:first-child{box-shadow:inset 3px 0 #7c3aed}[dir=rtl] .row-room-service td:first-child{box-shadow:inset -3px 0 #7c3aed}.inline-create{display:flex;align-items:center;gap:8px;margin:-4px 0 10px;padding:10px;background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius)}.inline-panel{margin:-4px 0 10px;padding:12px 14px;background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius)}.inline-panel-head{font-weight:700;font-size:13px;margin-bottom:8px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}@media (max-width: 680px){.settings-grid{grid-template-columns:1fr}}.input-suffix{position:relative;display:flex;align-items:center}.input-suffix input{width:100%;padding-right:34px}.input-suffix span{position:absolute;right:12px;color:var(--muted, #98a2b3);font-size:13px;font-weight:600;pointer-events:none}.settings-savebar{position:sticky;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:12px 4px;margin-top:8px;background:linear-gradient(to top,var(--bg, #f6f8fb) 60%,transparent)}.btn-mini{padding:6px 11px;font-size:13px;display:inline-flex;align-items:center;gap:5px}.row-actions .btn-mini{margin-right:8px}.autocomplete{position:relative;display:flex;gap:8px;align-items:center}.autocomplete>input{width:320px;max-width:60vw}.autocomplete-list{position:absolute;top:100%;left:0;right:0;z-index:20;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-theme-lg);margin-top:6px;max-height:280px;overflow:auto;padding:4px}.ac-item{display:block;width:100%;text-align:left;border:0;background:var(--surface);padding:9px 12px;cursor:pointer;border-radius:var(--radius)}.ac-item:hover{background:var(--color-brand-50)}.ac-empty{padding:10px 12px}@media (max-width: 860px){.autocomplete{width:100%}.autocomplete>input{width:100%;max-width:none}}.kpi-moves{display:flex;gap:14px;align-items:center;font-size:15px}.kpi-moves span{display:inline-flex;align-items:center;gap:4px}.add-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:var(--color-gray-50);padding:12px;border-radius:var(--radius);border:1px solid var(--color-gray-100)}.add-bar select,.add-bar input{width:auto}.inline-check{display:flex;align-items:center;gap:4px;font-size:13px;white-space:nowrap}.inline-check input{width:auto}.avail-tag{padding:2px 10px;border-radius:var(--radius);font-size:12px;font-weight:600}.av-ok{background:var(--color-success-50);color:var(--color-success-700)}.av-busy{background:var(--color-warning-50);color:var(--color-warning-700)}.av-oos{background:var(--color-gray-100);color:var(--color-gray-500)}.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.search-input{max-width:280px}.filter-select{max-width:200px;width:auto}.pagination{display:flex;align-items:center;gap:8px;margin-top:14px;justify-content:flex-end;flex-wrap:wrap}.pagination .btn-sm{min-width:34px;justify-content:center}.pagination input{width:56px}@media (max-width: 860px){.pagination{justify-content:center}}.step{font-weight:600;color:var(--blue-dark);margin:18px 0 8px;display:flex;align-items:center;gap:8px}.step:first-child{margin-top:0}.step-n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--blue);color:#fff;font-size:12px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;flex-shrink:0}.seg button{border:0;background:var(--surface);padding:8px 16px;cursor:pointer;font-size:14px;white-space:nowrap;font-family:inherit;color:var(--color-gray-600)}.seg button+button{border-left:1px solid var(--line)}.seg button.seg-on{background:var(--blue);color:#fff}.room-chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}.room-chip{display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:8px 12px;cursor:pointer}.room-chip small{color:var(--muted)}.room-chip.on{border-color:var(--blue);background:var(--color-brand-50);box-shadow:inset 0 0 0 1px var(--blue)}.occ-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.occ-row select,.occ-row input{flex:1}.combobox{position:relative}.combobox-input{width:100%}.combobox-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;max-height:240px;overflow-y:auto;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 12px 28px #00000029}.combobox-item,.combobox-create{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;padding:8px 10px;border:0;border-radius:var(--radius);background:none;color:var(--text);font:inherit;font-size:14px;cursor:pointer}.combobox-item:hover,.combobox-create:hover{background:var(--color-brand-50)}.combobox-item.on{color:var(--blue);font-weight:600}.combobox-create{color:var(--blue);font-weight:600;border-bottom:1px solid var(--line);border-radius:var(--radius) var(--radius) 0 0}.combobox-empty{padding:10px;color:var(--muted);font-size:13px}.room-occ{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin-bottom:12px;background:var(--surface)}.room-occ-head{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px dashed var(--line)}.room-occ-head strong{font-size:15px}.room-occ-head .type-dot{margin-right:0}.room-occ-count{margin-left:auto;font-size:12px;color:var(--muted);background:var(--color-brand-50);border-radius:var(--radius);padding:2px 10px}.room-price-edit{display:inline-flex;align-items:center;gap:5px}.room-price-input{width:92px;text-align:right;padding:3px 7px;font-size:13px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text)}.room-price-input:focus{outline:none;border-color:var(--color-brand-600)}.rp-total-edit{display:inline-flex;align-items:center;gap:6px}.rp-total-edit .room-price-input{width:130px;text-align:right;font-weight:700;font-size:15px}.etat-pay{display:flex;gap:16px;align-items:stretch}.etat-pay-left{flex:0 0 300px;display:flex;flex-direction:column;gap:10px}.etat-pay-left .field{margin:0}.etat-pay-right{flex:1;min-width:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.epr-head{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line);background:var(--color-gray-50)}.epr-title{font-weight:600;font-size:13px}.epi-count{font-size:12px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1px 8px}.epi-selall{margin-left:auto;flex:none;font-size:12px;white-space:nowrap}.epr-search{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line);color:var(--muted)}.epr-search input{flex:1;border:none;background:none;outline:none;font:inherit;color:var(--text);padding:0}.epr-list{flex:1;overflow-y:auto;min-height:220px;max-height:60vh}.epi-recap{font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);background:var(--color-gray-50);padding:3px 12px;position:sticky;top:0}.epi-row{display:flex;align-items:center;gap:10px;padding:7px 12px;border-bottom:1px solid var(--line);cursor:pointer;font-size:12.5px}.epi-row:last-child{border-bottom:none}.epi-row.epi-paid{opacity:.55;cursor:default}.epi-row input[type=checkbox]{width:15px;height:15px;flex:none;margin:0;accent-color:var(--color-brand-600)}.epi-num{font-size:11px;flex:none;min-width:118px}.epi-date{font-size:11px;color:var(--muted);flex:none;white-space:nowrap}.epi-client{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 720px){.etat-pay{flex-direction:column}.etat-pay-left{flex:none}}html[data-theme=dark] .room-occ{border-color:var(--line)}.resa-preview{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;background:var(--color-brand-50)}.rp-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0;font-size:14px}.rp-vals{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.rp-payer{font-style:normal;font-size:11px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1px 7px}.rp-disc{color:#12b76a}.rp-total{border-top:1px solid var(--line);margin-top:4px;padding-top:8px;font-weight:700;font-size:15px}.rp-split{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.rp-badge{font-size:12px;font-weight:600;border-radius:var(--radius);padding:3px 11px}.rp-company{background:#1f6fb21f;color:#1f6fb2}.rp-client{background:#4f46e51f;color:#4338ca}.resa-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.resa-summary{font-size:14px;color:var(--text)}.resa-summary strong{font-size:15px}.resa-summary-warn{margin-top:3px;font-size:12px;color:#b42318}html[data-theme=dark] .resa-summary-warn{color:#f97066}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.aging-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0;padding:9px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:14px}.aging-filter input{width:72px}.aging-filter select{width:94px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-theme-xs);position:relative}.kpi:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:4px;border-radius:0 var(--radius) var(--radius) 0;background:var(--gold)}.kpi-green:before{background:var(--color-success-500)}.kpi-blue:before{background:var(--gold)}.kpi-purple:before{background:var(--color-theme-purple-500)}.kpi-label{font-size:12px;color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.6px}.kpi-value{font-size:27px;font-weight:700;margin-top:8px;color:var(--color-gray-900)}.kpi-sub{margin-top:10px}.bar{height:14px;background:var(--blue);border-radius:var(--radius);min-width:2px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.detail-grid label{margin-bottom:2px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182880;display:flex;align-items:flex-start;justify-content:center;z-index:50;padding:40px 16px;overflow:auto;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{background:var(--surface);border-radius:var(--radius-lg);width:480px;max-width:100%;box-shadow:var(--shadow-theme-xl)}.modal-wide{width:760px}.modal-xwide{width:980px}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-gray-100)}.modal-head h3{margin:0;font-size:17px;font-weight:700;color:var(--color-gray-900)}.modal-close{border:0;background:none;font-size:24px;cursor:pointer;color:var(--muted);line-height:1;width:32px;height:32px;border-radius:var(--radius)}.modal-close:hover{background:var(--color-gray-100);color:var(--text)}.modal-body{padding:20px}.form-section{margin:20px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--color-gray-100);color:var(--blue-dark);font-size:14px;font-weight:600}.form-section:first-child{margin-top:0}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.toggle-grid{display:flex;flex-wrap:wrap;gap:8px}.toggle-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:7px 14px;cursor:pointer;font-size:13px;font-family:inherit;color:var(--color-gray-600)}.toggle-pill:hover{border-color:var(--color-brand-300)}.toggle-pill.on{background:var(--blue);color:#fff;border-color:var(--blue)}.seg-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.seg-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:11px 12px;cursor:pointer;font-family:inherit;font-size:14px;color:var(--text);transition:border-color .12s,background .12s,color .12s}.seg-btn:hover{border-color:var(--color-brand-300)}.seg-btn.on{background:var(--blue);color:#fff;border-color:var(--blue)}.seg-btn svg{flex-shrink:0}.svc-list{display:flex;flex-direction:column;gap:8px}.svc-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--color-gray-100)}.svc-name{font-weight:600;display:inline-flex;align-items:center;gap:6px}.svc-name svg{flex:0 0 auto}.svc-seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;flex-shrink:0}.svc-seg button{border:0;background:var(--surface);padding:6px 12px;cursor:pointer;font-size:13px;white-space:nowrap;font-family:inherit;color:var(--color-gray-600)}.svc-seg button+button{border-left:1px solid var(--line)}.svc-seg button.on{background:var(--blue);color:#fff}.svc-seg button.on-company{background:var(--color-theme-purple-500)}.svc-seg button.on-free{background:var(--color-success-500)}@media (max-width: 600px){.check-grid{grid-template-columns:1fr}}.field-check label{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--text);font-weight:400}.field-check input{width:auto}.row-actions{white-space:nowrap}.row-actions .btn-link{margin-right:10px}.grid th.actions-col,.grid td.actions-col{text-align:right;width:1%}.row-actions-group{display:inline-flex;align-items:center;gap:6px;justify-content:flex-end}.row-actions-group .btn-link{margin-right:4px}.icon-btn.icon-only{padding:6px}.input-suffix .pw-eye{position:absolute;right:8px;background:none;border:0;padding:4px;cursor:pointer;color:var(--muted);display:inline-flex;border-radius:var(--radius)}.input-suffix .pw-eye:hover{color:var(--text);background:var(--color-gray-100)}.role-perm-list{display:flex;flex-direction:column;gap:12px;max-height:42vh;overflow-y:auto;padding:2px}.role-perm-group{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--surface)}.role-perm-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.role-perm-head strong{font-size:13px}.role-perm-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px}.role-perm-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius);font-size:13px;cursor:pointer;color:var(--text);background:var(--surface);transition:background .12s,border-color .12s}.role-perm-item:hover{background:var(--color-gray-50)}.role-perm-item.on{border-color:var(--color-brand-300);background:var(--color-brand-50);color:var(--color-brand-700)}.role-perm-item input{width:auto}.role-perm-item span{flex:1}tfoot td{background:var(--color-gray-50);font-weight:600}.dash-section{display:flex;align-items:baseline;gap:10px;margin:22px 0 10px}.dash-section:first-child{margin-top:4px}.dash-section h3{margin:0;font-size:14px;font-weight:700;color:var(--color-gray-800);letter-spacing:.2px;white-space:nowrap}.dash-section>span{font-size:12.5px;white-space:nowrap}.dash-section:after{content:"";flex:1;height:1px;background:var(--line)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.occ-card{display:flex;flex-direction:column;gap:12px;justify-content:center}.occ-top{display:flex;align-items:center;justify-content:space-between}.occ-pct{font-size:30px;font-weight:800;line-height:1;color:var(--color-gray-900)}.occ-bar{height:10px;border-radius:var(--radius);background:var(--color-gray-100);overflow:hidden}.occ-fill{height:100%;border-radius:var(--radius);background:linear-gradient(90deg,#1f6fb2,#12b76a);transition:width .5s ease}.occ-legend{display:flex;justify-content:space-between;font-size:12.5px;color:var(--text)}.occ-by-type{display:flex;flex-direction:column;gap:4px;margin-top:6px;padding-top:8px;border-top:1px solid var(--line)}.occ-type-row{display:flex;align-items:center;justify-content:space-between;font-size:12.5px}.occ-type-name{color:var(--text)}.occ-type-count{font-variant-numeric:tabular-nums}.occ-type-count strong{color:var(--color-brand-700, #1f6fb2)}.bar-chart{display:flex;align-items:flex-end;gap:4px;height:170px;padding-top:6px}.bar-col{flex:1 1 0;display:flex;align-items:flex-end;justify-content:center;height:100%;min-width:5px}.bar{width:100%;max-width:30px;background:var(--color-brand-500);border-radius:var(--radius) var(--radius) 0 0;min-height:3px;transition:height .4s ease,background .15s}.bar:hover{background:var(--color-brand-600)}.bar.today{background:#12b76a}.bar-labels{display:flex;gap:4px;margin-top:7px}.bar-lab{flex:1 1 0;min-width:5px;text-align:center;font-size:10.5px;color:var(--muted);white-space:nowrap}.pos-order{display:flex;gap:16px;align-items:flex-start}.pos-left{flex:1;min-width:0}.pos-topbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.inline-num{display:inline-flex;align-items:center;gap:6px;font-size:13px}.inline-num input{width:64px}.fam-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.fam-tabs button{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:7px 14px;cursor:pointer;font-size:13px;font-weight:500;font-family:inherit;color:var(--color-gray-600)}.fam-tabs button.on{background:var(--blue);color:#fff;border-color:var(--blue)}.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px}.prod-btn{display:flex;flex-direction:column;justify-content:space-between;gap:8px;min-height:68px;padding:12px;background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:var(--radius);cursor:pointer;text-align:left;box-shadow:var(--shadow-theme-xs);transition:box-shadow .15s,transform .05s;font-family:inherit}.prod-btn:hover{box-shadow:var(--shadow-theme-md)}.prod-btn:active{transform:translateY(1px)}.prod-name{font-weight:600;font-size:13px;color:var(--color-gray-800)}.prod-price{color:var(--muted);font-size:12px}.pos-ticket{width:350px;flex-shrink:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px;position:sticky;top:0;box-shadow:var(--shadow-theme-sm)}.pos-ticket h3{margin:0 0 12px;font-size:16px}.pos-ticket-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.covers-stepper{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.tl.tl-free{background:var(--color-success-50);border-radius:var(--radius);padding-left:8px;padding-right:8px;margin:2px 0;border-bottom:1px solid var(--color-success-100)}.tl-actions .icon-btn{padding:5px 7px}.pos-client{margin-bottom:10px}.tl{border-bottom:1px solid var(--color-gray-100);padding:8px 0}.tl-main{display:flex;justify-content:space-between;gap:8px}.tl-name{font-weight:600;font-size:13px}.tl-actions{display:flex;align-items:center;gap:6px;margin-top:4px}.qbtn{width:28px;height:28px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--color-gray-700)}.qbtn:hover{background:var(--color-gray-50)}.qv{min-width:22px;text-align:center;font-weight:600}.ticket-total{display:flex;justify-content:space-between;font-size:18px;font-weight:700;margin:14px 0;padding-top:12px;border-top:2px solid var(--color-gray-100)}.ticket-buttons{display:flex;gap:8px}.ticket-buttons .btn{flex:1;justify-content:center}.ui-select{position:relative}.ui-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:9px 11px;border:1px solid var(--color-gray-300);border-radius:var(--radius);background:var(--surface);cursor:pointer;font-family:inherit;font-size:14px;color:var(--text);text-align:left}.ui-select-trigger:hover{border-color:var(--color-gray-400)}.ui-select-trigger.open{border-color:var(--color-brand-400);box-shadow:var(--shadow-focus-ring)}.ui-select-trigger.placeholder{color:var(--color-gray-400)}.ui-select-trigger .chev{color:var(--muted);flex-shrink:0;transition:transform .15s}.ui-select-trigger.open .chev{transform:rotate(180deg)}.ui-select-clear{border:0;background:none;color:var(--muted);cursor:pointer;padding:0 2px;display:flex}.ui-select-clear:hover{color:var(--color-error-600)}.ui-select-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998}.ui-select-pop{z-index:9999;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-theme-lg);padding:6px;display:flex;flex-direction:column}.ui-select-search{margin-bottom:4px}.ui-select-search input{padding:7px 9px;font-size:13px}.ui-select-list{overflow-y:auto}.ui-select-opt{display:block;width:100%;text-align:left;border:0;background:none;padding:8px 10px;border-radius:var(--radius);cursor:pointer;font-family:inherit;font-size:14px;color:var(--color-gray-700)}.ui-select-opt:hover{background:var(--color-gray-50)}.ui-select-opt.selected{background:var(--color-brand-50);color:var(--color-brand-700);font-weight:600}.ui-select-empty{padding:10px;color:var(--muted);font-size:13px;text-align:center}.ui-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:18px;overflow-x:auto}.ui-tab{border:0;background:none;padding:10px 14px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;color:var(--muted);white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px;display:inline-flex;align-items:center;gap:7px;transition:color .15s}.ui-tab:hover{color:var(--text)}.ui-tab.on{color:var(--color-ink);border-bottom-color:var(--color-brand-500);font-weight:600}.ui-datepicker{position:relative;display:inline-flex;align-items:center;width:100%}.ui-datepicker .cal-icon{position:absolute;left:10px;color:var(--muted);pointer-events:none}.ui-datepicker input{padding-left:32px}.stat-card{padding:18px}.stat-card-row{display:flex;align-items:center;gap:12px}.stat-card-icon{width:42px;height:42px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card-value{font-size:21px;font-weight:700;margin-top:2px;white-space:nowrap;overflow:hidden;font-variant-numeric:tabular-nums}.client-avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px}.empty-state{text-align:center;padding:36px 20px;color:var(--muted)}.empty-icon{width:52px;height:52px;border-radius:var(--radius);background:var(--color-gray-100);color:var(--color-gray-400);display:flex;align-items:center;justify-content:center;margin:0 auto 12px}.empty-msg{font-weight:600;color:var(--color-gray-700)}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg,var(--color-gray-100) 25%,var(--color-gray-200) 37%,var(--color-gray-100) 63%);background-size:800px 100%;animation:shimmer 1.3s infinite linear}.skeleton-row{display:flex;gap:12px;padding:12px 14px;border-bottom:1px solid var(--color-gray-100)}.mode-chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.mode-chip{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:8px 12px;box-shadow:var(--shadow-theme-xs)}.mode-chip-label{font-size:12px;font-weight:600;color:var(--muted)}.date-range{display:inline-flex;align-items:center;gap:6px}.date-range .dr-label{font-size:12px;color:var(--muted);white-space:nowrap}.date-range .ui-datepicker{width:150px}@media (max-width: 860px){.date-range{width:100%}.date-range .ui-datepicker{flex:1;width:auto}}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:16px}.rank-list{display:flex;flex-direction:column;gap:13px}.rank-row{display:flex;align-items:center;gap:10px}.rank-badge{width:24px;height:24px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.rank-body{flex:1;min-width:0}.rank-head{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin-bottom:5px;align-items:baseline}.rank-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-track{height:7px;background:var(--color-gray-100);border-radius:var(--radius);overflow:hidden}.rank-fill{height:100%;border-radius:var(--radius);transition:width .4s ease;min-width:3px}.editions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.edition-card h3{margin-top:0;color:var(--color-gray-900);border-bottom:1px solid var(--color-gray-100);padding-bottom:8px}.edition-card ul{list-style:none;padding:0;margin:0}.edition-card li{padding:4px 0}.ed-group{margin-top:22px}.ed-group-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.ed-group-head h3{margin:0;font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:var(--text)}.ed-group-head .muted{font-size:12px}.ed-group-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.ed-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.ed-tile{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-decoration:none;color:inherit;transition:border-color .14s,box-shadow .14s,transform .14s}.ed-tile:hover{border-color:var(--color-brand-300);box-shadow:0 8px 22px -14px #00000059;transform:translateY(-1px)}.ed-tile.disabled{opacity:.5;pointer-events:none}.ed-tile-icon{width:42px;height:42px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ed-tile-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.ed-tile-title{font-weight:600;font-size:14px;color:var(--text)}.ed-tile-desc{font-size:12px;color:var(--muted);line-height:1.35}.ed-tile-arrow{color:var(--muted);flex-shrink:0;transition:transform .14s,color .14s}.ed-tile:hover .ed-tile-arrow{color:var(--blue);transform:translate(2px)}@media (max-width: 860px){.hamburger{display:flex}.topbar-title{display:inline}.sidebar{position:fixed;top:0;left:0;height:100vh;width:258px;transform:translate(-100%);transition:transform .22s ease;z-index:60}.sidebar.collapsed{width:258px}.sidebar.open{transform:translate(0);box-shadow:4px 0 30px #00000059}.sidebar.collapsed .brand-text,.sidebar.collapsed .navlink span.nav-label,.sidebar.collapsed .user-card .u-meta,.sidebar.collapsed .nav-section-full{display:revert}.sidebar.collapsed .nav-section-abbr{display:none}.sidebar.collapsed .nav-section{text-align:left;padding:15px 12px 6px;letter-spacing:1px;font-size:10px}.sidebar.collapsed .navlink{justify-content:flex-start;padding:9px 12px}.sidebar.collapsed .user-card{flex-direction:row}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#10182880;z-index:55;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.content{width:100%}.page{padding:14px}.page-head{flex-direction:column;align-items:stretch;gap:12px}.page-head .toolbar{flex-wrap:wrap}.grid{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.grid-scroll>.grid{display:table;white-space:normal;overflow:visible}.btn,.btn-sm,.icon-btn,.qbtn,.seg button,.seg-filter button,.ui-select-trigger{min-height:40px}.filter-bar{flex-direction:column;align-items:stretch}.filter-bar>div{width:100%!important}.search-input,.filter-select{max-width:none;width:100%}.form-row{flex-direction:column;align-items:stretch}.form-row>div{min-width:0;width:100%}.add-bar{flex-direction:column;align-items:stretch}.add-bar select,.add-bar input,.modal,.modal-wide{width:100%}.modal-overlay{padding:12px}.profile-header{flex-direction:column;text-align:center;align-items:center}.contact-row,.profile-tags{justify-content:center}.detail-grid{grid-template-columns:1fr 1fr}.pagination{justify-content:center}.seg button{padding:8px 12px}.pos-order{flex-direction:column}.pos-ticket{width:100%;position:static}}@media (max-width: 480px){.detail-grid{grid-template-columns:1fr}.kpi-value{font-size:20px}}html[data-theme=dark]{color-scheme:dark;--color-cream: #0b1120;--surface: #131a2b;--color-surface: #131a2b;--bg: #0b1120;--text: #e2e8f0;--muted: #94a3b8;--line: #24304a;--ink: var(--color-brand-600);--color-ink: #f1f5f9;--color-ink-soft: #cbd5e1;--color-gray-25: #0d1526;--color-gray-50: #151d30;--color-gray-100: #1b2437;--color-gray-200: #24304a;--color-gray-300: #334155;--color-gray-400: #64748b;--color-gray-500: #94a3b8;--color-gray-600: #cbd5e1;--color-gray-700: #dbe2ea;--color-gray-800: #e9eef4;--color-gray-900: #f1f5f9;--color-brand-50: #1e2749;--color-brand-100: #283463;--color-brand-200: #33417a;--color-brand-700: #aab4fc;--color-brand-600: #6366f1;--shadow-theme-xs: 0 1px 2px 0 rgba(0,0,0,.5);--shadow-theme-sm: 0 1px 3px 0 rgba(0,0,0,.55), 0 1px 2px 0 rgba(0,0,0,.4);--shadow-theme-md: 0 4px 8px -2px rgba(0,0,0,.55), 0 2px 4px -2px rgba(0,0,0,.4);--shadow-theme-lg: 0 12px 16px -4px rgba(0,0,0,.55), 0 4px 6px -2px rgba(0,0,0,.4);--shadow-theme-xl: 0 20px 24px -4px rgba(0,0,0,.6), 0 8px 8px -4px rgba(0,0,0,.45)}html[data-theme=dark] body{background:var(--color-cream);color:var(--text)}html[data-theme=dark] .input::placeholder,html[data-theme=dark] .search-input::placeholder{color:var(--color-gray-500)}html[data-theme=dark] input,html[data-theme=dark] textarea,html[data-theme=dark] select{color:var(--text)}html[data-theme=dark] .prod-btn,html[data-theme=dark] .room-chip{border-color:var(--line)}.theme-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:34px;flex-shrink:0;background:var(--surface);color:var(--color-gray-700);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer}.theme-btn:hover{background:var(--color-gray-50);border-color:var(--color-gray-300)}.lang-row{display:flex;align-items:center;gap:8px}.lang-row .lang-btn{flex:1}.topbar-tools{display:flex;align-items:center;gap:8px}.topbar-tools .lang-btn,.topbar-tools .theme-btn{width:auto;height:34px;flex:none;background:var(--surface);color:var(--color-gray-700);border:1px solid var(--line);border-radius:var(--radius);font-weight:600;transition:border-color .15s,color .15s,background .15s}.topbar-tools .lang-btn{padding:0 12px}.topbar-tools .theme-btn{width:36px}.topbar-tools .lang-btn:hover,.topbar-tools .theme-btn:hover{background:var(--surface);border-color:var(--blue);color:var(--blue)}@media (max-width: 640px){.topbar-brand small,.topbar-tools .lang-btn span{display:none}.topbar-tools .lang-btn{padding:0 9px}}.room-service-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.rs-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-theme-xs);display:flex;flex-direction:column}.rs-head{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.rs-who{min-width:0}.rs-occupant{font-weight:600;font-size:15px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rs-sub{font-size:12px;margin-top:2px}.rs-extras{flex:1;padding:10px 0;display:flex;flex-direction:column;gap:4px;min-height:40px}.rs-empty{text-align:center;padding:12px 0;font-size:13px}.rs-line{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:var(--radius);border:1px solid transparent;font-size:13px}.rs-line.covered{background:var(--color-success-50);border-color:var(--color-success-200)}.rs-line.notcovered{background:var(--color-warning-50);border-color:var(--color-warning-200)}.rs-line-label{flex:1;display:flex;align-items:center;gap:6px;min-width:0}.rs-cover-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:1px 6px;border-radius:var(--radius);background:#0000000d;color:var(--muted)}.rs-line.covered .rs-cover-tag{background:var(--color-success-100);color:var(--color-success-700)}.rs-line.notcovered .rs-cover-tag{background:var(--color-warning-100);color:var(--color-warning-700)}.rs-line-amt{font-variant-numeric:tabular-nums}.rs-del{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:2px;border-radius:var(--radius);display:inline-flex}.rs-del:hover{background:var(--color-error-50);color:var(--color-error-600)}.rs-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.rs-totals{display:flex;flex-direction:column;gap:3px;font-size:12px}.rs-tot{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-weight:500}.rs-tot i{width:8px;height:8px;border-radius:var(--radius);display:inline-block}.rs-tot.societe i{background:var(--color-success-500)}.rs-tot.client i{background:var(--color-warning-500)}.catalogue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px;max-height:280px;overflow:auto;padding:2px}.cat-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:8px 10px;cursor:pointer;text-align:left;font-family:inherit;transition:border-color .12s,background .12s}.cat-item:hover{border-color:var(--blue)}.cat-item.on{border-color:var(--blue);background:var(--color-brand-50)}.cat-meta{display:flex;align-items:center;gap:6px;justify-content:space-between;width:100%}.related-inv{margin:4px 0 12px;border:1px solid var(--color-warning-200, #f5d9a8);border-radius:var(--radius);padding:10px 12px;background:var(--color-warning-50, #fdf6e9)}.related-inv-head{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#4338ca;margin-bottom:6px}.related-inv-line{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px}.related-inv-line .ri-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.related-inv-line .ri-amt{font-weight:600}.related-inv-line .ri-amt.due{color:var(--color-error-600)}.related-inv-line .ri-amt.ok{color:var(--color-success-700, #027a48)}.surcharge-box{margin-top:10px;border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--color-brand-50)}.sb-row{display:flex;justify-content:space-between;font-size:13px;padding:3px 0}.sb-row span:last-child{font-variant-numeric:tabular-nums}.sb-total{border-top:1px solid var(--line);margin-top:4px;padding-top:7px;font-weight:700;font-size:15px}.debt-head{display:flex;gap:14px;flex-wrap:wrap;align-items:stretch}.debt-total{flex:1;min-width:220px;background:var(--surface);border:1px solid var(--line);border-left:4px solid #f04438;border-radius:var(--radius);padding:14px 18px}.debt-total-k{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.debt-total-v{font-size:28px;font-weight:700;color:#d92d20;margin:2px 0}.debt-aging{display:flex;gap:10px}.debt-age{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:120px;border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px;background:var(--surface)}.debt-age span{font-size:11px;color:var(--muted)}.debt-age strong{font-size:15px}.debt-age.ok{border-top:3px solid #12b76a}.debt-age.warn{border-top:3px solid var(--color-warning-500)}.debt-age.bad{border-top:3px solid #f04438}@media (max-width: 640px){.debt-aging{width:100%}.debt-age{flex:1;min-width:0}}.rs-existing{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin-bottom:14px;background:var(--color-gray-50)}.rs-existing-toggle{display:flex;align-items:center;gap:6px;width:100%;border:0;background:none;cursor:pointer;font-family:inherit;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:0}.rs-existing-toggle:hover{color:var(--text)}.rs-existing-line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px dashed var(--line)}.rs-existing-line:last-of-type{border-bottom:0}.rs-existing-name{display:flex;flex-direction:column;gap:1px;font-size:14px}.rs-existing-time{font-size:11px;color:var(--muted)}.rs-existing-amount{font-weight:600;flex-shrink:0}.payer-chip.free{background:var(--color-gray-100);color:var(--color-gray-600)}.rs-cart{margin-top:14px;border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--surface)}.rs-cart-head{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px}.rs-cart-line{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px dashed var(--line)}.rs-cart-line:last-of-type{border-bottom:0}.rs-cart-name{flex:1;min-width:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rs-cart-name strong{font-size:14px}.rs-qty{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;flex-shrink:0}.rs-qty button{width:26px;height:30px;border:0;background:var(--color-brand-50);color:var(--text);font-size:16px;cursor:pointer}.rs-qty button:hover{background:var(--color-brand-100, var(--color-brand-50))}.rs-qty span{min-width:24px;text-align:center;font-weight:600;font-size:14px}.rs-price{width:90px;flex-shrink:0}.rs-line-total{min-width:84px;text-align:right;font-weight:600;flex-shrink:0}.rs-cart-total{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:10px;border-top:1px solid var(--line);font-weight:700;font-size:15px}.cat-label{font-size:12px;font-weight:500;color:var(--text);line-height:1.2}.cat-price{font-size:12px;font-weight:700;color:var(--gold);font-variant-numeric:tabular-nums}.rs-order-fields{border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin:6px 0 10px;background:var(--color-gray-50)}.rs-order-title{display:flex;align-items:center;gap:7px;font-weight:600;font-size:13px;color:var(--gold);margin-bottom:8px}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0f172a66;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.cmdk-panel{width:100%;max-width:620px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-theme-xl);overflow:hidden;display:flex;flex-direction:column;max-height:70vh}.cmdk-input{display:flex;align-items:center;gap:10px;padding:15px 16px;border-bottom:1px solid var(--line);color:var(--muted)}.cmdk-input input{flex:1;border:0;outline:0;background:transparent;font-size:16px;font-family:inherit;color:var(--text)}.cmdk-input kbd,.cmdk-foot kbd{font-family:inherit;font-size:11px;background:var(--color-gray-100);border:1px solid var(--line);border-radius:var(--radius);padding:1px 6px;color:var(--muted)}.cmdk-list{overflow-y:auto;padding:6px}.cmdk-group{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 10px 4px}.cmdk-item{position:relative;width:100%;display:flex;align-items:center;gap:11px;padding:10px 12px;border:0;background:transparent;border-radius:var(--radius);cursor:pointer;text-align:left;font-family:inherit}.cmdk-item.active{background:var(--color-brand-50)}.cmdk-ic{width:30px;height:30px;border-radius:var(--radius);display:grid;place-items:center;background:var(--color-gray-100);color:var(--color-gray-700);flex-shrink:0}.cmdk-item.active .cmdk-ic{background:var(--color-brand-100);color:var(--gold)}.cmdk-text{display:flex;flex-direction:column;min-width:0}.cmdk-label{font-size:14px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmdk-sub{font-size:12px;color:var(--muted)}.cmdk-enter{margin-left:auto;color:var(--gold)}.cmdk-divider-label{position:absolute;right:12px;top:-9px;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2)}.cmdk-empty{padding:18px;text-align:center;color:var(--muted);font-size:13px}.cmdk-foot{display:flex;gap:16px;padding:9px 14px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.cmdk-foot span{display:inline-flex;align-items:center;gap:4px}.topbar-search{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px 0 12px;min-width:230px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--muted);cursor:pointer;font-family:inherit;font-size:13px;transition:border-color .15s}.topbar-search:hover{border-color:var(--blue)}.topbar-search .ts-kbd{margin-left:auto;display:inline-flex;gap:2px}.topbar-search kbd{font-family:inherit;font-size:11px;background:var(--color-gray-100);border:1px solid var(--line);border-radius:var(--radius);padding:0 5px}@media (max-width: 720px){.topbar-search{min-width:0}.topbar-search .ts-text,.topbar-search .ts-kbd{display:none}}.btn-gold-sm{display:inline-flex;align-items:center;gap:6px;height:var(--control-h);padding:0 14px;border-radius:var(--radius);background:var(--color-brand-600);color:#fff;font-size:13px;font-weight:600;border:0;cursor:pointer;white-space:nowrap;box-shadow:var(--shadow-theme-xs);transition:background .15s}.btn-gold-sm:hover{background:var(--color-brand-700)}@media (max-width: 720px){.btn-gold-sm .nr-text{display:none}.btn-gold-sm{padding:0 11px}}.op-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.op-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--tc);border-radius:var(--radius);cursor:pointer;text-align:left;font-family:inherit;transition:transform .1s,box-shadow .2s;box-shadow:var(--shadow-theme-xs)}.op-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-theme-md)}.op-tile.warn{background:color-mix(in srgb,var(--tc) 7%,var(--surface))}.op-tile-ic{color:var(--tc)}.op-tile-val{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text);line-height:1.1}.op-tile-lbl{font-size:12.5px;color:var(--muted);font-weight:500}.rb-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.rb-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);cursor:pointer;font-size:13px;font-weight:500;color:var(--color-gray-600);font-family:inherit}.rb-chip.on{border-color:var(--blue);color:var(--blue);background:var(--color-brand-50)}.rb-chip b{font-weight:700}.room-board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.rb-card{position:relative;background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--rbc, var(--line));border-radius:var(--radius);padding:13px 14px;box-shadow:var(--shadow-theme-xs);display:flex;flex-direction:column;gap:7px}.rb-top{display:flex;align-items:center;justify-content:space-between}.rb-num{font-size:20px;font-weight:700;font-family:Outfit,sans-serif}.rb-type{font-size:11px;color:var(--muted)}.rb-status{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;border-radius:var(--radius)}.rb-guest{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rb-dates{font-size:11.5px;color:var(--muted)}.rb-badges{display:flex;gap:5px;flex-wrap:wrap}.rb-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:var(--radius);display:inline-flex;align-items:center;gap:3px}.rb-actions{display:flex;gap:6px;margin-top:2px;border-top:1px solid var(--line);padding-top:8px}.rb-actions .icon-btn{flex:1;justify-content:center}.rb-hk{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:2px 7px;border-radius:var(--radius)}.confirm-consequence{margin-top:10px;padding:9px 12px;border-radius:var(--radius);background:var(--color-warning-50);border:1px solid var(--color-warning-200);color:var(--color-warning-700);font-size:13px}.dt-desktop{display:block}.dt-cards{display:none}.dt-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin-bottom:10px;box-shadow:var(--shadow-theme-xs)}.dt-card-title{font-weight:600;font-size:15px;color:var(--text);margin-bottom:8px}.dt-card-rows{display:flex;flex-direction:column;gap:5px}.dt-card-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:13px}.dt-card-lbl{color:var(--muted);flex-shrink:0}.dt-card-val{text-align:right;color:var(--text)}@media (max-width: 768px){.dt-desktop{display:none}.dt-cards{display:block}}.help-searchbar{position:relative;display:flex;align-items:center;gap:10px;margin:4px 0 20px}.help-search-ic{position:absolute;left:14px;color:var(--muted);pointer-events:none}.help-search{width:100%;padding:12px 14px 12px 42px;font-size:15px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--text)}.help-search:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft, rgba(37,99,235,.12))}.help-hits{position:absolute;right:14px;color:var(--muted);font-size:13px;white-space:nowrap}.help-app{display:grid;grid-template-columns:232px 1fr;gap:26px;align-items:start}.help-toc{position:sticky;top:12px;align-self:start;display:flex;flex-direction:column;gap:2px;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card)}.help-toc-title{font-size:11px;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:var(--muted);padding:4px 8px 8px}.help-toc-link{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:8px;color:var(--text);text-decoration:none;font-size:14px}.help-toc-link:hover{background:var(--hover, rgba(37,99,235,.08));color:var(--blue)}.help-content{display:flex;flex-direction:column;gap:30px;min-width:0}.help-section{scroll-margin-top:14px}.help-section-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.help-section-ic{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;flex-shrink:0;background:var(--blue);color:#fff}.help-section-head h3{margin:0;font-size:19px}.help-section-head p{margin:2px 0 0;font-size:13.5px}.help-topics{display:flex;flex-direction:column;gap:14px}.help-topic{padding:16px 18px}.help-topic h4{margin:0 0 8px;font-size:15.5px;color:var(--text)}.help-intro{margin:0 0 10px;color:var(--muted);font-size:14px;line-height:1.55}.help-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.help-steps li{font-size:14px;line-height:1.5}.help-notes{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.help-notes li{display:flex;align-items:flex-start;gap:6px;font-size:13.6px;line-height:1.5;color:var(--text)}.help-note-ic{color:var(--blue);flex-shrink:0;margin-top:3px}.help-print{display:none}@media (max-width: 860px){.help-app{grid-template-columns:1fr}.help-toc{position:static;flex-direction:row;flex-wrap:wrap}}@media print{.help>.page-head,.help-searchbar,.help-app{display:none!important}.help-print{display:block!important;color:#000}.help-print-header{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid #000;padding-bottom:8px;margin-bottom:16px}.help-print-header .hp-title{font-size:20px;font-weight:700}.help-print-header .hp-link{font-size:12px;font-family:monospace}.hp-section{break-inside:avoid-page;margin-bottom:18px}.hp-section>h2{font-size:15px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #999;padding-bottom:3px;margin:0 0 8px}.hp-blurb{font-size:11.5px;font-style:italic;color:#333;margin:0 0 8px}.hp-topic{break-inside:avoid;margin:0 0 10px}.hp-topic h3{font-size:13px;margin:0 0 3px}.hp-topic p,.hp-topic li{font-size:11.5px;line-height:1.45}.hp-topic ol,.hp-topic ul{margin:3px 0 0;padding-left:18px}.help-print-footer{margin-top:14px;padding-top:6px;border-top:1px solid #999;font-family:monospace;font-size:11px;text-align:center}}.recap-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4000;background:#101828b8;display:flex;align-items:center;justify-content:center;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.recap-gate-card{background:var(--surface, #fff);border-radius:8px;max-width:460px;width:100%;padding:28px 26px;text-align:center;box-shadow:0 20px 60px #0006}.recap-gate-icon{width:60px;height:60px;border-radius:50%;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;background:var(--color-brand-50, #eff6ff);color:var(--blue, #2e90fa)}.recap-gate-card h2{margin:0 0 6px;font-size:19px}.recap-gate-sub{color:var(--muted);font-size:13.5px;margin:0 0 16px}.recap-gate-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 14px}.recap-gate-stats>div{background:var(--color-gray-50, #f7f8fa);border:1px solid var(--line);border-radius:6px;padding:8px}.recap-gate-stats span{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.3px}.recap-gate-stats b{font-size:16px;font-variant-numeric:tabular-nums}.recap-gate-note{font-size:12px;color:var(--muted);margin:0 0 16px}
