.dashboard{margin-bottom:32px}.dashboard-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:16px 0 24px;display:flex}.dashboard-toolbar h2{align-items:center;gap:10px;margin:6px 0;font-size:1.6rem;font-weight:600;display:flex}.dashboard-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dashboard-period{border:1px solid var(--border);background:var(--card);border-radius:12px;flex-wrap:wrap;padding:4px;display:flex}.dashboard-period button{border-radius:8px;min-height:44px;padding:10px 12px;font-size:.85rem}.dashboard-period button[aria-pressed=true]{background:var(--primary);color:var(--primary-foreground);box-shadow:0 2px 8px #482b241a}.dashboard-period button:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.dashboard-caption{color:var(--muted-foreground);font-size:.82rem;line-height:1.6}.dashboard-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.dashboard-card{border:1px solid var(--border);border-radius:18px;min-width:0;padding:20px;position:relative;overflow:hidden}.dashboard-card:before{content:"";background:var(--stat-accent);width:4px;height:100%;position:absolute;top:0;left:0}.dashboard-bleu{--stat-accent:#34748f;--stat-tint:#dcecf5;background:#eef5fa}.dashboard-vert{--stat-accent:#28715b;--stat-tint:#d3e9dc;background:#eaf5ee}.dashboard-ambre{--stat-accent:#9a661a;--stat-tint:#f7e6c7;background:#fff5e4}.dashboard-rose{--stat-accent:#944252;--stat-tint:#f2dce1;background:#fbefef}.dashboard-card-top{justify-content:space-between;align-items:flex-start;gap:10px;font-size:.85rem;font-weight:500;display:flex}.dashboard-icon{background:var(--stat-tint);color:var(--stat-accent);border-radius:11px;flex-shrink:0;padding:9px}.dashboard-card>strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;color:var(--stat-accent);margin:14px 0 8px;font-size:clamp(1.3rem,1.7vw,1.8rem);line-height:1.3;display:block}.dashboard-card p{color:#655d58;font-size:.74rem;line-height:1.6}.dashboard-statuses{margin-top:20px}.dashboard-statuses h3,.dashboard-chart h3{font-size:1rem;font-weight:600}.dashboard-status-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:22px;display:grid}.dashboard-status>div{justify-content:space-between;gap:10px;margin-bottom:8px;font-size:.85rem;display:flex}.dashboard-status progress{appearance:none;background:#e9e3da;border:0;border-radius:9px;width:100%;height:7px;display:block;overflow:hidden}.dashboard-status progress::-webkit-progress-bar{background:#e9e3da}.dashboard-status progress::-webkit-progress-value{background:var(--stat-accent);border-radius:9px}.dashboard-status progress::-moz-progress-bar{background:var(--stat-accent)}.dashboard-status-en_attente{--stat-accent:#b27a24}.dashboard-status-occupation{--stat-accent:#34748f}.dashboard-status-terminee{--stat-accent:#28715b}.dashboard-status-annulee{--stat-accent:#944252}.dashboard-charts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px;display:grid}.dashboard-chart{min-width:0}.dashboard-chart-title{color:var(--primary);align-items:center;gap:9px;margin-bottom:6px;display:flex}.dashboard-bars{align-items:end;gap:4px;height:170px;margin-top:25px;padding-top:8px;display:flex}.dashboard-bar-column{flex-direction:column;flex:1;align-items:center;gap:8px;min-width:0;height:100%;display:flex}.dashboard-bar-track{background:#f1e8da;border-radius:5px;align-items:end;width:100%;max-width:32px;height:135px;display:flex}.dashboard-bar-track span{background:linear-gradient(#b77854,#782d40);border-radius:5px;width:100%;min-height:0;display:block}.dashboard-bar-column small{color:var(--muted-foreground);font-size:.6rem}.dashboard-values{margin-top:14px;font-size:.8rem}.dashboard-values summary{cursor:pointer;color:var(--primary);padding:6px 0}.dashboard-values table{width:100%;margin-top:10px}.dashboard-values th,.dashboard-values td{text-align:left;border-bottom:1px solid var(--border);padding:7px 0}.dashboard-values td:last-child,.dashboard-values th:last-child{text-align:right}.dashboard-empty{color:var(--muted-foreground);padding:30px 20px;font-size:.9rem}.dashboard-updated{color:var(--muted-foreground);align-items:flex-start;gap:7px;margin-top:18px;font-size:.72rem;line-height:1.7;display:flex}.dashboard-updated svg{flex-shrink:0;margin-top:3px}.dashboard-skeleton{background:var(--card);border:1px solid var(--border);min-height:160px;color:var(--muted-foreground);border-radius:18px;padding:24px;animation:1.4s ease-in-out infinite dashboard-pulse}@keyframes dashboard-pulse{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.dashboard-skeleton{animation:none}}@media (width<=1100px){.dashboard-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=800px){.dashboard-cards,.dashboard-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-charts{grid-template-columns:1fr}}@media (width<=480px){.dashboard-cards{grid-template-columns:1fr}.dashboard-card{padding:18px}.dashboard-controls{width:100%}.dashboard-period{flex:1}.dashboard-period button{flex:1;padding:8px;font-size:.75rem}.dashboard-toolbar h2{font-size:1.4rem}}.dashboard-indicator-groups{gap:26px;display:grid}.dashboard-organized .dashboard-group-cards{grid-template-columns:repeat(var(--dashboard-columns,4), minmax(0, 1fr))}.dashboard-organized .dashboard-group-cards.has-one-card{grid-template-columns:1fr}.dashboard-indicator-group{min-width:0}.dashboard-group-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.dashboard-group-name{align-items:center;gap:12px;min-width:0;display:flex}.dashboard-group-icon{color:#825039;background:#f0e3d3;border-radius:11px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.dashboard-group-name h3{margin-bottom:3px;font-size:1rem;font-weight:600}.dashboard-group-name p{color:var(--muted-foreground);font-size:.75rem;line-height:1.6}.dashboard-group-scope{border:1px solid var(--border);color:#77604d;white-space:nowrap;background:#fffbf4;border-radius:20px;padding:5px 10px;font-size:.66rem}.dashboard-group-periode{background:linear-gradient(115deg,#f0f6ed,#fffbf3 78%);border:1px solid #d9e5d9;border-radius:20px;padding:20px}.dashboard-group-periode .dashboard-group-icon{color:#28715b;background:#dcecdf}.dashboard-group-periode .dashboard-group-scope{color:#28715b;background:#e6f1e6;border-color:#c0d8c6}.dashboard-organized .dashboard-group-periode .dashboard-group-cards{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}.dashboard-organized .dashboard-group-periode .dashboard-group-cards.has-one-card{grid-template-columns:1fr}.dashboard-organized .dashboard-card{border-radius:14px;padding:17px 18px}.dashboard-organized .dashboard-card-top{min-height:34px;font-size:.78rem}.dashboard-organized .dashboard-icon{border-radius:10px;padding:7px}.dashboard-organized .dashboard-card>strong{margin:10px 0 7px;font-size:clamp(1.25rem,1.7vw,1.65rem)}.dashboard-organized .dashboard-card p{font-size:.7rem}.dashboard-organized .dashboard-card-primary{border-color:#9fc9b3}.dashboard-organized .dashboard-card-primary>strong{margin:10px 0;font-size:clamp(1.9rem,2.6vw,2.5rem)}.dashboard-organized .dashboard-group-periode .dashboard-card{background:#fffdf7;flex-direction:column;justify-content:center;min-height:155px;display:flex}.dashboard-organized .dashboard-group-periode .dashboard-card-primary{background:#e4f2e9}.dashboard-organized .dashboard-statuses{margin-top:27px}@media (width<=1100px){.dashboard-organized .dashboard-group-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.dashboard-group-heading{align-items:flex-start}.dashboard-group-scope{margin-left:52px}.dashboard-group-periode{padding:16px}.dashboard-organized .dashboard-group-periode .dashboard-group-cards{grid-template-columns:1fr}.dashboard-organized .dashboard-group-periode .dashboard-card{min-height:130px}.dashboard-group-name p{font-size:.72rem}}@media (width<=480px){.dashboard-organized .dashboard-group-cards{grid-template-columns:1fr}}.dashboard-reception .dashboard-group-disponibilite{background:linear-gradient(115deg,#fbf1df,#fffbf4 80%);border:1px solid #e5d5bd;border-radius:20px;padding:20px}.dashboard-reception .dashboard-group-disponibilite .dashboard-group-icon{color:#855c2c;background:#edddbf}.dashboard-reception .dashboard-group-disponibilite .dashboard-card{min-height:160px}.dashboard-reception .dashboard-group-disponibilite .dashboard-card-primary{background:#e4f2e9}@media (width<=650px){.dashboard-reception .dashboard-group-disponibilite{padding:16px}.dashboard-reception .dashboard-group-disponibilite .dashboard-card{min-height:135px}}.direction-month{flex-wrap:wrap;align-items:center;gap:18px;margin:24px 0;padding:22px;display:flex}.direction-month label{font-size:13px;font-weight:500}.direction-month input{width:190px}.direction-month p{min-width:220px;color:var(--muted-foreground);flex:1;font-size:12px;line-height:1.7}.direction-payroll-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.direction-payroll-metrics>div{border:1px solid var(--border);background:#f5ecde;border-radius:16px;padding:22px}.direction-payroll-metrics>div:last-child{color:#24644a;background:#e6f3ed;border-color:#c0ddcf}.direction-payroll-metrics span{font-size:12px}.direction-payroll-metrics strong{margin-top:12px;font-size:24px;font-weight:650;display:block}.direction-global{gap:15px;margin-bottom:24px;padding:22px;display:flex}.direction-global>svg{color:#28715b;flex-shrink:0}.direction-global p{color:var(--muted-foreground);margin-top:7px;font-size:12px;line-height:1.7}.direction-reports{gap:20px;display:grid}.direction-report{padding:24px}.direction-report header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.direction-report h2{font-size:19px;font-weight:600}.direction-report header p{color:var(--muted-foreground);margin-top:8px;font-size:12px}.direction-report header>strong{color:#28715b;font-size:23px;font-weight:650}.direction-report dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:25px 0;display:grid}.direction-report dt{color:var(--muted-foreground);margin-bottom:7px;font-size:12px}.direction-report dd{font-size:15px;font-weight:550}.direction-report-detail{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.direction-report-detail>p{margin-bottom:16px;font-size:13px}.dashboard-direction .dashboard-group-pilotage{background:linear-gradient(115deg,#eaf2f9,#fffcf6);border:1px solid #c9d8e5;border-radius:20px;padding:20px}.dashboard-direction .dashboard-group-pilotage .dashboard-card-primary{background:#e5f0f9;border-color:#b8cedf}@media (width<=800px){.direction-report dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.direction-payroll-metrics{grid-template-columns:1fr}.direction-report{padding:18px}.dashboard-direction .dashboard-group-pilotage{padding:16px}}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-ext-wght-normal-DdQaqQDo.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-wght-normal-Bc-8i84L.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@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-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-900:oklch(41.4% .112 45.904);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-semibold:600;--leading-relaxed:1.625;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-app);--default-mono-font-family:var(--font-mono)}}@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%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;-webkit-text-decoration:inherit;-webkit-text-decoration: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:where(:not(iframe)){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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,summary{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button:not(:disabled),summary{cursor:pointer}button:disabled{cursor:wait}a,button,input,summary,[tabindex]:not([tabindex="-1"]){outline-offset:4px}:focus-visible{outline:3px solid var(--brand-gold)}input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}h1:focus{outline:none}::selection{background:var(--brand-gold-light);color:#3e2226}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.top-3{top:calc(var(--spacing) * 3)}.right-3{right:calc(var(--spacing) * 3)}.my-3{margin-block:calc(var(--spacing) * 3)}.my-6{margin-block:calc(var(--spacing) * 6)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-7{margin-bottom:calc(var(--spacing) * 7)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.min-h-11{min-height:calc(var(--spacing) * 11)}.w-14{width:calc(var(--spacing) * 14)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.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}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-primary{background-color:var(--primary)}.bg-\[image\:var\(--brand-gradient-action\)\]{background-image:var(--brand-gradient-action)}.p-1{padding:var(--spacing)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.pr-12{padding-right:calc(var(--spacing) * 12)}.text-left{text-align:left}.text-right{text-align:right}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-900{color:var(--color-amber-900)}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-white{color:var(--color-white)}.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,)}.opacity-60{opacity:.6}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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))}.placeholder\:text-muted-foreground\/75::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.placeholder\:text-muted-foreground\/75::placeholder{color:color-mix(in oklab, var(--muted-foreground) 75%, transparent)}}@media (hover:hover){.hover\:border-primary\/45:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/45:hover{border-color:color-mix(in oklab, var(--primary) 45%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-\[image\:var\(--brand-gradient-action-hover\)\]:hover{background-image:var(--brand-gradient-action-hover)}.hover\:text-foreground:hover{color:var(--foreground)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-60:disabled{opacity:.6}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}@media (width>=40rem){.sm\:inline{display:inline}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (width>=64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}:root{--font-app:"Outfit Variable", "Outfit", system-ui, sans-serif;--background:#f8f3eb;--foreground:#38272c;--card:#fffaf3;--primary:#762e36;--primary-hover:#592029;--primary-foreground:#fff8ed;--muted:#f0e6d9;--muted-foreground:#706167;--border:#e6d9ca;--input:#e1d6cc;--destructive:#a52d36;--brand-gold:#b7864b;--brand-gold-light:#efd19b;--brand-on-dark:#fff3e6;--brand-muted-on-dark:#d4bbc1;--brand-gradient-dark:linear-gradient(125deg, #1b1018 4%, #321822 54%, #502823 100%);--brand-gradient-action:linear-gradient(110deg, #672736 0%, #8d393b 55%, #9a5338 100%);--brand-gradient-action-hover:linear-gradient(110deg, #762c3c, #914038 60%, #9e563a);--brand-gradient-card:linear-gradient(155deg, #fffdf6 0%, #fcf6eb 68%, #f5e8d4 100%);--success:#356044;--success-background:#f0f5ee;--success-border:#cfdecb;--warning:#7b501c;--warning-background:#fff6e3;--warning-border:#e8d1a6;--error-background:#fff1f1;--error-border:#efc6cb}.login-experience{--scene-play-state:running;isolation:isolate;color:#fff3e6;background:var(--brand-gradient-dark);flex-direction:column;min-height:100dvh;display:flex;position:relative;overflow:hidden}.login-experience[data-motion=paused]{--scene-play-state:paused}.login-experience ::selection{color:#3e2226;background:#efd19b}.login-experience :focus-visible{outline-color:#d29b4f}.auth-atmosphere{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.auth-orb{filter:blur(85px);animation:24s ease-in-out infinite alternate auth-drift;animation-play-state:var(--scene-play-state);will-change:transform;border-radius:50%;position:absolute}.auth-orb-gold{opacity:.24;background:#d68d35;width:540px;height:540px;top:-330px;left:20%}.auth-orb-wine{opacity:.38;background:#9e334d;width:620px;height:620px;animation-delay:-9s;bottom:-360px;left:-260px}.auth-orb-copper{opacity:.28;background:#d08336;width:560px;height:560px;animation-delay:-16s;top:20%;right:-300px}.auth-grid{background-image:linear-gradient(#f2d29806 1px,#0000 1px),linear-gradient(90deg,#f2d29806 1px,#0000 1px);background-size:84px 84px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 80%);mask-image:linear-gradient(90deg,#000,#0000 80%)}.auth-footer{justify-content:space-between;align-items:center;gap:24px;width:calc(100% - 96px);max-width:1312px;margin-inline:auto;display:flex;position:relative}.auth-content{flex:1;grid-template-columns:minmax(0,1fr) minmax(380px,444px);align-items:center;gap:80px;width:calc(100% - 128px);max-width:1200px;margin-inline:auto;padding:30px 0 40px;display:grid}.auth-hero{align-self:stretch;align-items:center;min-width:0;display:flex;position:relative}.auth-hero-copy{z-index:1;width:100%;padding:25px 0;position:relative}.auth-eyebrow{color:#e3bc90;letter-spacing:2.5px;align-items:center;gap:10px;font-size:9px;font-weight:600;animation:.8s .1s both auth-reveal;display:flex}.auth-eyebrow>span{background:linear-gradient(90deg,#d19847,#f3d69c);width:24px;height:1px;display:inline-block}.auth-hero-title{font-family:var(--font-app);letter-spacing:-.035em;margin-top:28px;font-size:clamp(76px,7.1vw,104px);font-weight:500;line-height:.99;position:relative}.auth-hero-title>span{width:fit-content;animation:.9s .2s both auth-reveal;display:block}.auth-hero-title>span:nth-child(2){animation-delay:.32s}.auth-hero-title em{color:#f6e8da;letter-spacing:-.025em;margin-top:22px;font-size:.48em;font-style:normal;font-weight:400;line-height:1.2;animation:.9s .44s both auth-reveal;display:block}.auth-gradient-text{color:#efc380;-webkit-text-fill-color:transparent;background:linear-gradient(110deg,#c98c41 0%,#f8dfa6 30%,#dcac60 54%,#bb7141 76%,#f4d99e 100%) 0 0/210% 100%;-webkit-background-clip:text;background-clip:text}.auth-hero-title>.auth-gradient-text{animation:.9s .32s both auth-reveal,12s ease-in-out 1.3s infinite auth-gold-flow;animation-play-state:running, var(--scene-play-state)}.auth-hero-description{color:#d4bbc1;max-width:390px;margin-top:30px;font-size:14px;line-height:1.95;animation:.9s .54s both auth-reveal}.auth-hero-divider{color:#ddaa64;align-items:center;gap:13px;width:170px;margin:30px 0;animation:.9s .64s both auth-reveal;display:flex}.auth-hero-divider>span:first-child{width:52px}.auth-hero-divider>span{background:linear-gradient(90deg,#dba56380,#dba56310);flex:1;height:1px}.auth-floating-note{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:fit-content;animation:8s ease-in-out 1s infinite auth-float;animation-play-state:var(--scene-play-state);background:linear-gradient(120deg,#ffffff09,#ffffff02);border:1px solid #e5bc7d26;border-radius:14px;align-items:center;gap:14px;padding:15px 19px 15px 15px;display:flex;box-shadow:0 14px 40px #12081018}.auth-note-icon{color:#edca8e;background:linear-gradient(140deg,#d9a55b22,#ce795208);border:1px solid #e9c98930;border-radius:24px 24px 8px 8px;place-items:center;width:42px;height:46px;display:grid}.auth-floating-note strong{color:#f0dfd3;font-size:12px;font-weight:500;display:block}.auth-floating-note p{color:#c1a7af;margin-top:6px;font-size:10px}.auth-signature{z-index:0;opacity:.42;pointer-events:none;width:570px;position:absolute;top:50%;right:-206px;transform:translateY(-52%)}.auth-signature svg{width:100%;display:block;overflow:visible}.auth-signature-orbit{transform-origin:310px 314px;animation:46s linear infinite auth-orbit;animation-play-state:var(--scene-play-state)}.auth-portal-line{stroke-dasharray:1800;stroke-dashoffset:0;animation:2.6s .15s both auth-draw}.auth-vertical-caption{writing-mode:vertical-rl;letter-spacing:3px;color:#ba8b806e;font-size:7px;position:absolute;bottom:18px;left:-42px;transform:rotate(180deg)}.auth-card{background:var(--brand-gradient-card);min-width:0;color:var(--foreground);border:1px solid #f6d49a70;border-radius:24px;animation:1s cubic-bezier(.2,.7,.2,1) .2s both auth-card-reveal;position:relative;box-shadow:0 32px 90px #0d060c45,0 0 90px #e2a8500a,inset 0 1px #fff}.auth-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffeac0,#0000);height:1px;position:absolute;top:-1px;left:15%;right:15%}.auth-card-inner{padding:30px 34px;position:relative}.auth-card-top{letter-spacing:1.8px;color:#7d6159;justify-content:space-between;align-items:center;gap:16px;font-size:8px;font-weight:650;display:flex}.auth-card-symbol{color:#92693c;background:#f4ead83d;border:1px solid #ddc8ac;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.auth-card-heading{text-align:center;margin-top:18px}.auth-logo-heading{margin:0}.auth-card-logo{width:clamp(150px,15vw,180px);max-width:100%;height:auto;margin-inline:auto;display:block}.auth-card-heading>p{color:var(--muted-foreground);margin-top:12px;font-size:12px;line-height:1.8}.auth-form{gap:21px;margin-top:27px;display:grid}.auth-field-label{color:#594049;margin-bottom:9px;font-size:12px;font-weight:600;display:block}.auth-input-wrap{position:relative}.auth-input-icon{z-index:1;color:#9a8279;pointer-events:none;transition:color .2s;position:absolute;top:18px;left:15px}.auth-input-wrap:focus-within .auth-input-icon{color:#9d632b}.auth-input{color:#38272c;background:#fffdf9b8;border-color:#dfd3c8;border-radius:10px;height:53px;padding-left:44px;font-size:14px;transition:border-color .2s,box-shadow .2s,background .2s;box-shadow:0 2px 4px #61442803}.auth-input::placeholder{color:#7c6c72;font-size:12px}.auth-input:hover{border-color:#bc9670}.auth-input:focus-visible{outline-offset:2px;background:#fffdf9;border-color:#bd8a46;outline:2px solid #b7864b;box-shadow:0 0 0 5px #cda65e12}.auth-input[aria-invalid=true]{border-color:var(--destructive)}.auth-password-input{padding-right:48px}.auth-password-toggle{color:#8a7279;border-radius:7px;place-items:center;width:44px;height:43px;transition:color .2s,background .2s;display:grid;position:absolute;top:5px;right:4px}.auth-password-toggle:hover{color:#762e36;background:#efe2ce80}.auth-field-error{color:var(--destructive);margin-top:7px;font-size:12px;line-height:1.6}.auth-submit{isolation:isolate;color:#fff8ed;background:var(--brand-gradient-action);border:1px solid #7a343c;border-radius:10px;justify-content:space-between;width:100%;min-height:53px;margin-top:3px;padding-inline:20px;font-size:13px;transition:box-shadow .25s,transform .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 7px 18px #853c3520}.auth-submit:before{content:"";z-index:-1;animation:8s ease-in-out 2s infinite auth-sheen;animation-play-state:var(--scene-play-state);pointer-events:none;background:linear-gradient(105deg,#0000 40%,#ffe9be14 50%,#0000 60%);position:absolute;inset:-100% -30%;transform:translate(-65%)}.auth-submit:hover:not(:disabled){background:var(--brand-gradient-action-hover);transform:translateY(-2px);box-shadow:0 10px 24px #853c3538}.auth-submit:active:not(:disabled){transform:translateY(0)}.auth-submit>svg:last-child{transition:transform .25s}.auth-submit:hover:not(:disabled)>svg:last-child{transform:translate(3px)}.auth-submit:disabled{justify-content:center}.auth-security-note{color:#705f58;text-align:center;justify-content:center;align-items:center;gap:7px;margin-top:-5px;font-size:11px;line-height:1.6;display:flex}.auth-security-note svg{flex-shrink:0}.auth-help{color:#78645b;border-top:1px solid #decdbb80;align-items:flex-start;gap:10px;margin-top:24px;padding-top:21px;display:flex}.auth-help>svg{flex-shrink:0;margin-top:2px}.auth-help p{font-size:11px;line-height:1.8}.auth-help p+p{color:#664b4d;margin-top:2px;font-weight:500}.auth-footer{color:#c4a6ae;padding-top:8px;padding-bottom:24px;font-size:10px;line-height:1.7;animation:.9s .7s both auth-reveal}.auth-footer-dot{color:#bc8659;margin-inline:12px}.auth-motion-toggle{color:#d4b4b4;border-radius:30px;flex-shrink:0;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:8px 12px;font-size:10px;transition:background .2s;display:inline-flex}.auth-motion-toggle:hover{color:#f4dcc2;background:#ffffff0a}@keyframes auth-drift{0%{transform:translate(-25px,-15px)scale(.95)}to{transform:translate(65px,65px)scale(1.15)}}@keyframes auth-reveal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-card-reveal{0%{opacity:0;transform:translateY(24px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes auth-gold-flow{0%,to{background-position:0%}50%{background-position:100%}}@keyframes auth-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes auth-orbit{to{transform:rotate(360deg)}}@keyframes auth-draw{0%{opacity:0;stroke-dashoffset:1800px}to{opacity:1;stroke-dashoffset:0}}@keyframes auth-sheen{0%,65%{transform:translate(-65%)}90%,to{transform:translate(65%)}}@media (width>=1600px){.auth-content{grid-template-columns:minmax(0,1fr) 460px;gap:130px;max-width:1300px;padding-block:40px 56px}.auth-hero-title{font-size:116px}.auth-card-inner{padding:36px 40px}}@media (width<=1150px){.auth-footer{width:calc(100% - 64px)}.auth-content{grid-template-columns:minmax(0,1fr) minmax(360px,410px);gap:42px;width:calc(100% - 96px)}.auth-hero-title{font-size:82px}.auth-hero-title em{font-size:.44em}.auth-card-inner{padding-inline:28px}.auth-hero-description{font-size:12px}.auth-vertical-caption{left:-29px}}@media (width<=900px){.auth-content{grid-template-columns:minmax(0,1fr);gap:36px;width:calc(100% - 64px);max-width:520px;padding-top:28px;padding-bottom:40px}.auth-hero{text-align:center}.auth-hero-copy{padding:12px 0 0}.auth-eyebrow{letter-spacing:2px;justify-content:center;font-size:8px}.auth-hero-title{letter-spacing:-.035em;margin-top:20px;font-size:65px;line-height:1.12}.auth-hero-title>span{display:inline}.auth-hero-title>span+span{margin-left:.15em}.auth-hero-title em{letter-spacing:-.025em;margin-top:7px;font-size:.48em}.auth-hero-description{margin:19px auto 0;font-size:12px;line-height:1.85}.auth-signature{opacity:.16;width:410px;top:15%;right:-90px}.auth-hero-divider,.auth-floating-note,.auth-vertical-caption{display:none}.auth-card-inner{padding:30px 36px}.auth-footer{max-width:650px}.auth-orb{filter:blur(65px)}}@media (width<=520px){.auth-footer{width:calc(100% - 40px)}.auth-content{gap:30px;width:calc(100% - 36px);padding-top:18px;padding-bottom:24px}.auth-hero-title{letter-spacing:-.035em;font-size:clamp(39px,12vw,60px)}.auth-hero-title em{font-size:.51em}.auth-eyebrow{letter-spacing:1.8px;font-size:7px}.auth-hero-description{display:none}.auth-card{border-radius:19px}.auth-card-inner{padding:25px 24px}.auth-card-top{letter-spacing:1.5px;font-size:7px}.auth-input{font-size:16px}.auth-help{gap:8px}.auth-help p{font-size:11px}.auth-footer{text-align:center;flex-direction:column;gap:3px;padding-top:5px;padding-bottom:16px;font-size:9px}}@media (width<=359px){.auth-card-inner{padding-inline:19px}.auth-security-note{font-size:10px}}@media (prefers-reduced-motion:reduce){.login-experience *,.login-experience :before,.login-experience :after{transition:none!important;animation:none!important}.auth-motion-toggle{display:none}.auth-portal-line{stroke-dashoffset:0}.auth-submit:hover:not(:disabled){transform:none}}.management-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.management-heading>.page-heading{flex:1;min-width:0}.management-heading>a{flex-shrink:0;margin-top:10px}.back-link{margin:-6px 0 19px -12px}.management-note{color:var(--muted-foreground);font-size:13px;line-height:1.8}.management-form{gap:24px;display:grid}.create-user-form{max-width:1000px}.management-field>label{color:var(--foreground);margin-bottom:9px;font-size:13px;font-weight:500;display:block}.management-field input[readonly]{background:var(--muted);color:var(--muted-foreground)}.field-hint{color:var(--muted-foreground);margin-top:8px;font-size:12px;line-height:1.7}.management-field-error{color:var(--destructive);margin-top:8px;font-size:12px;line-height:1.7}.form-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.form-section-heading h2{font-size:16px;font-weight:600}.form-section-heading p{color:var(--muted-foreground);margin-top:8px;font-size:13px;line-height:1.8}.form-actions{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:4px;padding-top:20px;display:flex}.editor-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.editor-column{gap:24px;min-width:0;display:grid}.user-summary,.role-summary{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:12px 22px;margin-bottom:28px;font-size:12px;line-height:1.7;display:flex}.editor-column>.role-summary{margin-bottom:0}.management-password{position:relative}.management-password>button{width:42px;height:40px;color:var(--muted-foreground);border-radius:6px;place-items:center;display:grid;position:absolute;top:4px;right:4px}.management-password>button:hover{background:var(--muted);color:var(--primary)}.inline-checkbox{color:var(--foreground);cursor:pointer;align-items:flex-start;gap:12px;font-size:13px;display:flex}.inline-checkbox small{color:var(--muted-foreground);margin-top:5px;font-size:12px;line-height:1.7;display:block}.inline-checkbox input,.choice-row input{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0;margin-top:3px}.choice-fieldset{min-width:0}.choice-fieldset>legend{color:var(--foreground);margin-bottom:4px;font-size:14px;font-weight:600}.choice-list{gap:8px;margin-top:15px;display:grid}.choice-row{border:1px solid var(--border);cursor:pointer;background:#fffdf840;border-radius:10px;align-items:flex-start;gap:12px;padding:13px 14px;transition:border-color .15s,background .15s;display:flex}.choice-row:has(input:checked){background:#f6e9dc;border-color:#bb8c66}.choice-row:has(input:disabled){cursor:default}.choice-row:has(input:disabled):not(:has(input:checked)){background:#f2ece4}.choice-row>span{min-width:0}.choice-row strong{overflow-wrap:anywhere;font-size:13px;font-weight:500;line-height:1.65;display:block}.choice-row small{color:var(--muted-foreground);overflow-wrap:anywhere;margin-top:3px;font-size:11px;line-height:1.7;display:block}.choice-fieldset[aria-invalid=true] .choice-list{border-left:2px solid var(--destructive);padding-left:10px}.permission-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.permission-toolbar .search-input{flex:1}.permission-toolbar .role-badge{flex-shrink:0}.selection-actions{flex-wrap:wrap;gap:2px 8px;margin:8px -12px;display:flex}.selection-actions button{font-size:12px}.permission-groups{gap:24px;margin-top:24px;display:grid}.permission-groups h3{color:var(--primary);font-size:13px;font-weight:600}.permission-groups .choice-list{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));margin-top:10px}.filters-panel{padding:22px}.users-search{align-items:center;gap:12px;display:flex}.search-input{min-width:0;display:block;position:relative}.users-search .search-input{flex:1}.search-input>svg{z-index:1;color:var(--muted-foreground);pointer-events:none;position:absolute;top:15px;left:14px}.search-input input{padding-left:42px}.filter-selects{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-top:20px;display:flex}.filter-selects>label{min-width:150px;color:var(--muted-foreground);flex:1;gap:7px;font-size:12px;display:grid}.list-toolbar{color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:16px;margin:20px 0;font-size:13px;display:flex}.resource-loading{color:var(--muted-foreground);align-items:center;gap:12px;font-size:13px;display:flex}.management-table-wrap{border:1px solid var(--border);background:var(--card);border-radius:14px;overflow-x:auto}.management-table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.management-table thead{color:#75543c;background:#f0e3d3}.management-table thead th{white-space:nowrap;padding:16px 18px;font-size:12px;font-weight:500}.management-table th small{font-size:11px;font-weight:400}.management-table tbody th,.management-table tbody td{border-top:1px solid var(--border);vertical-align:middle;padding:19px 18px}.management-table tbody th{min-width:230px;font-weight:500}.management-table tbody tr:hover{background:#f9f0e6}.user-name-link{color:var(--primary);text-underline-offset:4px;font-weight:600;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.user-name-link:hover{text-decoration-color:currentColor}.user-email{color:var(--muted-foreground);overflow-wrap:anywhere;margin-top:5px;display:block}.self-badge{background:var(--muted);color:var(--muted-foreground);border-radius:4px;margin-left:8px;padding:1px 7px;font-size:10px;display:inline-block}.table-badges{flex-wrap:wrap;gap:6px;display:flex}.table-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.table-actions>*{font-size:12px}.table-date{min-width:155px;color:var(--muted-foreground);font-size:12px}.table-readonly{color:var(--muted-foreground);text-align:right;margin-top:7px;font-size:10px}.account-status{border:1px solid var(--success-border);width:fit-content;color:var(--success);background:var(--success-background);white-space:nowrap;border-radius:20px;align-items:center;gap:7px;padding:5px 9px;font-size:11px;font-weight:500;display:inline-flex}.account-status>span{background:currentColor;border-radius:50%;width:5px;height:5px}.account-status.is-inactive{color:#72555d;background:#eee3e5;border-color:#ddc9ce}.pagination{color:var(--muted-foreground);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;font-size:12px;display:flex}.pagination>div{gap:8px;display:flex}.empty-state{text-align:center;justify-items:center;gap:13px;padding:45px 25px;display:grid}.empty-state>svg{color:var(--brand-gold)}.empty-state h2{font-size:17px;font-weight:500}.empty-state p,.empty-inline{color:var(--muted-foreground);font-size:13px;line-height:1.8}.empty-inline{padding:20px 0}.role-kind{color:#86613e;margin-top:3px;font-size:10px;display:block}.role-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px;padding-top:18px;display:flex}.role-actions p{flex-basis:100%;margin-top:0}.danger-panel{border-color:#e7c4c8}.inline-link{text-underline-offset:3px;margin-top:10px;text-decoration:underline;display:block}.modal-overlay{z-index:80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1b10189c;position:fixed;inset:0}.modal-content{z-index:81;background:var(--brand-gradient-card);width:min(600px,100% - 40px);max-height:calc(100dvh - 48px);color:var(--foreground);border:1px solid #dbc29c;border-radius:20px;padding:32px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 30px 100px #12081045}.modal-content:focus{outline:none}.modal-title{letter-spacing:-.5px;padding-right:28px;font-size:23px;font-weight:500;line-height:1.4}.modal-description{color:var(--muted-foreground);margin-top:14px;font-size:13px;line-height:1.9}.modal-close{width:40px;height:40px;color:var(--muted-foreground);border-radius:8px;place-items:center;display:grid;position:absolute;top:19px;right:18px}.modal-close:hover{background:var(--muted)}.modal-confirm .form-actions{margin-top:24px}@media (width<=1200px){.editor-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=650px){.management-heading{flex-direction:column;align-items:stretch;gap:0;margin-bottom:24px}.management-heading>a{align-self:flex-start;margin-top:-6px}.form-grid{grid-template-columns:minmax(0,1fr);gap:22px}.users-search{flex-direction:column;align-items:stretch}.users-search>button{align-self:flex-end}.filter-selects>label{min-width:120px}.permission-toolbar{flex-direction:column;align-items:stretch;gap:12px}.permission-toolbar .role-badge{align-self:flex-start}.form-actions{gap:8px}.form-actions>button{flex-grow:1}.modal-content{width:calc(100% - 28px);max-height:calc(100dvh - 28px);padding:27px 22px}.modal-title{font-size:21px}}.type-piece-form{max-width:900px}.type-piece-textarea{resize:vertical;border:1px solid var(--input);background:var(--card);width:100%;min-height:140px;color:var(--foreground);font:inherit;border-radius:8px;padding:12px 14px;font-size:14px;line-height:1.8;display:block}.type-piece-textarea:hover{border-color:var(--primary)}.type-piece-textarea:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.type-piece-textarea[aria-invalid=true]{border-color:var(--destructive)}.type-piece-textarea:disabled{opacity:.6}.type-piece-description{white-space:pre-wrap;overflow-wrap:anywhere}.type-piece-table-description{white-space:normal;overflow-wrap:anywhere;max-width:360px}.client-profile{grid-template-columns:minmax(0,1.4fr) minmax(260px,.9fr);gap:20px;display:grid}.client-profile>.panel{min-width:0}.client-identity{padding:0;overflow:hidden}.client-identity-header{border-bottom:1px solid var(--border);background:var(--brand-gradient-card);align-items:center;gap:18px;padding:26px;display:flex}.client-identity-header>div{min-width:0}.client-monogram{background:var(--brand-gradient-action);width:66px;height:66px;color:var(--primary-foreground);border:1px solid #b68c65;border-radius:20px;flex-shrink:0;place-items:center;font-size:24px;font-weight:500;display:grid;box-shadow:0 6px 18px #762e3612}.client-reference{color:#79532e;align-items:center;gap:6px;margin-bottom:7px;font-size:11px;font-weight:500;display:inline-flex}.client-identity h2,.client-section-heading h2{color:var(--foreground);overflow-wrap:anywhere;font-size:16px;font-weight:600;line-height:1.5}.client-identity-header p{color:var(--muted-foreground);margin-top:4px;font-size:12px}.client-identity-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 30px;padding:26px;display:grid}.client-profile dt{color:var(--muted-foreground);align-items:center;gap:7px;margin-bottom:8px;font-size:12px;line-height:1.6;display:flex}.client-profile dt svg{flex-shrink:0}.client-profile dd{color:var(--foreground);overflow-wrap:anywhere;font-size:16px;font-weight:500;line-height:1.6}.client-profile .client-readonly-note{margin:19px 26px 0}.client-section-heading{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.client-section-icon{width:38px;height:38px;color:var(--primary);background:#f6ecdf;border:1px solid #e4d2bd;border-radius:11px;flex-shrink:0;place-items:center;display:grid}.client-contact-fields{margin-top:25px}.client-phone a{max-width:100%;color:var(--primary);text-underline-offset:5px;overflow-wrap:anywhere;align-items:center;gap:9px;font-size:clamp(17px,1.8vw,22px);-webkit-text-decoration:underline #c6a18c;text-decoration:underline #c6a18c;display:inline-flex}.client-phone a svg{flex-shrink:0}.client-phone a:hover{color:var(--primary-hover);text-decoration-color:currentColor}.client-document-type{border-top:1px solid var(--border);margin-top:23px;padding-top:20px}.client-document-label{color:#71502e;background:#f5ead8;border:1px solid #e3ceb1;border-radius:8px;max-width:100%;padding:6px 12px;font-size:14px;display:inline-block}.client-contact-note{color:var(--muted-foreground);margin-top:15px;font-size:12px;line-height:1.8}.client-registration{grid-column:1/-1}.client-timezone{background:var(--muted);color:var(--muted-foreground);border-radius:6px;margin-left:auto;padding:4px 9px;font-size:11px}.client-registration-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:24px;display:grid}.client-registration-fields>div+div{border-left:1px solid var(--border);padding-left:24px}.client-registration-fields dd{font-size:14px}.client-related{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px;display:grid}.client-related .panel{min-width:0;box-shadow:none;border-style:dashed}.client-related-heading{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.client-related-heading>svg{color:var(--primary);flex-shrink:0}.client-related h2{font-size:15px;font-weight:600}.client-related .role-badge{margin-left:auto}.client-related p{color:var(--muted-foreground);margin-top:15px;font-size:13px;line-height:1.8}@media (width<=1150px){.client-profile,.client-related{grid-template-columns:minmax(0,1fr)}}@media (width<=650px){.client-identity-header,.client-identity-fields{padding:22px}.client-identity-header{gap:13px}.client-monogram{border-radius:15px;width:50px;height:50px;font-size:19px}.client-registration-fields{grid-template-columns:minmax(0,1fr);gap:18px}.client-registration-fields>div+div{border-left:0;border-top:1px solid var(--border);padding:18px 0 0}}@media (width<=420px){.client-identity-fields{grid-template-columns:minmax(0,1fr);gap:20px}}.client-documents{margin-top:1.5rem}.document-section-heading,.document-review-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.document-section-heading h2{align-items:center;gap:.65rem;font-size:1.35rem;font-weight:650;display:flex}.document-eyebrow{letter-spacing:.15em;color:var(--muted-foreground);margin-bottom:.35rem;font-size:.66rem;font-weight:650}.document-intro{color:var(--muted-foreground);max-width:75ch;margin:.8rem 0 1.5rem;font-size:.9rem;line-height:1.7}.document-methods{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:1.25rem;margin-top:1rem;display:grid}.document-methods h3{align-items:center;gap:.5rem;font-size:1rem;font-weight:600;display:flex}.document-upload-form,.document-mobile-choice{border:1px solid var(--border);border-radius:1rem;padding:1.25rem}.document-mobile-choice{background:var(--background);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.9rem;display:flex}.document-mobile-choice>p{max-width:34ch;font-size:.88rem;line-height:1.6}.document-mobile-icon{color:var(--primary);background:var(--card);border:1px solid var(--border);border-radius:1rem;width:fit-content;padding:.9rem}.document-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.2rem 0;display:grid}.document-photo-grid>:only-child{grid-column:1/-1}.document-photo-field{border:1px dashed var(--border);background:var(--card);border-radius:.8rem;min-width:0;padding:1rem}.document-photo-field label{align-items:center;gap:.5rem;margin-bottom:.85rem;font-size:.86rem;font-weight:600;display:flex}.document-photo-field input{width:100%;min-width:0;font-size:.8rem}.document-photo-field input::file-selector-button{border:1px solid var(--border);background:var(--background);color:var(--primary);cursor:pointer;border-radius:.5rem;margin:0 .5rem .5rem 0;padding:.55rem .7rem}.document-photo-field small,.document-help{color:var(--muted-foreground);margin-top:.65rem;font-size:.76rem;line-height:1.6;display:block}.document-photo-field img{object-fit:contain;background:var(--background);border-radius:.5rem;width:100%;height:140px;margin-bottom:.75rem}.document-qr{object-fit:contain;background:#fff;border-radius:.65rem;width:210px;max-width:100%;height:210px}.document-history{border-top:1px solid var(--border);margin-top:1.8rem;padding-top:1.4rem}.document-history>h3{margin-bottom:1rem;font-size:1rem;font-weight:650}.document-empty{color:var(--muted-foreground);padding:1rem 0;font-size:.9rem}.document-review{border:1px solid var(--border);border-radius:.85rem;gap:.9rem;margin-top:1rem;padding:1.15rem;display:grid}.document-review .document-help{margin:0}.document-identity-comparison{background:var(--background);border-radius:.6rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1rem;display:grid}.document-identity-comparison dt{color:var(--muted-foreground);margin-bottom:.3rem;font-size:.73rem}.document-identity-comparison dd{overflow-wrap:anywhere;font-size:.9rem;font-weight:600}.document-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.document-preview-grid img{object-fit:contain;background:var(--background);border-radius:.6rem;width:100%;height:220px}.document-validation-form{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.document-validation-form>label{width:100%;font-size:.85rem;font-weight:500}.document-validation-form textarea{background:var(--card);border:1px solid var(--border);border-radius:.5rem;width:100%;min-height:95px;margin-top:.5rem;padding:.8rem;display:block}.document-check{align-items:flex-start;gap:.6rem;line-height:1.6;display:flex}.document-check input{margin-top:.3rem}.document-validation{color:var(--primary);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.document-capture-page{max-width:680px;min-height:100dvh;margin:0 auto;padding:2rem 1rem}.document-capture-brand{color:var(--primary);letter-spacing:.08em;align-items:center;gap:.5rem;margin-bottom:1.3rem;font-size:.68rem;display:flex}.document-capture-page h1{margin:1rem 0;font-size:clamp(1.5rem,5vw,2rem);font-weight:650}.document-capture-page .panel>p{color:var(--muted-foreground);margin-bottom:1rem;font-size:.92rem;line-height:1.7}.document-capture-page form>button{width:100%}.document-capture-success{color:var(--primary)}@media (width<=1050px){.document-methods{grid-template-columns:1fr}}@media (width<=600px){.document-photo-grid,.document-identity-comparison,.document-preview-grid{grid-template-columns:1fr}.document-upload-form,.document-mobile-choice,.document-review{padding:.9rem}.document-capture-page{padding:1rem .6rem}}.document-zoom{object-fit:contain;width:100%;max-height:70vh}.document-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.25rem;display:grid}.document-gallery-face{min-width:0}.document-gallery-button{background:var(--background);border:1px solid var(--border);cursor:zoom-in;border-radius:.8rem;gap:.7rem;width:100%;padding:.75rem;display:grid}.document-gallery-button:hover{border-color:var(--primary)}.document-gallery-button:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.document-gallery-button img{object-fit:contain;border-radius:.4rem;width:100%;height:clamp(200px,24vw,320px)}.document-gallery-button span{color:var(--muted-foreground);font-size:.85rem}.document-gallery-loading{min-height:220px;color:var(--muted-foreground);place-items:center;display:grid}@media (width<=600px){.document-gallery{grid-template-columns:1fr}}.hotel-select{width:100%;min-width:0;font-family:var(--font-app);color:var(--foreground);font-size:14px;position:relative}.hotel-select .hotel-select__control{border:1px solid var(--input);background:var(--brand-gradient-card);cursor:pointer;border-radius:10px;min-height:48px;transition:border-color .15s,box-shadow .15s}.hotel-select .hotel-select__control:hover{border-color:var(--brand-gold)}.hotel-select .hotel-select__control--is-focused{border-color:var(--primary);box-shadow:0 0 0 3px #b7864b24}.hotel-select:has([aria-invalid=true]) .hotel-select__control{border-color:var(--destructive);box-shadow:0 0 0 3px #a52d3612}.hotel-select .hotel-select__control--is-disabled{opacity:.6;background:var(--muted);cursor:not-allowed}.hotel-select .hotel-select__value-container{gap:4px;padding:10px 13px}.hotel-select .hotel-select__single-value{color:var(--foreground)}.hotel-select .hotel-select__placeholder{color:var(--muted-foreground)}.hotel-select .hotel-select__input-container{color:var(--foreground)}.hotel-select .hotel-select__dropdown-indicator{color:var(--brand-gold);padding:10px 12px 10px 5px}.hotel-select .hotel-select__loading-indicator{color:var(--brand-gold);margin-right:10px}.hotel-select__menu-portal{font-family:var(--font-app);color:var(--foreground);font-size:14px}:is(.hotel-select,.hotel-select__menu-portal) .hotel-select__menu{z-index:10;border:1px solid var(--border);background:var(--card);border-radius:12px;margin:7px 0;overflow:hidden;box-shadow:0 16px 40px #32182226,0 2px 8px #3218220d}:is(.hotel-select,.hotel-select__menu-portal) .hotel-select__menu-list{scrollbar-width:thin;scrollbar-color:var(--brand-gold) var(--muted);padding:6px}:is(.hotel-select,.hotel-select__menu-portal) .hotel-select__option{cursor:pointer;overflow-wrap:anywhere;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:10px 12px;line-height:1.5;display:flex}.hotel-select__option>span{min-width:0}.hotel-select__option>svg{flex-shrink:0}:is(.hotel-select,.hotel-select__menu-portal) .hotel-select__option--is-focused{background:var(--muted)}:is(.hotel-select,.hotel-select__menu-portal) .hotel-select__option--is-selected{background:var(--brand-gradient-action);color:var(--primary-foreground);font-weight:500}:is(.hotel-select,.hotel-select__menu-portal) .hotel-select__option--is-disabled{opacity:.45;cursor:not-allowed}:is(.hotel-select,.hotel-select__menu-portal) .hotel-select__menu-notice{color:var(--muted-foreground);padding:18px 12px;line-height:1.7}.filter-field{flex:1;gap:7px;min-width:150px;min-height:0;display:grid}.filter-field>label{color:var(--muted-foreground);font-size:12px}@media (width<=650px){.filter-field{min-width:min(160px,100%)}}@media (prefers-reduced-motion:reduce){.hotel-select .hotel-select__control{transition:none}}.reservation-summary{background:var(--background);border:1px solid var(--border);border-radius:.8rem;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:1.25rem 0;padding:1.25rem;display:grid}.reservation-summary dt{color:var(--muted-foreground);margin-bottom:.4rem;font-size:.8rem}.reservation-summary dd{overflow-wrap:anywhere;font-weight:650}.reservation-total dd{color:var(--primary);font-size:1.35rem}.reservation-detail-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.reservation-detail-top h2{font-size:1.15rem;font-weight:650}.reservation-detail-footer{color:var(--muted-foreground);flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.8rem;display:flex}.reservation-reason{gap:.5rem;margin-top:1rem;display:grid}.reservation-reason textarea{border:1px solid var(--border);background:var(--background);border-radius:.5rem;min-height:100px;padding:.7rem}.client-reservations>.client-related-heading{margin-bottom:1rem}.client-reservation-list li{border-bottom:1px solid var(--border);padding:.9rem 0}.client-reservation-list p{color:var(--muted-foreground);margin-top:.3rem;font-size:.85rem}@media (width<=650px){.reservation-summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:1rem}}.reservation-status.is-en_attente{color:#895112;background:#fff3db;border-color:#eacfa6}.reservation-status.is-occupation{color:#245574;background:#eaf3f9;border-color:#bed6e6}.reservation-status.is-terminee{color:#32664a;background:#edf5ee;border-color:#c6ddc8}.reservation-status.is-annulee{color:#8b3840;background:#f9ebed;border-color:#e6c3c7}.reservation-stay-time,.reservation-checkout-hint{color:var(--muted-foreground);margin:.7rem 0;font-size:.85rem}.reservation-checkout{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-detail,.reservation-row{--stay-accent:#aa741e;--stay-tint:#fff8e9}.reservation-detail.is-occupation,.reservation-row.is-occupation{--stay-accent:#307491;--stay-tint:#eff7fb}.reservation-detail.is-terminee,.reservation-row.is-terminee{--stay-accent:#3f7755;--stay-tint:#f0f7ef}.reservation-detail.is-annulee,.reservation-row.is-annulee{--stay-accent:#a14a55;--stay-tint:#fcf0f0}.reservation-detail{border-top:4px solid var(--stay-accent)}.reservation-detail-top{background:var(--stay-tint);border-radius:.8rem;padding:1.25rem}.reservation-identity{align-items:center;gap:1rem;min-width:0;display:flex}.reservation-room-icon{background:var(--stay-accent);color:#fff;border-radius:.9rem;flex-shrink:0;place-items:center;width:3.2rem;height:3.2rem;display:grid}.reservation-room-icon svg{width:1.6rem;height:1.6rem}.reservation-kicker{color:var(--stay-accent);letter-spacing:.12em;margin-bottom:.25rem;font-size:.65rem;font-weight:650}.reservation-room-name{color:var(--muted-foreground);margin-top:.25rem;font-size:.85rem}.reservation-heading{flex-wrap:wrap}.reservation-heading .reservation-actions{white-space:normal;flex-wrap:wrap;gap:.65rem;margin-bottom:1.5rem}.reservation-action.is-edit{color:#765019;background:#f8edda;border:1px solid #dabb80}.reservation-action.is-edit:hover{background:#f0dfbe}.reservation-action.is-cancel{color:#973c4e;background:#fbebed;border:1px solid #ddb5be}.reservation-action.is-cancel:hover{background:#f4dce2}.reservation-action.is-entry{color:#fff;background:#28674c;border:1px solid #28674c}.reservation-action.is-entry:hover{background:#1e523d}.reservation-action.is-exit{color:#fff;background:#326c88;border:1px solid #326c88}.reservation-action.is-exit:hover{background:#24536a}.reservation-detail .reservation-summary{background:0 0;border:0;gap:.75rem;padding:0}.reservation-detail .reservation-summary>div{border:1px solid var(--border);background:#f8f3ec;border-radius:.65rem;padding:1rem}.reservation-summary dt{align-items:center;gap:.35rem;display:flex}.reservation-summary dt svg{width:.9rem;height:.9rem}.reservation-detail .reservation-summary .reservation-total{background:#f5ead8;border-color:#d9bd90}.reservation-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0;display:grid}.reservation-time-card{background:#f5f1eb;border:1px dashed #d9cdbd;border-radius:.75rem;align-items:center;gap:.8rem;padding:1rem;display:flex}.reservation-time-card>svg{color:#88796c;flex-shrink:0;width:1.25rem}.reservation-time-card h3{margin-bottom:.25rem;font-size:.8rem;font-weight:650}.reservation-time-card p{color:var(--muted-foreground);font-size:.85rem}.reservation-time-card.is-entry.is-recorded{background:#edf6ee;border:1px solid #c2d8c6}.reservation-time-card.is-entry.is-recorded>svg{color:#28674c}.reservation-time-card.is-exit.is-recorded{background:#edf4f9;border:1px solid #c1d5e2}.reservation-time-card.is-exit.is-recorded>svg{color:#326c88}.reservation-detail-footer{border-top:1px solid var(--border);padding-top:1rem}.reservation-detail-footer>p{align-items:center;gap:.4rem;display:flex}.reservation-detail-footer svg{flex-shrink:0;width:.9rem;height:.9rem}.management-table .reservation-row,.management-table .reservation-row:hover{background:var(--stay-tint)}@supports (color:color-mix(in lab, red, red)){.management-table .reservation-row:hover{background:color-mix(in srgb, var(--stay-tint), var(--stay-accent) 8%)}}.management-table .reservation-row>td:first-child{border-left:4px solid var(--stay-accent)}.reservation-consult{color:#78344b;background:#fff8fa;border-color:#d9b5bf}.reservation-consult:hover{background:#f5e4ea}.reservation-stay-form{gap:1rem;display:grid}.reservation-stay-context{color:#28674c;background:#edf6ee;border-radius:.7rem;align-items:center;gap:.8rem;padding:1rem;display:flex}.reservation-stay-context.is-exit{color:#326c88;background:#edf4f9}.reservation-stay-context p{margin-top:.25rem;font-size:.85rem}@media (width<=650px){.reservation-detail-top{flex-direction:column;align-items:flex-start}.reservation-timeline{grid-template-columns:1fr}.reservation-heading .reservation-actions{justify-content:flex-start;width:100%}.reservation-heading .reservation-actions>button{flex:auto}}.reservation-filters{flex-wrap:wrap;align-items:center;gap:.9rem;padding:1rem 1.15rem;display:flex}.reservation-filter-tabs{flex:auto;align-items:center;gap:.35rem;max-width:100%;padding:.2rem;display:flex;overflow-x:auto}.reservation-filter-tab{--filter-colour:#79334b;--filter-tint:#f5e5eb;min-height:44px;color:var(--muted-foreground);white-space:nowrap;border:1px solid #0000;border-radius:.6rem;flex-shrink:0;justify-content:center;align-items:center;gap:.45rem;padding:.7rem .85rem;font-size:.85rem;font-weight:550;transition:background .15s,color .15s;display:inline-flex}.reservation-filter-tab.is-en_attente{--filter-colour:#895112;--filter-tint:#fff0d6}.reservation-filter-tab.is-occupation{--filter-colour:#245574;--filter-tint:#e4f0f8}.reservation-filter-tab.is-terminee{--filter-colour:#32664a;--filter-tint:#e7f2e9}.reservation-filter-tab.is-annulee{--filter-colour:#8b3840;--filter-tint:#f8e5e9}.reservation-filter-tab:hover{color:var(--filter-colour);background:var(--filter-tint)}.reservation-filter-tab[aria-selected=true]{background:var(--filter-tint);color:var(--filter-colour);border-color:currentColor;font-weight:650}.reservation-filter-tab:focus-visible{outline:2px solid var(--filter-colour);outline-offset:2px}.reservation-filter-dot{background:var(--filter-colour);border-radius:50%;flex-shrink:0;width:.4rem;height:.4rem}.reservation-live-search{flex:240px;max-width:360px;position:relative}.reservation-live-search>svg{width:1.1rem;height:1.1rem;color:var(--muted-foreground);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.reservation-live-search input{padding-left:2.5rem}.reservation-reset-filters{padding:.65rem}@media (width<=760px){.reservation-filter-tabs{flex-basis:100%}.reservation-live-search{max-width:none}}.reservation-filters{align-items:flex-end}.reservation-type-filter{flex:200px;min-width:180px;max-width:250px}.reservation-type-filter>label{color:var(--muted-foreground);margin-bottom:.4rem;font-size:.75rem;font-weight:550;display:block}@media (width<=760px){.reservation-type-filter{max-width:none}}.reservation-stay-kind{color:#633a73;background:#f1e9f6;border-radius:.4rem;margin-top:.45rem;padding:.15rem .5rem;font-size:.7rem;display:inline-block}.reservation-stay-kind.is-passage{color:#77601b;background:#f7edcd}.reservation-payments{margin-top:1.5rem}.payments-heading,.payments-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.payments-heading h2{align-items:center;gap:.6rem;font-size:1.25rem;font-weight:650;display:flex}.payments-heading h2 svg{color:#28765e}.payment-add{color:#fff;background:#28765e}.payment-add:hover{background:#205f4c}.payment-figures{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0;display:grid}.payment-figures>div{border:1px solid var(--border);background:var(--background);border-radius:.85rem;padding:1.2rem}.payment-figures dt{color:var(--muted-foreground);margin-bottom:.5rem;font-size:.85rem}.payment-figures dd{overflow-wrap:anywhere;font-size:1.6rem;font-weight:650}.payment-figures .is-paid{color:#226047;background:#edf6f0;border-color:#c5dfce}.payment-figures .is-remaining{color:#855113;background:#fff5e6;border-color:#edd4ac}.payment-progress{margin-bottom:1.5rem}.payment-progress>div{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.6rem;font-size:.9rem;display:flex}.payment-progress span{align-items:center;gap:.4rem;display:flex}.payment-progress svg{color:#28765e;width:1rem}.payment-progress progress{appearance:none;accent-color:#28765e;background:#e5e8dd;border:0;border-radius:1rem;width:100%;height:.7rem;display:block;overflow:hidden}.payment-progress progress::-webkit-progress-bar{background:#e5e8dd;border-radius:1rem}.payment-progress progress::-webkit-progress-value{background:linear-gradient(90deg,#449b79,#28765e);border-radius:1rem}.payment-progress progress::-moz-progress-bar{background:#28765e;border-radius:1rem}.payment-progress p,.payments-pagination{color:var(--muted-foreground);margin-top:.6rem;font-size:.8rem}.payments-empty{color:var(--muted-foreground);background:var(--background);border-radius:.8rem;align-items:center;gap:.75rem;padding:1.25rem;font-size:.9rem;display:flex}.payment-table-wrap{margin-top:1rem}.payment-mode{color:#226047;white-space:nowrap;background:#edf6f0;border-radius:.4rem;padding:.25rem .55rem;display:inline-block}.payment-amount{color:#226047;white-space:nowrap;font-weight:650}.payment-dialog-balance{color:#226047;background:#edf6f0;border-radius:.6rem;justify-content:space-between;gap:1rem;margin:1.25rem 0;padding:1rem;display:flex}.payment-after{color:#226047;margin-top:1rem;font-size:.9rem}@media (width<=640px){.payment-figures{grid-template-columns:1fr;gap:.65rem}.payment-figures>div{padding:1rem}.payment-figures dd{font-size:1.35rem}.payments-heading .table-actions{width:100%}.payment-add{flex:1}}.reservation-list-total{white-space:nowrap}.reservation-list-payment{--payment-color:#a29482;color:#736757;align-items:center;gap:.45rem;width:116px;margin-top:.5rem;font-size:.7rem;font-weight:500;display:flex}.reservation-list-payment.is-partial{--payment-color:#bb802c;color:#925b14}.reservation-list-payment.is-complete{--payment-color:#28765e;color:#226047}.reservation-list-payment progress{appearance:none;width:100%;min-width:0;height:5px;accent-color:var(--payment-color);background:#dfd9cd;border:0;border-radius:5px;overflow:hidden}.reservation-list-payment progress::-webkit-progress-bar{background:#dfd9cd;border-radius:5px}.reservation-list-payment progress::-webkit-progress-value{background:var(--payment-color);border-radius:5px}.reservation-list-payment progress::-moz-progress-bar{background:var(--payment-color);border-radius:5px}.reservation-tab-count{background:var(--filter-tint);min-width:25px;height:24px;color:var(--filter-colour);font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 7px;font-size:.75rem;font-weight:650;display:inline-flex}.reservation-filter-tab[aria-selected=true] .reservation-tab-count{background:#fffaf3;box-shadow:0 0 0 1px}@supports (color:color-mix(in lab, red, red)){.reservation-filter-tab[aria-selected=true] .reservation-tab-count{box-shadow:0 0 0 1px color-mix(in srgb, currentColor 18%, transparent)}}.signed-invoices{border-top:1px solid var(--border);margin-top:26px;padding-top:24px}.signed-invoices-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.signed-invoices-heading h3{align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.signed-invoices-heading h3 svg{color:#27735f;width:20px}.signed-invoice-card{border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding:18px;display:flex}.signed-invoice-card.is-current{background:#edf7f1;border-color:#c8e1d3}.signed-invoice-card strong{font-size:.92rem}.signed-invoice-card p,.signed-invoice-card small{color:var(--muted-foreground);margin-top:6px;font-size:.76rem;line-height:1.6}.signed-invoice-card .signed-invoice-warning{color:#8b5a20}.signed-invoice-preview{object-fit:contain;width:100%;max-height:65vh}.signed-invoice-label{margin:18px 0 8px;font-size:.85rem;display:block}.signed-invoice-input{border:1px solid var(--border);background:var(--card);border-radius:9px;width:100%;padding:12px}.signed-invoice-input::file-selector-button{background:var(--muted);color:var(--foreground);cursor:pointer;border:0;border-radius:6px;margin-right:12px;padding:8px 10px}.receipt-page{max-width:850px;margin:0 auto;padding:24px 18px 48px}.receipt-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.receipt-sheet{isolation:isolate;color:#111;background:#fff;border:1px solid #e4dfd6;min-height:277mm;padding:13mm 12mm 15mm;font-family:Times New Roman,Times,serif;font-size:12pt;line-height:1.35;position:relative;box-shadow:0 12px 35px #32182216}.receipt-corner{z-index:-1;pointer-events:none;background:linear-gradient(135deg,#42270b 0 42%,#fff 42% 44%,#42270b 44% 48%,#0000 48%);width:58mm;height:58mm;position:absolute;inset:0 auto auto 0}.receipt-header{grid-template-columns:54mm 1fr;align-items:center;gap:8mm;min-height:42mm;display:grid}.receipt-hotel{background:#fff;justify-content:center;align-items:center;min-height:34mm;display:flex}.receipt-hotel img{object-fit:contain;width:35mm;height:29mm;display:block}.receipt-hotel-contacts{border-left:5px double #762e36;padding:5mm 0 5mm 4mm;font-size:11.5pt;line-height:1.5}.receipt-hotel-contacts .receipt-location{margin-bottom:1mm;font-size:14pt}.receipt-reference{text-align:center;margin:9mm 0 8mm}.receipt-reference h1{text-transform:uppercase;letter-spacing:1px;margin-bottom:3mm;font-size:13pt;font-weight:600}.receipt-reference>p{font-size:15pt}.receipt-reference>p>span{text-underline-offset:3px;text-decoration:underline}.receipt-reference strong{font-weight:700}.receipt-reference .receipt-issued{color:#444;margin-top:2mm;font-size:10pt}.receipt-parties{grid-template-columns:1fr 1fr;gap:10mm;margin:0 7mm 8mm;font-size:11pt;line-height:1.5;display:grid}.receipt-parties p{overflow-wrap:anywhere}.receipt-parties strong{font-weight:700}.receipt-ledger-wrap{width:100%}.receipt-ledger{border-collapse:collapse;table-layout:fixed;text-align:center;width:100%;font-size:10.5pt;line-height:1.2}.receipt-ledger .receipt-date-col{width:17%}.receipt-ledger .receipt-money-col{width:20%}.receipt-ledger th,.receipt-ledger td{vertical-align:middle;overflow-wrap:anywhere;border:1px solid #202020;padding:1.4mm 1.5mm}.receipt-ledger th{font-weight:700}.receipt-ledger thead th{padding-top:2mm;padding-bottom:2mm}.receipt-ledger td:nth-last-child(-n+2){white-space:nowrap}.receipt-ledger tfoot th{text-align:right;padding-right:4mm}.receipt-ledger tfoot{font-weight:700}.receipt-current-payment{background:#faf7f1}.receipt-balance{width:94mm;max-width:100%;margin:4mm 0 0 auto;font-size:11.5pt}.receipt-balance dl>div{justify-content:space-between;gap:5mm;padding:2mm 0;display:flex}.receipt-balance dd{white-space:nowrap;text-align:right;font-weight:700}.receipt-balance .receipt-remaining{border-top:3px solid #111;margin-top:3mm;padding:3mm 5mm 0;font-size:12pt}.receipt-signatures{text-align:center;grid-template-columns:1fr 1fr;gap:25mm;min-height:24mm;margin-top:12mm;padding:0 10mm;display:grid}.receipt-signatures h2{text-underline-offset:3px;font-size:12pt;font-weight:400;text-decoration:underline}.receipt-signatures p{margin-top:3mm;font-size:10pt}.receipt-signatures .receipt-signature-label{color:#555;margin-top:1mm;font-size:9pt}.receipt-footer{text-align:center;color:#555;border-top:1px solid #ddd;margin-top:6mm;padding-top:3mm;font-size:8pt}.receipt-footer p+p{margin-top:1mm}@media screen and (width<=650px){.receipt-page{padding:14px 10px 30px}.receipt-sheet{min-height:0;padding:8mm 5mm 12mm}.receipt-header{grid-template-columns:29mm 1fr;gap:3mm}.receipt-hotel img{width:27mm;height:24mm}.receipt-hotel-contacts{padding-left:3mm;font-size:9pt}.receipt-hotel-contacts .receipt-location{font-size:11pt}.receipt-corner{width:38mm;height:38mm}.receipt-reference{margin:9mm 0}.receipt-parties{grid-template-columns:1fr;gap:5mm;margin:0 0 8mm}.receipt-ledger{font-size:9pt}.receipt-ledger .receipt-date-col{width:20%}.receipt-ledger .receipt-money-col{width:22%}.receipt-ledger th,.receipt-ledger td{padding:2mm 1mm}.receipt-ledger td:nth-last-child(-n+2){white-space:normal}.receipt-signatures{gap:10mm;margin-top:12mm;padding:0}.receipt-toolbar>a,.receipt-toolbar>button{flex:1}}@page{size:A4;margin:0}@media print{html,body,#root{background:#fff!important;min-width:0!important}.receipt-page{max-width:none;margin:0;padding:0}.receipt-toolbar,.receipt-print-error{display:none!important}.receipt-sheet{width:210mm;min-height:296mm;box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;border:0;margin:0;padding:13mm 12mm 15mm}.receipt-header,.receipt-reference,.receipt-parties,.receipt-ledger tr,.receipt-balance,.receipt-signatures,.receipt-footer{break-inside:avoid}.receipt-ledger thead{display:table-header-group}}.invoice-page{max-width:920px;margin:0 auto;padding:26px 22px 48px}.invoice-toolbar,.invoice-toolbar>div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.invoice-toolbar{margin-bottom:22px}.invoice-sheet{page:stay-invoice;color:#302a2d;font-family:var(--font-app), sans-serif;background:#fff;border:1px solid #e7ded3;border-top:5px solid #762e36;border-radius:10px;padding:34px 38px 28px;font-size:12px;line-height:1.45;box-shadow:0 12px 38px #32182212}.invoice-brand-header{border-bottom:1px solid #e7ded3;justify-content:space-between;align-items:center;gap:22px;padding-bottom:22px;display:flex}.invoice-brand{align-items:center;gap:14px;display:flex}.invoice-brand img{object-fit:contain;width:86px;height:70px}.invoice-brand strong{color:#762e36;font-size:21px;font-weight:650;display:block}.invoice-brand span{color:#7b6c68;margin-top:3px;font-size:10px;display:block}.invoice-hotel-contact{text-align:right;color:#706167;font-size:10px;line-height:1.6}.invoice-title-row{justify-content:space-between;align-items:flex-start;gap:22px;margin:23px 0;display:flex}.invoice-eyebrow{color:#a07845;letter-spacing:1.7px;margin-bottom:5px;font-size:9px;font-weight:600}.invoice-title-row h1{letter-spacing:-.8px;font-size:29px;font-weight:600;line-height:1.2}.invoice-reference{color:#762e36;margin-top:8px;font-weight:600}.invoice-reference span{color:#81716f;font-size:10px;font-weight:400}.invoice-edition{text-align:right;color:#81716f;font-size:10px}.invoice-edition p{margin-top:8px}.invoice-document-status{border-radius:20px;padding:5px 11px;font-size:10px;font-weight:600;display:inline-flex}.invoice-document-status.is-provisional{color:#8a581d;background:#fff3dc;border:1px solid #efdbb9}.invoice-document-status.is-final{color:#296148;background:#edf5ef;border:1px solid #cfe2d4}.invoice-payment-status{margin-top:4px;display:block}.invoice-information{background:#fcfaf6;border:1px solid #e7ded3;border-radius:8px;grid-template-columns:.85fr 1.15fr;margin-bottom:23px;display:grid}.invoice-information section{overflow-wrap:anywhere;min-width:0;padding:16px 18px}.invoice-information section+section{border-left:1px solid #e7ded3}.invoice-sheet h2{color:#a07845;letter-spacing:1px;margin-bottom:8px;font-size:9px;font-weight:600}.invoice-information p{color:#706167;margin-top:4px;font-size:11px}.invoice-information .invoice-client-name{color:#302a2d;font-size:17px;font-weight:600;line-height:1.3}.invoice-information .invoice-stay-period{color:#302a2d;font-size:12px;font-weight:500}.invoice-information span{color:#a8978b;margin:0 3px}.invoice-services table{border-collapse:collapse;text-align:left;table-layout:fixed;width:100%}.invoice-services th:first-child{width:43%}.invoice-services th{color:#785e4a;background:#f2e8db;padding:10px 12px;font-size:10px;font-weight:500}.invoice-services th:nth-child(n+3),.invoice-services td:nth-child(n+3){text-align:right}.invoice-services td{overflow-wrap:anywhere;vertical-align:middle;border-bottom:1px solid #e7ded3;padding:16px 12px;font-size:12px}.invoice-services td strong{font-size:12px;font-weight:600;display:block}.invoice-services td span{color:#81716f;margin-top:4px;font-size:10px;display:block}.invoice-services td:nth-child(n+3){white-space:nowrap}.invoice-currency{text-align:right;color:#81716f;margin-top:6px;font-size:9px}.invoice-finances{grid-template-columns:1fr 1fr;align-items:start;gap:28px;margin:23px 0 20px;display:grid}.invoice-payment-summary>p{color:#81716f;font-size:10px}.invoice-payment-summary ul{margin:9px 0 0;padding:0;list-style:none}.invoice-payment-summary li{border-bottom:1px solid #eee7de;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;font-size:10px;display:flex}.invoice-payment-summary li small{color:#9a8980;margin-top:1px;font-size:8px;display:block}.invoice-payment-summary li strong{white-space:nowrap;font-weight:600}.invoice-payment-summary .invoice-payment-detail-note{margin-top:9px;font-size:8px;line-height:1.6}.invoice-no-payment{padding:12px 0}.invoice-totals dl>div{justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;font-size:11px;display:flex}.invoice-totals dt{color:#706167}.invoice-totals dd{white-space:nowrap;text-align:right;font-weight:600}.invoice-totals small{font-size:8px;font-weight:500}.invoice-totals .invoice-total{border-top:1px solid #ddd2c7;margin-top:6px;padding-top:11px;font-size:16px}.invoice-total dt{color:#302a2d;font-weight:600}.invoice-paid dt,.invoice-paid dd{color:#28765e}.invoice-totals .invoice-due{color:#fff8ee;background:#762e36;border-radius:7px;margin:7px -14px 0;padding:13px 14px;font-size:17px}.invoice-due dt{color:#fff8ee;font-weight:500}.invoice-overpaid dt,.invoice-overpaid dd{color:#925b14}.invoice-provisional-note{color:#8b6c3c;background:#fff8eb;border-left:2px solid #c69c57;padding:9px 12px;font-size:9px;line-height:1.5}.invoice-signatures{grid-template-columns:1fr 1fr;gap:40px;min-height:66px;margin-top:23px;display:grid}.invoice-signatures h2{color:#706167;margin-bottom:6px;font-size:8px}.invoice-signatures p{font-size:11px}.invoice-signatures span{color:#9a8980;margin-top:5px;font-size:8px;display:block}.invoice-signatures>div:last-child{text-align:right}.invoice-footer{text-align:center;color:#81716f;border-top:1px solid #e7ded3;padding-top:13px;font-size:9px}.invoice-footer strong{color:#762e36;margin-bottom:5px;font-size:12px;font-weight:500;display:block}.invoice-footer>span{margin-top:5px;font-size:8px;display:block}@media screen and (width<=650px){.invoice-page{padding:14px 10px 30px}.invoice-sheet{padding:23px 17px}.invoice-brand-header{flex-direction:column;align-items:flex-start;gap:10px}.invoice-hotel-contact{text-align:left;font-size:9px}.invoice-title-row{flex-direction:column;gap:12px}.invoice-edition{text-align:left}.invoice-information,.invoice-finances{grid-template-columns:1fr}.invoice-information section+section{border-top:1px solid #e7ded3;border-left:0}.invoice-services th,.invoice-services td{padding-left:6px;padding-right:6px;font-size:10px}.invoice-services td:nth-child(n+3){white-space:normal}.invoice-services td strong{font-size:11px}.invoice-toolbar>a,.invoice-toolbar>div{width:100%}.invoice-toolbar>div{justify-content:flex-end}}@page stay-invoice{size:A4;margin:12mm}@media print{.invoice-page{max-width:none;margin:0;padding:0}.invoice-toolbar,.invoice-print-error{display:none!important}.invoice-sheet{box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;border:0;border-top:4px solid #762e36;border-radius:0;padding:5mm 0 0}.invoice-brand-header{padding-bottom:16px}.invoice-title-row{margin:18px 0}.invoice-information{margin-bottom:18px}.invoice-finances{margin:18px 0 14px}.invoice-payment-summary li{padding:5px 0}.invoice-signatures{min-height:55px;margin-top:18px}.invoice-footer{padding-top:9px}.invoice-brand-header,.invoice-title-row,.invoice-information,.invoice-services tr,.invoice-finances,.invoice-signatures,.invoice-footer{break-inside:avoid}}.invoice-sheet.is-detailed .invoice-services td{padding-top:8px;padding-bottom:8px}@media print{.invoice-sheet.is-detailed .invoice-services thead{display:table-header-group}.invoice-sheet.is-detailed .invoice-services tr{break-inside:avoid;page-break-inside:avoid}}.panel.availability-toolbar{flex-wrap:wrap;align-items:end;gap:20px;margin-bottom:20px;padding:22px;display:flex}.availability-week-nav{align-items:center;gap:8px;padding-bottom:1px;display:flex}.availability-date{flex:0 175px}.availability-type{flex:240px;min-width:0}.availability-toolbar label{color:var(--muted-foreground);margin-bottom:7px;font-size:.8rem;display:block}.availability-legend{flex-wrap:wrap;gap:12px 24px;margin:22px 0;font-size:.85rem;display:flex}.availability-legend>span,.availability-state{align-items:center;gap:7px;display:inline-flex}.availability-legend i,.availability-state i{background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px}.availability-legend .is-libre{color:#9f3038}.availability-legend .is-reserve{color:#24617e}.availability-legend .is-occupe{color:#276148}.availability-legend .is-indisponible{color:#706167}.panel.availability-panel{padding:0;overflow:hidden}.availability-caption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px;display:flex}.availability-caption>div{align-items:center;gap:10px;display:flex}.availability-caption svg{width:20px;color:var(--primary);flex-shrink:0}.availability-caption h2{margin:0;font-size:1rem;font-weight:600}.availability-caption>span{color:var(--muted-foreground);font-size:.8rem}.availability-scroll{isolation:isolate;scrollbar-color:var(--brand-gold) var(--muted);overflow-x:auto}.availability-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:1040px;font-size:.8rem}.availability-table th,.availability-table td{text-align:left;border-top:1px solid var(--border);border-right:1px solid var(--border)}.availability-table th:last-child,.availability-table td:last-child{border-right:0}.availability-table thead th{text-transform:capitalize;background:#f1e6d6;padding:10px;font-weight:600}.availability-table thead th span{text-transform:none;margin-top:4px;font-size:.65rem;font-weight:400;display:block}.availability-table .availability-room{z-index:1;background:var(--card);width:175px;padding:12px;position:sticky;left:0;box-shadow:3px 0 7px #38272c08}.availability-table thead .availability-room{background:#f1e6d6}.availability-room strong{overflow-wrap:anywhere;margin-bottom:5px;font-size:.9rem;display:block}.availability-room>span{color:var(--muted-foreground);overflow-wrap:anywhere;font-size:.72rem;font-weight:400;display:block}.availability-inactive{color:var(--muted-foreground);margin-top:8px;font-weight:400;display:block}.availability-table td{vertical-align:top;padding:4px}.availability-table .is-today{background:#fbf0db}.availability-table thead .is-today{box-shadow:inset 0 3px var(--brand-gold);color:#704817}.availability-cell{border:1px solid #0000;border-radius:7px;height:100%;min-height:64px;padding:7px}.availability-cell.is-libre{color:#9f3038;background:#fff0f0;border-color:#f0c9cd}.availability-cell.is-reserve{color:#24617e;background:#eaf4fb;border-color:#c8e0ee}.availability-cell.is-occupe{color:#276148;background:#edf7ef;border-color:#d2e8d8}.availability-cell.is-indisponible{color:#706167;background:repeating-linear-gradient(135deg,#eee9e3,#eee9e3 7px,#f4f0ea 7px 14px);border-color:#dfd6cd}.availability-state{font-size:.73rem;font-weight:600}.availability-stay{overflow-wrap:anywhere;border-top:1px solid #00000016;margin-top:5px;padding-top:4px;line-height:1.5;display:block}.availability-stay:hover strong{text-decoration:underline}.availability-stay strong{font-size:.7rem;font-weight:600;display:block}.availability-stay span,.availability-stay small{font-size:.67rem;display:block}.availability-stay small{margin-top:3px}.availability-stay.is-terminee{color:var(--muted-foreground)}.availability-empty{color:var(--muted-foreground);padding:28px}.availability-note{border-top:1px solid var(--border);color:var(--muted-foreground);margin:0;padding:18px 22px;font-size:.75rem;line-height:1.7}.availability-pagination{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;font-size:.8rem;display:flex}.availability-pagination>div{gap:8px;display:flex}@media (width<=650px){.panel.availability-toolbar{gap:16px;padding:16px}.availability-week-nav{flex-basis:100%}.availability-date,.availability-type{flex:100%}.availability-table .availability-room{width:145px;padding:12px}.availability-caption{padding:12px}}.panel.payment-history-filters{margin-bottom:24px;padding:24px}.payment-history-search{margin-bottom:20px;position:relative}.payment-history-search>svg{width:18px;color:var(--muted-foreground);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.payment-history-search input{padding-left:43px}.payment-history-filter-grid{grid-template-columns:.8fr .8fr 1.1fr 1.2fr;gap:18px;display:grid}.payment-history-filter-grid>div{min-width:0}.payment-history-filter-grid label{color:var(--muted-foreground);margin-bottom:7px;font-size:.8rem;display:block}.payment-history-shortcuts{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.payment-history-shortcuts>span{color:var(--muted-foreground);margin-left:auto;font-size:.72rem}.payment-history-summary{grid-template-columns:1.3fr 1fr;gap:20px;margin-bottom:25px;display:grid}.payment-history-summary>.panel{align-items:center;gap:18px;padding:23px;display:flex}.payment-history-summary>.is-amount{color:#245940;background:linear-gradient(125deg,#eef7ee,#f8fcf4);border-color:#cddfcf}.payment-history-summary-icon{color:var(--primary);background:#efe2d5;border-radius:14px;flex-shrink:0;padding:13px;display:inline-flex}.is-amount .payment-history-summary-icon{color:#245940;background:#dcecdf}.payment-history-summary h2{margin:0 0 5px;font-size:.85rem;font-weight:500}.payment-history-summary strong{overflow-wrap:anywhere;font-size:1.8rem;font-weight:600;line-height:1.3}.payment-history-summary strong small{font-size:.8rem;font-weight:400}.payment-history-summary p{color:var(--muted-foreground);margin:7px 0 0;font-size:.72rem}.payment-history-reference{width:fit-content;margin-top:6px;font-size:.76rem;display:block}.payment-history-booking{color:var(--muted-foreground);margin-top:5px;font-size:.7rem;font-weight:400;display:block}.payment-history-booking.is-annulee{color:var(--destructive)}.management-table .payment-history-amount{color:#245940;white-space:nowrap;font-weight:600}.payment-history-amount small{color:var(--muted-foreground);margin-top:3px;font-size:.65rem;font-weight:400;display:block}.payment-history-mode{color:#72512e;white-space:nowrap;background:#f1e6d9;border-radius:6px;padding:5px 9px;font-size:.75rem;display:inline-flex}.payment-history-mode.is-especes{color:#356044;background:#eaf4ed}.payment-history-mode.is-carte{color:#33617e;background:#eaf2fb}.payment-history-mode.is-mobile_money{color:#8a5a1e;background:#fff2da}@media (width<=950px){.payment-history-filter-grid{grid-template-columns:1fr 1fr}.payment-history-shortcuts>span{width:100%;margin:4px 0 0}}@media (width<=600px){.payment-history-summary{grid-template-columns:1fr;gap:12px}.panel.payment-history-filters{padding:18px}.payment-history-filter-grid{grid-template-columns:1fr;gap:14px}.payment-history-summary>.panel{padding:20px}}.payment-history-table{min-width:1100px}.payment-history-scroll-hint{display:none}@media (width<=1100px){.payment-history-scroll-hint{color:var(--muted-foreground);margin:0 0 12px;font-size:.75rem;display:block}}.panel.staff-search{flex-wrap:wrap;align-items:center;gap:15px;margin-bottom:24px;padding:20px;display:flex}.staff-search label{color:var(--muted-foreground);font-size:.8rem}.staff-search input{flex:240px;width:auto}.staff-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.panel.staff-card{flex-direction:column;align-items:stretch;gap:18px;padding:23px;display:flex}.staff-card.is-present{background:linear-gradient(140deg,#f1f8f0,#fffaf3);border-color:#cbdcc9}.staff-card-heading{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.staff-card-heading>div:nth-child(2){flex:1;min-width:0}.staff-card-heading h2{overflow-wrap:anywhere;margin:0;font-size:1.06rem;font-weight:600}.staff-card-heading p,.staff-card-heading small{color:var(--muted-foreground);margin-top:5px;font-size:.8rem;display:block}.employee-photo{border:1px solid var(--border);width:72px;height:80px;color:var(--primary);background:#efe3d5;border-radius:14px;flex-shrink:0;place-items:center;font-size:1.5rem;font-weight:500;display:grid;overflow:hidden}.employee-photo img{object-fit:cover;width:100%;height:100%}.employee-photo.is-large{width:115px;height:135px}.staff-photo-upload{border-top:1px solid var(--border);padding-top:15px;font-size:.8rem}.staff-photo-upload label{margin-bottom:8px;font-weight:500;display:block}.staff-photo-upload input{font-size:.78rem}.staff-presence{color:#356044;margin:0;font-size:.86rem;line-height:1.7}.staff-presence small{color:var(--muted-foreground)}.staff-confirm-person{align-items:center;gap:20px;margin:20px 0;display:flex}.staff-confirm-person strong{font-size:1.2rem;font-weight:600}.staff-confirm-person p{color:var(--muted-foreground);margin-top:8px;font-size:.85rem}.staff-dialog-actions{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:22px;padding-top:18px;display:flex}.staff-check{align-items:center;gap:10px;display:flex}.staff-arrive-button{background:#32634a linear-gradient(110deg,#285440,#417b55)}.staff-depart-button{background:#985330 linear-gradient(110deg,#874329,#a86b38)}.panel.staff-history-filters{grid-template-columns:1.5fr 1fr 1fr auto;align-items:end;gap:18px;margin-bottom:18px;display:grid}.staff-history-filters>div{min-width:0}.staff-history-filters label{color:var(--muted-foreground);margin-bottom:7px;font-size:.8rem;display:block}.staff-history-table{min-width:1080px}.staff-correction summary{cursor:pointer;color:var(--primary)}.staff-correction p{overflow-wrap:anywhere;max-width:270px;margin:9px 0}.staff-correction small{color:var(--muted-foreground);display:block}@media (width<=900px){.staff-grid{grid-template-columns:1fr}.panel.staff-history-filters{grid-template-columns:1fr 1fr}}@media (width<=550px){.panel.staff-history-filters{grid-template-columns:1fr}.staff-confirm-person{align-items:start;gap:12px}.employee-photo.is-large{width:85px;height:105px}.staff-dialog-actions>*{width:100%}}:root{font-family:var(--font-app);color:var(--foreground);background:var(--background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{z-index:100;background:var(--primary);color:#fff;border-radius:8px;padding:12px 18px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.brand{background:var(--brand-gradient-card);border:1px solid #dfbc84;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:fit-content;padding:12px 22px;text-decoration:none;display:inline-flex;box-shadow:0 8px 28px #1b101819}.brand-logo{object-fit:contain;width:132px;max-width:100%;height:auto;display:block}.eyebrow{color:#86613e;letter-spacing:2px;font-size:10px;font-weight:650;line-height:1.6}.section-icon{width:48px;height:48px;color:var(--primary);background:linear-gradient(140deg,#faf0df,#efdfc5);border:1px solid #dfc7a5;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.session-screen{background:radial-gradient(ellipse at 85% 15%, #b57c3826, transparent 50%), var(--brand-gradient-dark);flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:100dvh;padding:24px;display:flex}.session-card{background:var(--brand-gradient-card);text-align:center;border:1px solid #e1c08d;border-radius:24px;width:100%;max-width:470px;padding:34px;box-shadow:0 25px 75px #13091240}.session-card .brand{box-shadow:none;background:0 0;border:0;margin-bottom:26px;padding:0}.session-icon,.status-icon{width:52px;height:58px;color:var(--primary);background:linear-gradient(145deg,#f9efdd,#edddc6);border:1px solid #dfc7a5;border-radius:28px 28px 12px 12px;justify-content:center;align-items:center;display:flex}.session-icon{margin:0 auto 22px}.session-title{font-family:var(--font-app);letter-spacing:-.5px;font-size:26px;font-weight:500;line-height:1.35}.session-caption{color:var(--brand-muted-on-dark);font-size:12px}.alert-error{color:var(--destructive);border-color:var(--error-border);background:var(--error-background)}.alert-success{color:var(--success);border-color:var(--success-border);background:var(--success-background)}.alert-warning{color:var(--warning);border-color:var(--warning-border);background:var(--warning-background)}.dashboard-shell{background:radial-gradient(ellipse at 95% 0, #ead3aa2b, transparent 45%), var(--background);min-height:100dvh;display:flex}.sidebar{background:radial-gradient(ellipse at 90% 0, #ba7d362e, transparent 50%), var(--brand-gradient-dark);width:260px;height:100dvh;color:var(--brand-on-dark);border-right:1px solid #caa26c4d;flex-direction:column;flex-shrink:0;align-self:flex-start;padding:36px 22px 26px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar .brand{margin-inline:auto}.hotel-label{letter-spacing:1.5px;color:#e2c398;align-items:center;gap:8px;margin:30px 10px 32px;font-size:9px;display:flex}.hotel-label-dot{background:var(--brand-gold-light);border-radius:50%;flex-shrink:0;width:6px;height:6px}.nav-section{letter-spacing:1.6px;color:#caabb3;margin:0 12px 13px;font-size:9px}.app-nav{flex-direction:column;gap:7px;display:flex}.nav-group-title{color:#caabb3;letter-spacing:1.3px;text-transform:uppercase;border-top:1px solid #d8ac712b;margin:10px 14px 0;padding-top:14px;font-size:9px;font-weight:600}.app-nav a{color:#e0c8cc;border:1px solid #0000;border-radius:10px;align-items:center;gap:11px;min-height:48px;padding:13px 14px;font-size:13px;font-weight:500;transition:background .18s,border-color .18s,color .18s;display:flex;position:relative}.app-nav a:hover{color:#fff3e6;background:#ffffff0b;border-color:#d8ac7130}.app-nav a.active{background:var(--brand-gradient-action);color:var(--primary-foreground);border-color:#d6ab6f66;box-shadow:0 5px 18px #10080d33}.app-nav a.active:before{content:"";background:var(--brand-gold-light);border-radius:2px;width:3px;height:20px;position:absolute;left:-1px}.app-nav a svg{color:#edc88e;flex-shrink:0}.sidebar-bottom{font-family:var(--font-app);color:#f1dfc5;margin:auto 12px 0;padding-top:60px;font-size:20px;font-weight:500}.sidebar-bottom span{font-family:var(--font-app);color:#cfafb7;margin-top:8px;font-size:11px;font-weight:400;display:block}.dashboard-body{flex-direction:column;flex:1;min-width:0;display:flex}.dashboard-header{border-bottom:1px solid var(--border);background:#fffaf3e6;justify-content:space-between;align-items:center;gap:20px;min-height:90px;padding:22px 42px;display:flex;box-shadow:0 3px 18px #613c2604}.avatar{background:var(--brand-gradient-action);width:34px;height:34px;color:var(--primary-foreground);border:1px solid #c69d65;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.header-name{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:12px;font-weight:600;overflow:hidden}.dashboard-main{flex:1;width:100%;max-width:1240px;margin:0 auto;padding:42px}.page-heading{margin-bottom:30px}.page-heading h1{font-family:var(--font-app);letter-spacing:-.035em;overflow-wrap:anywhere;margin-top:12px;font-size:clamp(29px,3vw,40px);font-weight:500;line-height:1.2}.welcome-banner{background:radial-gradient(ellipse at 85% 0, #c38b4b36, transparent 65%), var(--brand-gradient-dark);min-height:245px;color:var(--brand-on-dark);border:1px solid #c29a645c;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;padding:36px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 32px #5326330c}.welcome-banner:before{content:"";pointer-events:none;border:1px solid #e4ba7e20;border-radius:150px 150px 0 0;width:280px;height:340px;position:absolute;top:-30px;right:-20px;transform:rotate(18deg)}.welcome-banner>div{position:relative}.welcome-banner .eyebrow{color:#ebc88e;font-size:9px}.welcome-banner h2{font-family:var(--font-app);letter-spacing:-.6px;margin-top:16px;font-size:clamp(25px,2.5vw,34px);font-weight:500;line-height:1.25}.welcome-banner h2 em{color:var(--brand-gold-light);font-style:normal;font-weight:400}.welcome-banner p{color:var(--brand-muted-on-dark);margin-top:17px;font-size:12px}.welcome-logo-frame{background:var(--brand-gradient-card);border:1px solid #dfbc84;border-radius:80px 80px 18px 18px;flex-shrink:0;place-items:center;width:152px;margin-right:8px;padding:24px 15px;display:grid;box-shadow:0 10px 32px #10080d24}.welcome-logo{width:100%;height:auto;display:block}.home-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.panel{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:26px;box-shadow:0 4px 22px #70432f04}.panel-title{color:var(--primary);align-items:center;gap:10px;display:flex}.panel-title h2{font-size:14px;font-weight:600}.active-badge{color:var(--success);background:var(--success-background);border:1px solid var(--success-border);border-radius:20px;align-items:center;gap:4px;margin-left:auto;padding:4px 8px;font-size:10px;display:flex}.profile-data{margin-top:26px}.profile-data>div+div{margin-top:21px}.profile-data dt{color:var(--muted-foreground);margin-bottom:7px;font-size:11px}.profile-data dd{overflow-wrap:anywhere;font-size:13px;font-weight:500}.role-badge{color:#71502e;background:#f2e5d4;border:1px solid #e3ceb1;border-radius:5px;align-items:center;width:fit-content;padding:4px 9px;font-size:11px;font-weight:500;display:inline-flex}.permission-badge{color:#75444d;overflow-wrap:anywhere;background:#f7ede6;border:1px solid #e7d5cd;border-radius:5px;padding:5px 9px;font-size:11px;display:inline-block}.permission-badge,.role-detail code{font-family:var(--font-app)}.access-link{border:1px solid var(--border);background:linear-gradient(130deg,#fcf5eb,#f6e9dc);border-radius:11px;justify-content:space-between;align-items:center;gap:15px;margin-top:24px;padding:18px;transition:background .15s,border-color .15s;display:flex}.access-link:hover{background:var(--muted);border-color:#bf9562}.access-link>svg{color:var(--primary)}.access-link strong{font-size:12px;font-weight:600;display:block}.access-link small{color:var(--muted-foreground);margin-top:5px;font-size:11px;display:block}.access-note{color:var(--muted-foreground);margin-top:23px;font-size:11px;line-height:1.8}.role-detail{border:1px solid var(--border);background:var(--card);border-radius:13px;box-shadow:0 3px 18px #70432f03}.role-detail summary{border-radius:13px;align-items:center;gap:16px;padding:20px;font-size:14px;list-style:none;display:flex}.role-detail summary::-webkit-details-marker{display:none}.role-detail summary:hover{background:#f7ecdf}.role-detail[open]{border-color:#d3b88f}.role-detail[open] summary{background:linear-gradient(120deg,#faf1e5,#f3e3d0);border-radius:13px 13px 0 0}.details-chevron{color:#906538;transition:transform .18s}.role-detail .section-icon{border-radius:11px;width:42px;height:42px}.role-detail[open] .details-chevron{transform:rotate(180deg)}.dashboard-footer{border-top:1px solid var(--border);color:var(--muted-foreground);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:22px 42px;font-size:11px;display:flex}.status-panel{background:linear-gradient(145deg,#fffaf3 55%,#f3e5d1);border-top:3px solid #c49a60;padding:34px;position:relative;overflow:hidden}.status-icon{margin-bottom:25px}@media (width<=1150px){.sidebar{width:225px;padding-left:14px;padding-right:14px}.dashboard-main{padding:30px}.dashboard-header{padding:20px 30px}.home-grid{grid-template-columns:1fr}}@media (width<=800px){.dashboard-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;width:100%;height:auto;padding:16px 24px;display:grid;position:static}.sidebar .brand{border-radius:12px;margin:0;padding:8px 12px}.sidebar .brand-logo{width:86px}.hotel-label,.nav-section,.sidebar-bottom{display:none}.app-nav{flex-flow:wrap;justify-content:flex-end;gap:6px}.app-nav a{gap:8px;min-height:44px;padding:10px 11px;font-size:12px}.dashboard-header{min-height:72px;padding:14px 24px}.dashboard-main{padding:30px 24px}.dashboard-footer{padding:20px 24px}.header-name{display:none}.welcome-banner{padding:28px}}@media (width<=450px){.dashboard-main{padding:28px 18px}.dashboard-header{padding-left:18px;padding-right:18px}.dashboard-header>span{font-size:11px}.sidebar{padding-left:18px;padding-right:18px}.sidebar .brand-logo{width:72px}.app-nav a{padding:11px 12px;font-size:11px}.app-nav a svg{width:16px}.welcome-logo-frame{border-radius:13px;width:112px;margin:22px 0 0;padding:16px 12px}.welcome-banner{min-height:220px;padding:26px;display:block}.panel{padding:22px}.session-card{padding:28px 22px}.session-title{font-size:23px}.role-detail summary{flex-wrap:wrap;gap:10px;padding:16px;font-size:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (width<=800px){.nav-group-title{display:none}}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}@keyframes spin{to{transform:rotate(360deg)}}
