/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--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,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-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{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}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.table{display:table}.shrink{flex-shrink:1}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--red:#e30613;--red-dark:#a8000a;--red-ink:#79000a;--yellow:#ffd500;--ink:#211d1d;--muted:#6f6663;--line:#e7deda;--paper:#fffdfb;--canvas:#f5f1ee;--green:#1f8b4c;--shadow:0 20px 55px #481c1c1a;--room-26:#e30613;--room-27:#3a3434;--room-pause:#e39a00;--room-formation:#8d2359;--room-municipal-1:#1976a3;--room-municipal-2:#167f73}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #e3061340}.shell{width:min(1480px,100% - 48px);margin-inline:auto}.site-header{background:var(--paper)}.header-bar{justify-content:space-between;align-items:center;gap:24px;height:86px;display:flex}.brand{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:13px;padding:0;display:flex}.brand img{object-fit:contain;width:58px;height:58px}.brand span{gap:2px;display:grid}.brand strong{letter-spacing:.01em;font-size:1.05rem}.brand small{color:var(--muted);font-size:.82rem}.header-actions{border:1px solid var(--line);background:#faf7f5;border-radius:13px;align-items:center;gap:7px;padding:5px;display:flex}.nav-button{cursor:pointer;background:0 0;border:0;border-radius:9px;padding:10px 15px;font-size:.9rem;font-weight:700;transition:all .2s}.nav-button:hover{background:#fff}.nav-button.active{color:var(--red);background:#fff;box-shadow:0 3px 15px #3d222214}.nav-button.request{color:var(--ink);background:var(--yellow)}.nav-button.request:hover{background:#ffe258}.nav-button.admin{color:#fff;background:var(--ink)}.nav-button.admin.active{background:var(--red)}.photo-band{background:var(--red-dark);height:205px;position:relative;overflow:hidden}.photo-band>img{object-fit:cover;object-position:center 54%;filter:saturate(.75)contrast(1.05);width:64%;height:100%;position:absolute;inset:0 0 0 auto}.photo-overlay{background:linear-gradient(90deg,#8b0009fa 0%,#c4000df0 38%,#c4000dad 62%,#72000840 100%);position:absolute;inset:0}.photo-overlay:after{content:"";border:30px solid #ffd50038;border-radius:50%;width:260px;height:260px;position:absolute;top:-70px;right:4%}.photo-copy{z-index:1;color:#fff;flex-direction:column;justify-content:center;align-items:flex-start;height:100%;display:flex;position:relative}.eyebrow{color:var(--yellow);letter-spacing:.16em;text-transform:uppercase;margin:0 0 9px;font-size:.72rem;font-weight:900;line-height:1}.eyebrow.red{color:var(--red)}.photo-copy h1{letter-spacing:-.045em;max-width:720px;margin:0;font-size:clamp(2rem,4vw,3.55rem);line-height:.98}.photo-copy>p:last-child{color:#ffffffe6;max-width:680px;margin:14px 0 0;font-size:1rem}.workspace{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:24px;padding-block:32px 54px;display:grid}.calendar-card,.day-panel,.form-card,.manage-card,.login-card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px}.calendar-card{overflow-x:auto}.calendar-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:22px;min-width:760px;padding:22px 24px 18px;display:flex}.month-navigation{align-items:center;gap:13px;display:flex}.month-navigation h2,.manage-heading h2{text-align:center;text-transform:capitalize;letter-spacing:-.02em;min-width:200px;margin:0;font-size:1.35rem}.month-navigation button,.compact-month-nav button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;width:36px;height:36px;font-size:1.55rem;line-height:1}.month-navigation button:hover,.compact-month-nav button:hover{border-color:var(--red);color:var(--red)}.filters{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.filters button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:7px 11px;font-size:.76rem;font-weight:800}.filters button:hover{border-color:#bdb2ae}.filters button.selected{background:var(--ink);border-color:var(--ink);color:#fff}.filters button.selected.room-26{background:var(--room-26);border-color:var(--room-26)}.filters button.selected.room-27{background:var(--room-27);border-color:var(--room-27)}.filters button.selected.room-pause{background:var(--room-pause);border-color:var(--room-pause)}.filters button.selected.room-formation{background:var(--room-formation);border-color:var(--room-formation)}.filters button.selected.room-municipal-1{background:var(--room-municipal-1);border-color:var(--room-municipal-1)}.filters button.selected.room-municipal-2{background:var(--room-municipal-2);border-color:var(--room-municipal-2)}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:760px;display:grid}.weekday-row{border-bottom:1px solid var(--line);background:#f8f4f2}.weekday-row div{color:var(--muted);text-align:center;letter-spacing:.09em;text-transform:uppercase;padding:10px 7px;font-size:.68rem;font-weight:900}.month-grid{background:var(--line);gap:1px;transition:opacity .2s}.month-grid.loading{opacity:.48}.day-cell{text-align:left;cursor:pointer;background:#fff;border:0;min-width:0;min-height:118px;padding:10px;transition:all .16s;position:relative;overflow:hidden}.day-cell:hover{z-index:1;background:#fffbf4;box-shadow:inset 0 0 0 2px #ffd500a6}.day-cell.empty{cursor:default;background:#f5f1ef}.day-cell.selected-day{z-index:1;box-shadow:inset 0 0 0 3px var(--yellow);background:#fffaf0}.day-number{border-radius:8px;justify-content:center;align-items:center;width:27px;height:27px;font-size:.82rem;font-weight:900;display:flex}.selected-day .day-number{background:var(--red);color:#fff}.day-bookings{gap:4px;margin-top:7px;display:grid}.booking-pill{color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:5px;min-width:0;padding:5px 6px;font-size:.63rem;line-height:1.15;display:block;overflow:hidden}.booking-pill b{color:var(--yellow);margin-right:3px}.booking-pill.room-26{background:var(--room-26)}.booking-pill.room-27{background:var(--room-27)}.booking-pill.room-pause{background:var(--room-pause)}.booking-pill.room-formation{background:var(--room-formation)}.booking-pill.room-municipal-1{background:var(--room-municipal-1)}.booking-pill.room-municipal-2{background:var(--room-municipal-2)}.more-bookings{color:var(--muted);padding-left:4px;font-size:.64rem;font-weight:800}.day-panel{position:sticky;top:18px;overflow:hidden}.day-panel-heading{border-bottom:1px solid var(--line);padding:24px 24px 20px}.day-panel-heading h2{text-transform:capitalize;letter-spacing:-.025em;margin:0 0 8px;font-size:1.35rem;line-height:1.12}.day-panel-heading>p:last-child{color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.availability-list{gap:10px;padding:15px;display:grid}.availability-card{border:1px solid var(--line);border-left:4px solid var(--room-27);background:#fff;border-radius:11px;padding:14px}.availability-card.room-26{border-left-color:var(--room-26)}.availability-card.room-27{border-left-color:var(--room-27)}.availability-card.room-pause{border-left-color:var(--room-pause)}.availability-card.room-formation{border-left-color:var(--room-formation)}.availability-card.room-municipal-1{border-left-color:var(--room-municipal-1);background:#f6fbfd}.availability-card.room-municipal-2{border-left-color:var(--room-municipal-2);background:#f5fbfa}.availability-title{align-items:center;gap:8px;margin-bottom:10px;display:flex}.availability-title h3{margin:0;font-size:.93rem}.room-dot{background:var(--room-27);border-radius:50%;width:9px;height:9px}.room-26 .room-dot{background:var(--room-26)}.room-pause .room-dot{background:var(--room-pause)}.room-formation .room-dot{background:var(--room-formation)}.room-municipal-1 .room-dot{background:var(--room-municipal-1)}.room-municipal-2 .room-dot{background:var(--room-municipal-2)}.external-room-badge{color:#17627e;letter-spacing:.04em;text-transform:uppercase;background:#e5f2f6;border-radius:999px;margin-left:auto;padding:3px 6px;font-size:.53rem;font-weight:900}.availability-group-title{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1;margin:2px 2px -2px;font-size:.62rem;font-weight:900}.municipal-group-banner{background:#edf8fa;border:1px solid #bcdce3;border-radius:10px;grid-column:1/-1;gap:4px;margin-top:3px;padding:12px 13px;display:grid}.municipal-group-banner strong{color:#145d70;font-size:.78rem}.municipal-group-banner span{color:#52747b;font-size:.68rem;line-height:1.4}.municipal-group-banner a{color:#145d70;text-underline-offset:2px;font-weight:900;text-decoration:underline}.slots{grid-template-columns:1fr 1fr;gap:7px;display:grid}.slot{border-radius:8px;gap:3px;min-width:0;padding:9px;display:grid}.slot span{color:var(--muted);font-size:.65rem}.slot strong{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.75rem;overflow:hidden}.slot.free{color:var(--green);background:#ecf8f0}.slot.booked{color:var(--red-ink);background:#fff0f1}.slot.external-booked{color:#115e70;background:#dff4f7}.slot.external-none{color:#65787c;background:#edf2f3}.blocked-state{color:#716964;text-align:center;background:#f0ecea;border-radius:8px;padding:10px;font-size:.76rem;font-weight:800}.rule-note{color:var(--muted);margin:9px 0 0;font-size:.67rem;line-height:1.4}.request-note{background:var(--ink);color:#fff;border-radius:12px;gap:12px;margin:0 15px 15px;padding:15px;display:flex}.request-icon{background:var(--yellow);width:29px;height:29px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-weight:900;display:grid}.request-note strong{font-size:.82rem}.request-note p{color:#ddd6d2;margin:4px 0 0;font-size:.72rem;line-height:1.45}.request-link{border:0;border-bottom:1px solid var(--yellow);color:var(--yellow);cursor:pointer;background:0 0;margin-top:9px;padding:0 0 2px;font-size:.7rem;font-weight:900}.public-request-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:18px;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:30px;margin-top:-24px;margin-bottom:54px;padding:30px;scroll-margin-top:20px;display:grid}.public-request-intro h2{letter-spacing:-.04em;margin:0 0 12px;font-size:1.65rem}.public-request-intro>p:not(.eyebrow){color:var(--muted);margin:0;font-size:.86rem;line-height:1.6}.public-request-reminder{border-left:4px solid var(--yellow);background:#fff8da;border-radius:9px;gap:4px;margin-top:22px;padding:15px;display:grid}.public-request-reminder strong{font-size:.78rem}.public-request-reminder span{color:var(--muted);font-size:.72rem;line-height:1.45}.municipal-request-info{background:#edf8fa;border:1px solid #bcdce3;border-radius:9px;gap:5px;margin-top:12px;padding:15px;display:grid}.municipal-request-info strong{color:#145d70;font-size:.78rem}.municipal-request-info span{color:#52747b;font-size:.72rem;line-height:1.5}.municipal-request-info a{color:#145d70;text-underline-offset:2px;font-weight:900;text-decoration:underline}.public-request-form{gap:14px;display:grid}.public-request-warning{border:2px solid var(--red);color:#75070e;background:#fff0f1;border-radius:10px;gap:5px;padding:14px 16px;display:grid}.public-request-warning strong{font-size:.84rem}.public-request-warning span{font-size:.76rem;line-height:1.5}.public-request-warning a{color:var(--red);text-underline-offset:2px;font-weight:900;text-decoration:underline}.alert{border-radius:9px;justify-content:space-between;align-items:center;gap:20px;min-width:760px;margin:14px 18px 0;padding:11px 13px;font-size:.8rem;display:flex}.alert.error,.form-message.error{color:#8f0711;background:#ffebed}.alert button{color:inherit;cursor:pointer;background:0 0;border:0;font-weight:900}.admin-workspace{min-height:580px;padding-block:32px 58px}.admin-loading{text-align:center;color:var(--muted);padding:70px}.login-card{text-align:center;width:min(470px,100%);margin:12px auto;padding:38px}.login-mark{background:var(--red);color:#fff;width:58px;height:58px;box-shadow:10px 10px 0 var(--yellow);border-radius:16px;place-items:center;margin:0 auto 20px;font-size:1.3rem;font-weight:900;display:grid}.login-card h2{letter-spacing:-.04em;margin:0 0 8px;font-size:1.75rem}.login-card>p:not(.eyebrow){max-width:350px;color:var(--muted);margin:0 auto 24px;font-size:.9rem;line-height:1.55}.login-card form{text-align:left;gap:15px;display:grid}label{gap:7px;font-size:.76rem;font-weight:800;display:grid}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #d8ceca;border-radius:9px;padding:11px 12px;font-size:.88rem;transition:border-color .2s}textarea{resize:vertical;line-height:1.45}input:hover,select:hover,textarea:hover{border-color:#b7aaa5}.primary-button{background:var(--red);color:#fff;cursor:pointer;border:0;border-radius:10px;width:100%;padding:13px 18px;font-size:.85rem;font-weight:900;box-shadow:0 8px 20px #e306132e}.primary-button:hover{background:var(--red-dark)}.primary-button:disabled{opacity:.55;cursor:wait}.form-message{border-radius:8px;padding:10px 12px;font-size:.76rem;font-weight:700;line-height:1.4}.form-message.success{color:#146f3b;background:#e8f7ed}.admin-topline{border:1px solid var(--line);background:#fff;border-radius:11px;justify-content:space-between;align-items:center;margin-bottom:15px;padding:11px 15px;font-size:.78rem;display:flex}.status-dot{background:#2aaa5e;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block;box-shadow:0 0 0 4px #e5f7ec}.text-button{color:var(--red);cursor:pointer;background:0 0;border:0;padding:5px;font-size:.76rem;font-weight:900}.admin-grid{grid-template-columns:minmax(330px,.78fr) minmax(520px,1.22fr);align-items:start;gap:24px;display:grid}.form-card,.manage-card{padding:24px}.form-card{position:sticky;top:18px}.section-heading,.manage-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px;display:flex}.section-heading h2,.manage-heading h2{text-align:left;letter-spacing:-.03em;margin:0;font-size:1.35rem}.reservation-form{gap:14px;display:grid}.form-row.two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-row.three{grid-template-columns:1.2fr 1fr 1fr;gap:12px;display:grid}.range-hint{color:var(--muted);margin:-5px 0 0;font-size:.69rem;line-height:1.45}.optional{color:#948985;font-weight:400}.rule-box{border-left:4px solid var(--room-27);background:#f7f3f1;border-radius:8px;padding:12px 13px}.rule-box.room-26{border-left-color:var(--room-26)}.rule-box.room-pause{border-left-color:var(--room-pause);background:#fff8e5}.rule-box.room-formation{border-left-color:var(--room-formation)}.rule-box.room-municipal-1{border-left-color:var(--room-municipal-1);background:#edf8fa}.rule-box.room-municipal-2{border-left-color:var(--room-municipal-2);background:#edf8f6}.rule-box strong{font-size:.74rem}.rule-box p{color:var(--muted);margin:4px 0 0;font-size:.71rem;line-height:1.45}.confirm-line{background:#fffae9;border:1px solid #f0d98d;border-radius:8px;grid-template-columns:20px 1fr;align-items:start;gap:9px;padding:12px;line-height:1.45}.confirm-line input{width:16px;height:16px;accent-color:var(--red);margin-top:1px;padding:0}.external-admin-note{background:#edf8fa;border:1px solid #bcdce3;border-radius:9px;gap:4px;padding:12px 13px;display:grid}.external-admin-note strong{color:#145d70;font-size:.76rem}.external-admin-note span{color:#52747b;font-size:.7rem;line-height:1.45}.compact-month-nav{gap:7px;display:flex}.manage-heading h2{text-align:left;min-width:0}.ppt-export-panel{background:linear-gradient(125deg, #8f0009, var(--red));color:#fff;border-radius:13px;gap:14px;margin-bottom:22px;padding:18px;display:grid;box-shadow:0 12px 28px #a8000a29}.ppt-export-heading{align-items:center;gap:12px;display:flex}.ppt-export-heading>div:last-child{gap:3px;display:grid}.ppt-export-heading strong{font-size:.92rem}.ppt-export-heading span{color:#ffffffc7;font-size:.7rem}.ppt-mark{background:var(--yellow);width:47px;height:47px;color:var(--ink);letter-spacing:.04em;border-radius:11px;place-items:center;font-size:.68rem;font-weight:900;display:grid;box-shadow:5px 5px #ffffff29}.ppt-export-controls{grid-template-columns:minmax(190px,.8fr) minmax(220px,1fr) auto;align-items:end;gap:10px;display:grid}.ppt-export-controls label{color:#fff}.ppt-export-controls input{border-color:#ffffff59}.ppt-week-label{color:#ffffffe6;background:#5b00064d;border:1px solid #ffffff3b;border-radius:9px;align-items:center;min-height:41px;padding:8px 11px;font-size:.68rem;font-weight:800;line-height:1.35;display:flex}.ppt-export-button{background:var(--yellow);min-height:41px;color:var(--ink);cursor:pointer;border:0;border-radius:9px;padding:10px 14px;font-size:.72rem;font-weight:900;box-shadow:0 5px 14px #46000433}.ppt-export-button:hover{background:#fff}.ppt-export-button:disabled{opacity:.62;cursor:wait}.ppt-help{color:#ffffffd1;margin:0;font-size:.7rem;line-height:1.5}.ppt-help strong{color:var(--yellow)}.room-names-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:18px;margin-top:24px;padding:26px;scroll-margin-top:20px}.room-names-heading{justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:22px;display:flex}.room-names-heading h2{letter-spacing:-.035em;margin:0 0 7px;font-size:1.45rem}.room-names-heading>div:first-child>p:last-child{max-width:760px;color:var(--muted);margin:0;font-size:.78rem;line-height:1.5}.names-mark{background:var(--ink);min-width:82px;min-height:50px;color:var(--yellow);letter-spacing:.09em;box-shadow:7px 7px 0 var(--yellow);border-radius:12px;flex:none;place-items:center;font-size:.62rem;font-weight:900;display:grid}.room-names-form{gap:14px;display:grid}.room-name-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.room-name-field{border:1px solid var(--line);background:#faf7f5;border-radius:11px;gap:8px;padding:14px;display:grid}.room-name-caption{color:var(--muted);align-items:center;gap:7px;display:flex}.room-name-caption .room-dot{flex:none}.room-name-caption strong{letter-spacing:.025em;text-transform:uppercase;font-size:.65rem}.room-name-field input{background:#fff;font-weight:800}.room-name-field small{color:var(--muted);font-size:.62rem;line-height:1.35}.room-names-save{justify-self:end;width:auto;min-width:260px}.events-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:18px;margin-top:24px;padding:26px;scroll-margin-top:20px}.events-heading{justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:24px;display:flex}.events-heading h2{letter-spacing:-.035em;margin:0 0 7px;font-size:1.45rem}.events-heading>div:first-child>p:last-child{max-width:700px;color:var(--muted);margin:0;font-size:.78rem;line-height:1.5}.agenda-mark{background:var(--red);min-width:86px;min-height:52px;color:var(--yellow);letter-spacing:.08em;box-shadow:7px 7px 0 var(--yellow);border-radius:12px;flex:none;place-items:center;font-size:.65rem;font-weight:900;display:grid}.events-layout{grid-template-columns:minmax(290px,.72fr) minmax(0,1.28fr);align-items:start;gap:24px;display:grid}.important-event-form{border:1px solid var(--line);background:#faf7f5;border-radius:13px;gap:13px;padding:18px;display:grid}.event-form-title{justify-content:space-between;align-items:center;gap:12px;padding-bottom:4px;display:flex}.event-form-title strong{font-size:.84rem}.important-event-list{gap:9px;display:grid}.important-event-row{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px;display:grid}.important-event-date{background:var(--red);color:#fff;border-radius:10px;align-content:center;place-items:center;height:62px;display:grid}.important-event-date strong{font-size:1.35rem;line-height:1}.important-event-date span{color:var(--yellow);text-transform:uppercase;margin-top:4px;font-size:.62rem;font-weight:900}.important-event-content{min-width:0}.important-event-content h3{margin:5px 0 3px;font-size:.9rem;line-height:1.25}.important-event-content p{color:var(--muted);margin:0;font-size:.71rem}.important-event-content small{color:#766b67;margin-top:5px;font-size:.66rem;line-height:1.4;display:block}.event-kind{color:var(--red);letter-spacing:.04em;text-transform:uppercase;font-size:.58rem;font-weight:900;display:inline-flex}.kind-rassemblement{color:#9a5700}.kind-reunion{color:var(--room-formation)}.kind-evenement{color:#146b64}.event-list-empty{min-height:220px;color:var(--muted);text-align:center;border:1px dashed #d8ceca;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:24px;font-size:.78rem;display:flex}.reservation-list{gap:8px;display:grid}.reservation-row{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px;transition:all .15s;display:grid}.reservation-row:hover{border-color:#d1c4bf;transform:translateY(-1px);box-shadow:0 7px 18px #44231f0f}.date-block{background:var(--room-27);color:#fff;border-radius:10px;align-content:center;place-items:center;height:58px;display:grid}.date-block.room-26{background:var(--room-26)}.date-block.room-pause{background:var(--room-pause)}.date-block.room-formation{background:var(--room-formation)}.date-block.room-municipal-1{background:var(--room-municipal-1)}.date-block.room-municipal-2{background:var(--room-municipal-2)}.date-block strong{font-size:1.25rem;line-height:1}.date-block span{text-transform:uppercase;margin-top:3px;font-size:.62rem;font-weight:900}.reservation-content{min-width:0}.reservation-content>div{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.room-tag,.period-tag{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;background:#eee8e5;border-radius:999px;padding:3px 6px;font-size:.57rem;font-weight:900;display:inline-flex}.room-tag.room-26{color:var(--room-26);background:#ffeaec}.room-tag.room-27{color:var(--room-27)}.room-tag.room-pause{color:#8a5b00;background:#fff2c8}.room-tag.room-formation{color:var(--room-formation);background:#f8e8f1}.room-tag.room-municipal-1{color:var(--room-municipal-1);background:#e7f5f8}.room-tag.room-municipal-2{color:var(--room-municipal-2);background:#e6f5f1}.reservation-content h3{white-space:nowrap;text-overflow:ellipsis;margin:6px 0 2px;font-size:.86rem;overflow:hidden}.reservation-content p{color:var(--muted);margin:0;font-size:.7rem}.row-actions{gap:5px;display:flex}.row-actions button{border:1px solid var(--line);color:#504846;cursor:pointer;background:#fff;border-radius:7px;padding:7px 8px;font-size:.67rem;font-weight:800}.row-actions button:hover{border-color:var(--red);color:var(--red)}.row-actions button.delete:hover{background:#ffedef}.empty-list{min-height:260px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:.82rem;display:flex}footer{background:var(--ink);color:#fff}footer .shell{align-items:center;gap:13px;min-height:110px;display:flex}footer img{object-fit:contain;width:48px;height:48px}footer div>div{gap:3px;display:grid}footer strong{font-size:.78rem}footer span{color:#bfb6b2;font-size:.68rem}footer p{color:var(--yellow);margin-left:auto;font-size:.72rem;font-weight:800}@media (width<=1120px){.workspace{grid-template-columns:1fr}.day-panel{position:static}.availability-list{grid-template-columns:1fr 1fr}.request-note{max-width:520px}.admin-grid{grid-template-columns:1fr}.form-card{position:static}.public-request-card,.events-layout{grid-template-columns:1fr}.room-name-grid{grid-template-columns:1fr 1fr}}@media (width<=720px){.shell{width:min(100% - 28px,1480px)}.header-bar{align-items:flex-start;height:auto;padding-block:12px}.brand img{width:46px;height:46px}.brand strong{font-size:.9rem}.brand small{font-size:.7rem}.header-actions{flex-direction:column;align-items:stretch}.nav-button{padding:7px 9px;font-size:.69rem}.photo-band{height:190px}.photo-band>img{width:100%}.photo-overlay{background:linear-gradient(90deg,#a4000af5,#c4000dbd)}.photo-copy h1{font-size:2rem}.photo-copy>p:last-child{max-width:92%;font-size:.83rem;line-height:1.45}.workspace,.admin-workspace{padding-block:18px 34px}.calendar-toolbar{flex-direction:column;align-items:flex-start}.filters{justify-content:flex-start}.availability-list{grid-template-columns:1fr}.login-card{padding:28px 20px}.admin-topline{align-items:flex-start;gap:10px}.form-card,.manage-card{padding:18px}.form-row.two,.form-row.three,.ppt-export-controls{grid-template-columns:1fr}.reservation-row{grid-template-columns:52px minmax(0,1fr)}.row-actions{grid-column:2}.public-request-card,.events-card,.room-names-card{padding:20px}.public-request-card{margin-top:-8px;margin-bottom:34px}.room-names-heading{align-items:flex-start}.names-mark{min-width:70px;min-height:45px;font-size:.55rem}.room-name-grid{grid-template-columns:1fr}.room-names-save{justify-self:stretch;width:100%;min-width:0}.events-heading{align-items:flex-start}.agenda-mark{min-width:70px;min-height:45px;font-size:.55rem}.important-event-row{grid-template-columns:54px minmax(0,1fr)}footer .shell{flex-wrap:wrap;align-items:flex-start;padding-block:22px}footer p{width:100%;margin:5px 0 0 61px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
