*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#293548;background:#fff;margin:0;font:1rem/1.7 Noto Sans TC,Microsoft JhengHei,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:#193653;letter-spacing:-.035em}h1{font-size:30px;line-height:1.35}h2{font-size:22px}h3{font-size:16px}a{color:#203f67;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible{outline-offset:3px;outline:3px solid #a6adba}a:focus-visible{outline-offset:3px;outline:3px solid #a6adba}input[type=checkbox]:focus-visible{outline-offset:3px;outline:3px solid #a6adba}input[type=radio]:focus-visible{outline-offset:3px;outline:3px solid #a6adba}input:not([type=checkbox]):not([type=radio]),select,textarea{color:#293548;background:#f2f4f7;border:1px solid #0000;border-radius:7px;width:100%;min-height:42px;padding:9px 12px}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:#31557e;outline:none;box-shadow:0 0 0 2px #b8c9de}input::placeholder,textarea::placeholder{color:#68758a}input[readonly],input:disabled,select:disabled,textarea:disabled{background:#e9edf2}input[type=checkbox],input[type=radio]{accent-color:#203f67;flex-shrink:0;width:16px;height:16px}textarea{resize:vertical;min-height:88px}input[type=file]{padding:9px;font-size:15px}input[type=file]::file-selector-button{color:#193653;background:#e7eaef;border:0;border-radius:4px;margin-right:10px;padding:6px 12px}fieldset{border:0;min-width:0;margin:18px 0;padding:0}legend{margin-bottom:8px;font-weight:600}fieldset:disabled{opacity:.75}.muted{color:#5c6878}.small{font-size:13px}.full{width:100%}.required{color:#812f3b}.control{margin-bottom:16px}.control label{margin-bottom:7px;font-size:15px;font-weight:500;display:block}.control small{color:#5c6878;margin-top:5px;font-size:13px;display:block}.btn{white-space:nowrap;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:39px;padding:9px 16px;font-size:15px;font-weight:600;line-height:1.4;transition:background .15s;display:inline-flex}.btn.primary{color:#fff;background:#203f67}.btn.primary:hover:not(:disabled){background:#172f4e}.btn.secondary{color:#193653;background:#fff;border-color:#c0c9d8}.btn.secondary:hover{background:#ecf0f5}.btn.ghost{color:#203f67;background:0 0;padding:7px 10px}.btn.ghost:hover{background:#e7eaef}.btn.danger{color:#fff;background:#812f3b}.btn.danger-ghost{color:#812f3b;background:0 0;padding:7px 8px}.btn.dark-ghost{color:#eaedf2;background:0 0;border-color:#707e95}.icon-btn{color:#5c6878;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:8px;display:inline-flex}.text-button{color:#203f67;background:0 0;border:0;align-items:center;gap:6px;padding:3px 0;font-weight:600;display:inline-flex}.badge{color:#545e70;white-space:nowrap;background:#e8ebf0;border-radius:5px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.badge.green{color:#4f5869;background:#e6e9ee}.badge.blue{color:#4c6b7c;background:#e5edf2}.badge.red{color:#812f3b;background:#f7e7e2}.notice{color:#4a5363;background:#eaeef3;border:1px solid #dee1e6;border-radius:7px;align-items:flex-start;gap:10px;margin:15px 0;padding:13px 16px;font-size:15px;display:flex}.notice svg{flex-shrink:0;margin-top:1px}.notice ul{padding-left:20px}.notice.error{color:#812f3b;background:#fff2ee;border-color:#eed5ca}.notice.success{color:#4d5767;background:#eaeef3}.eyebrow{letter-spacing:.13em;color:#657186;align-items:center;gap:7px;font-size:12px;font-weight:600;display:inline-flex}.tiny-dot{background:#77869f;border-radius:50%;width:6px;height:6px}.brand{color:#193653;white-space:nowrap;align-items:center;gap:10px;font-size:20px;font-weight:700;line-height:1.3;display:flex}.brand-icon{color:#fff;background:#203f67;border-radius:10px;justify-content:center;align-items:center;width:39px;height:39px;display:flex;position:relative}.brand-icon i{background:#e9c980;border-radius:50%;width:7px;height:7px;position:absolute;bottom:8px;right:7px}.brand-sub{letter-spacing:.1em;color:#626e82;margin-top:4px;font-size:11px;font-weight:400;display:block}.public-header{background:#fff;border-bottom:1px solid #dde3eb}.header-inner{justify-content:space-between;align-items:center;max-width:1180px;margin:auto;padding:22px 30px;display:flex}.header-inner nav{align-items:center;gap:30px;display:flex}.header-inner nav a{color:#5c6878;font-size:15px}.header-inner nav a.active{color:#203f67;font-weight:700}.header-inner nav a.admin-link{border-left:1px solid #dde3eb;align-items:center;gap:6px;padding-left:25px;display:flex}.public-main{max-width:1180px;margin:auto;padding:32px 30px 55px}.public-hero{background:#eaedf2;border-radius:15px;grid-template-columns:1.35fr 1fr;align-items:center;min-height:280px;padding:38px 40px;display:grid;position:relative;overflow:hidden}.public-hero h1{letter-spacing:-.055em;margin:13px 0 15px;font-size:clamp(26px,3vw,36px)}.public-hero p{color:#5d687c;font-size:16px}.hero-steps{color:#50596a;align-items:center;gap:14px;margin-top:25px;font-size:13px;display:flex}.hero-steps b{color:#203f67;margin-right:6px;font-family:Georgia,serif;font-size:15px}.hero-steps i{color:#a0a8b4;font-style:normal}.hero-visual{width:100%;height:230px;position:relative}.court{background:#c6d7c0;border:1px solid #abc3a5;border-radius:18px;width:320px;height:180px;position:absolute;top:12px;right:-20px;transform:rotate(-12deg);box-shadow:0 22px 0 -6px #d6e0cb,0 23px 38px #62705012}.court:after{content:"";border:2px solid #eaf1e4;border-radius:4px;position:absolute;inset:15px}.court-line{background:#eaf1e4;width:2px;height:calc(100% - 30px);position:absolute;top:15px;left:50%}.court-circle{border:2px solid #eaf1e4;border-radius:50%;width:58px;height:58px;position:absolute;top:calc(50% - 29px);left:calc(50% - 28px)}.court-box{border:2px solid #eaf1e4;width:48px;height:80px;position:absolute;top:50px}.court-box.a{left:15px}.court-box.b{right:15px}.hero-ticket{color:#426646;z-index:1;background:#fff;border-radius:9px;align-items:center;gap:15px;padding:17px 20px;font-weight:600;display:flex;position:absolute;bottom:12px;left:14px;box-shadow:0 8px 24px #4d6a4412}.hero-ticket small{color:#85947e;margin-top:4px;font-size:11px;display:block}.check-circle{background:#e7eddf;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.hero-floating{letter-spacing:.1em;color:#5c7660;background:#fff8e5;border-radius:7px;padding:10px 17px;font-size:11px;font-weight:600;position:absolute;top:-2px;right:4px;transform:rotate(6deg)}.hero-floating span{letter-spacing:0;font-size:13px;display:block}.news-hero{min-height:205px}.news-hero .hero-visual{opacity:.7;height:170px}.section-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:19px;display:flex}.section-heading h2{margin:5px 0 0;font-size:22px}.section-heading h2 span{vertical-align:middle;color:#576274;background:#e5e8ed;border-radius:10px;margin-left:10px;padding:2px 8px;font-size:12px}.filter-bar{background:#fff;border:1px solid #dde3eb;border-radius:9px;grid-template-columns:1fr 1fr 1.35fr;gap:18px;margin-bottom:24px;padding:18px 22px;display:grid}.filter-bar .control{margin:0}.activity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;display:grid}.activity-card{background:#fff;border:1px solid #dde3eb;border-radius:11px;overflow:hidden}.activity-card:hover{box-shadow:0 10px 24px #2f353f10}.card-banner{background:#e4eee6;justify-content:space-between;align-items:center;height:160px;padding:23px;display:flex;position:relative}.card-banner>span:first-child{color:#5e7863;align-self:flex-start;font-size:13px}.card-banner>svg{color:#9dbba3;position:absolute;bottom:16px;right:25px;transform:rotate(-10deg)}.card-banner .badge{background:#ffffffd9;position:absolute;bottom:18px;left:22px}.card-banner.banner-1{background:#edf0e1}.card-banner.banner-1>svg{color:#b9c599}.card-banner.banner-2{background:#e5ecee}.card-banner.banner-2>svg{color:#a6bbc0}.card-body{padding:22px}.card-body h3{margin:8px 0 11px;font-size:18px;line-height:1.5}.location{color:#69768c;align-items:center;gap:5px;font-size:12px;display:flex}.location svg{flex:none}.location span{overflow-wrap:anywhere}.card-period{white-space:nowrap;border-top:1px solid #e8ebf0;align-items:center;gap:7px;padding-top:15px;display:flex}.card-period>svg{color:#6f7d94;flex:none}.card-period .card-period-label{color:#69768c;flex:none;font-size:12px}.card-period .card-period-dates{color:#485160;font-variant-numeric:tabular-nums;font-size:12px}.card-bottom{justify-content:space-between;align-items:center;margin-top:18px;display:flex}.card-bottom>span{color:#69768c;font-size:12px}.card-bottom .btn{min-height:35px}.help-strip{background:#e8ebf0;border-radius:10px;align-items:center;gap:15px;margin-top:32px;padding:25px 28px;display:flex}.help-strip>svg{color:#68758b;flex-shrink:0}.help-strip h3{margin:0 0 5px;font-size:16px}.help-strip p{color:#616d81;margin:0;font-size:13px}.help-strip>a{white-space:nowrap;align-items:center;gap:7px;margin-left:auto;font-size:13px;display:flex}.public-footer{border-top:1px solid #dde3eb;align-items:center;gap:30px;max-width:1120px;margin:auto;padding:28px 0 35px;display:flex}.public-footer .brand{font-size:15px}.public-footer .brand .brand-icon{width:32px;height:32px}.public-footer .brand .brand-icon>svg{width:21px}.public-footer p{color:#677389;margin:0;font-size:12px}.public-footer>span{color:#6e7b92;margin-left:auto;font-size:11px}.notice-meta{color:#5c6878;justify-content:space-between;margin-bottom:25px;font-size:13px;display:flex}.attachment-list{border-top:1px solid #dde3eb;margin-top:25px;padding-top:20px}.attachment-list button{color:#203f67;text-align:left;background:#ecf0f5;border:1px solid #dde3eb;border-radius:6px;align-items:center;gap:10px;width:100%;margin-bottom:8px;padding:13px 15px;display:flex}.attachment-list button svg:last-child{margin-left:auto}.pager{justify-content:center;align-items:center;gap:8px;margin:28px 0 8px;display:flex}.pager>button:not(.btn){color:#5c6878;background:0 0;border:0;border-radius:6px;width:32px;height:32px}.pager>button:not(.btn).selected{color:#fff;background:#203f67}.empty{text-align:center;color:#5c6878;padding:55px 20px}.empty h3{margin:14px 0 8px}.empty p{margin-bottom:20px;font-size:15px}.empty-mark{color:#6d7a91;background:#e8ebf0;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;margin:auto;font-size:22px;display:flex}.skeleton-grid{grid-template-columns:repeat(3,1fr);gap:23px;display:grid}.skeleton-card{background:linear-gradient(90deg,#e8ebf0,#eef2f7,#e8ebf0) 0 0/200% 100%;border-radius:11px;min-height:250px;animation:1.5s infinite shimmer}.modal{color:#293548;background:#fff;border:1px solid #dde3eb;border-radius:12px;width:min(560px,100vw - 30px);max-height:88vh;padding:0;box-shadow:0 25px 80px #19365325}.modal.wide{width:min(850px,100vw - 30px)}.modal::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#282d3566}.modal>header{z-index:2;background:#fff;border-bottom:1px solid #dde3eb;justify-content:space-between;align-items:center;padding:18px 24px;display:flex;position:sticky;top:0}.modal>header h2{margin:0;font-size:19px}.modal>footer{z-index:2;background:#fff;border-top:1px solid #dde3eb;justify-content:flex-end;gap:10px;padding:16px 24px;display:flex;position:sticky;bottom:0}.modal-content{padding:24px}.editor{background:#f2f4f7;border:1px solid #0000;border-radius:7px;overflow:hidden}.editor:focus-within{border-color:#31557e;box-shadow:0 0 0 2px #b8c9de}.editor textarea{background:0 0;border:0;border-radius:0;display:block}.editor textarea:focus{box-shadow:none;border-color:#0000}.editor .rich-content{min-height:140px;padding:12px}.editor-toolbar{background:#eff3f8;border-bottom:1px solid #dde3eb;gap:5px;padding:6px;display:flex}.editor-toolbar button{color:#203f67;background:0 0;border:0;border-radius:4px;align-items:center;gap:5px;padding:6px;display:flex}.editor-toolbar button:hover{background:#e7eaef}.editor-toolbar .preview-button{margin-left:auto;font-size:13px}.rich-content{overflow-wrap:anywhere;font-size:16px}.rich-content p{margin:0 0 8px}.rich-content .rich-list{margin-bottom:5px;padding-left:15px}.rich-content a{text-decoration:underline}.choice{align-items:center;gap:9px;margin:10px 0;font-size:15px;font-weight:400;display:flex}.choice.inline{margin-right:16px;display:inline-flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;display:grid}.registration-main{max-width:1080px;margin:auto;padding:28px 30px 60px}.back-link{align-items:center;gap:6px;margin-bottom:25px;font-size:13px;display:inline-flex}.registration-title{margin-bottom:25px}.registration-title h1{margin:10px 0}.registration-title p{color:#5c6878;align-items:center;gap:8px;font-size:15px;display:flex}.registration-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:28px;display:grid}.registration-aside{background:#e8ebf0;border-radius:10px;padding:25px}.registration-aside p,.registration-aside .rich-content{color:#576274;font-size:15px}.rule-separator{background:#c9d2e2;height:1px;margin:22px 0}.aside-note{color:#6c7990;gap:8px;margin-top:25px;display:flex}.aside-note p{margin:0;font-size:13px}.aside-note svg{flex-shrink:0}.registration-panel{background:#fff;border:1px solid #dde3eb;border-radius:10px;padding:32px}.registration-panel h2{margin:8px 0 10px;font-size:23px}.registration-panel .control{margin-top:20px}.step-label{color:#6f7d94;letter-spacing:.12em;font-size:12px}.dynamic-field{margin-top:18px}.dynamic-field>label{font-size:15px;font-weight:500;display:block}.dynamic-field>label textarea{margin-top:8px}.slot-field{margin:25px 0}.slot-heading{justify-content:space-between;align-items:center;display:flex}.slot-option{cursor:pointer;border:1px solid #dde3eb;border-radius:7px;align-items:center;gap:12px;margin:9px 0;padding:13px 15px;display:flex}.slot-option.checked{background:#ecf0f5;border-color:#8595b1}.slot-option span{font-size:15px;font-weight:500}.slot-option small{color:#5c6878;margin-top:3px;font-size:12px;display:block}.form-actions{border-top:1px solid #dde3eb;flex-direction:column;align-items:center;gap:10px;padding-top:22px;display:flex}.registration-success{text-align:center;padding:15px 0 25px}.registration-success>p{color:#5c6878;justify-content:center;align-items:center;gap:6px;display:flex}.registration-success .btn{margin:6px}.success-icon{color:#203f67;background:#e7eaef;border-radius:50%;justify-content:center;align-items:center;width:66px;height:66px;margin:auto auto 18px;display:flex}.registration-number{background:#eaeef3;border-radius:8px;margin:22px 0;padding:18px}.registration-number small{color:#647085;display:block}.registration-number strong{letter-spacing:.04em;word-break:break-all;color:#203f67;margin-top:5px;font-size:22px;display:block}.reset-main{background:#fff;border:1px solid #dde3eb;border-radius:10px;max-width:520px;margin:50px auto 80px;padding:30px}.admin-shell{min-height:100vh;display:flex}.admin-sidebar{z-index:10;background:#ebeff4;border-right:1px solid #dee1e6;flex-direction:column;width:225px;padding:28px 17px 20px;display:flex;position:fixed;inset:0 auto 0 0}.admin-sidebar .brand{margin:0 8px 35px;font-size:19px}.admin-sidebar nav{flex:1;overflow-y:auto}.admin-sidebar nav button{text-align:left;color:#5e697d;background:0 0;border:0;border-radius:7px;align-items:center;gap:11px;width:100%;margin:3px 0;padding:11px 14px;font-size:15px;display:flex}.admin-sidebar nav button svg:last-child:not(:first-child){margin-left:auto}.admin-sidebar nav button:hover{background:#e5e8ed}.admin-sidebar nav button.active{color:#fff;background:#203f67}.sidebar-caption{letter-spacing:.1em;color:#73829a;margin:0 16px 10px;font-size:11px}.sidebar-bottom{border-top:1px solid #dadde2;align-items:center;gap:10px;margin-top:20px;padding:18px 9px 0;display:flex}.sidebar-bottom strong{font-size:13px}.sidebar-bottom small{color:#6f7d94;font-size:11px;display:block}.avatar{color:#596477;background:#dfe2e7;border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;font-weight:600;display:flex}.admin-workspace{flex-direction:column;width:calc(100% - 225px);margin-left:225px;display:flex}.admin-header{background:#fff;border-bottom:1px solid #dde3eb;justify-content:space-between;align-items:center;gap:20px;height:73px;padding:0 32px;display:flex}.breadcrumb{color:#6c7990;align-items:center;gap:9px;font-size:13px;display:flex}.breadcrumb strong{color:#495261;font-weight:500}.admin-header-right{align-items:center;gap:20px;display:flex}.admin-header-right select{width:auto;max-width:310px;min-height:34px;padding:5px 28px 5px 10px;font-size:13px}.preview-link{white-space:nowrap;align-items:center;gap:4px;font-size:13px;display:flex}.mobile-menu{display:none}.admin-main{flex:1;width:100%;max-width:1600px;margin:auto;padding:32px}.admin-page-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px;display:flex}.admin-page-title h1{margin:6px 0;font-size:28px}.admin-page-title p{color:#677389;margin:0;font-size:13px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:26px;display:grid}.stat-card{background:#fff;border:1px solid #dde3eb;border-radius:9px;padding:20px 23px}.stat-card>span{color:#636f84;font-size:13px}.stat-card>div{justify-content:space-between;align-items:center;margin:9px 0;display:flex}.stat-card>div>strong{color:#193653;font-size:36px;font-weight:600;line-height:1.2}.stat-card>small{color:#7c8ba5;font-size:11px}.stat-icon{color:#7a88a2;background:#eaedf2;border-radius:10px;justify-content:center;align-items:center;width:43px;height:43px;display:flex}.overview-grid{grid-template-columns:1.4fr 1fr;gap:24px;display:grid}.overview-panel{background:#fff;border:1px solid #dde3eb;border-radius:9px;padding:24px}.overview-panel .section-heading h2{margin:0;font-size:17px}.next-steps h2{margin:8px 0 25px;font-size:19px}.next-steps>div{gap:12px;margin:19px 0;display:flex}.next-steps>div>b{color:#69768c;background:#ecf0f5;border:1px solid #c8d1e1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;display:flex}.next-steps>div strong{font-size:15px}.next-steps>div p{color:#6f7d94;margin:3px 0 0;font-size:12px}.admin-footer{text-align:center;color:#7887a0;padding:20px 30px;font-size:11px}.data-panel{background:#fff;border:1px solid #dde3eb;border-radius:9px;padding:23px}.toolbar{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px;display:flex}.toolbar .control{min-width:200px;max-width:440px;margin:0}.table-scroll{width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}table th{color:#657186;white-space:nowrap;text-align:left;background:#eef2f7;border-bottom:1px solid #dde3eb;padding:11px 14px;font-weight:500}table td{vertical-align:middle;border-bottom:1px solid #e7eaef;padding:15px 14px}table td strong{font-size:15px;font-weight:500}table td small{color:#738199;margin-top:4px;font-size:11px;display:block}table tbody tr:last-child td{border-bottom:0}table tbody tr:hover{background:#f2f5fb}.row-actions{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.row-actions .btn{min-height:30px;padding:6px;font-size:12px}.actions-column{min-width:190px}.builder-section{border-top:1px solid #dde3eb;margin-top:25px;padding-top:22px}.builder-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px;display:flex}.builder-heading h3{margin:0}.builder-heading strong{font-size:15px}.builder-card{background:#eff3f8;border:1px solid #dee1e6;border-radius:8px;margin-bottom:14px;padding:18px}.permission-grid{background:#eef2f7;border-radius:8px;grid-template-columns:repeat(2,1fr);gap:0 20px;padding:15px;display:grid}.permission-grid .choice{margin:6px 0}.assignment{border:1px solid #dde3eb;border-radius:7px;align-items:center;gap:12px;margin-bottom:12px;padding:15px;display:flex}.assignment .control{flex:1;margin:0}.file-chip{background:#eaedf2;border-radius:5px;align-items:center;gap:8px;margin-top:8px;padding:7px 9px;font-size:13px;display:flex}.file-chip button{color:#8c5748;background:0 0;border:0;margin-left:auto}.detail-list,.record-detail dl{grid-template-columns:120px minmax(0,1fr);gap:15px;font-size:15px;display:grid}.detail-list dt,.record-detail dl dt{color:#5c6878}.detail-list dd,.record-detail dl dd{overflow-wrap:anywhere;margin:0}.detail-list pre,.record-detail dl pre{white-space:pre-wrap;font:inherit;margin:0}.settings-card{background:#fff;border:1px solid #dde3eb;border-radius:9px;margin-bottom:23px;padding:25px}.settings-card h2{margin-bottom:10px;font-size:19px}.settings-card>small{color:#5c6878;font-size:12px}.test-mail{align-items:center;gap:16px;margin-top:22px;display:flex}.test-mail .control{flex:1;max-width:370px}.time-card{color:#626e82;gap:15px;display:flex}.time-card h3{margin-bottom:6px}.time-card p{color:#6c7990;margin:0;font-size:13px}.admin-loading{max-width:480px;margin:100px auto;padding:20px}.admin-loading .brand{margin-bottom:35px}.admin-welcome{max-width:520px;margin:60px auto;padding:0 20px}.admin-welcome>.brand{justify-content:center;margin-bottom:30px}.admin-welcome>.back-link{justify-content:center;margin-top:25px;display:flex}.welcome-card{background:#fff;border:1px solid #dde3eb;border-radius:12px;padding:35px}.welcome-card h1{margin:10px 0 20px;font-size:26px}.welcome-card p{color:#5c6878;font-size:15px}.welcome-card .choice{margin:25px 0}.session-overview{background:#e9ecf1;border:1px solid #c9d2e2;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;padding:26px;display:flex}.session-overview h2{margin:7px 0;font-size:23px}.session-overview p{color:#636f84;margin:0;font-size:13px}.session-metrics{text-align:center;gap:28px;display:flex}.session-metrics strong{color:#5a6578;font-size:27px;font-weight:600;line-height:1.3;display:block}.session-metrics strong small{color:#8292ad;font-size:15px}.session-metrics span{color:#6f7d94;font-size:11px}.session-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:21px 0;display:flex}.session-rule{color:#636f84;background:#ebeff4;border:1px solid #e0e3e8;border-radius:7px;align-items:center;gap:10px;margin-bottom:22px;padding:12px 15px;font-size:12px;display:flex}.session-rule>span:last-child{margin-left:auto}.draw-items{flex-direction:column;gap:13px;display:flex}.draw-item{background:#fff;border:1px solid #dde3eb;border-radius:9px;align-items:center;gap:20px;padding:22px;display:flex}.draw-item.confirmed{border-left:3px solid #7d8da7}.draw-item.void{background:#faf7f4;border-left:3px solid #c99a8b}.draw-item-number{color:#a3aab7;background:#ebeff4;border-radius:7px;padding:9px 12px;font:21px Georgia,serif}.draw-item-main{flex:1;min-width:0}.draw-item-main>div{align-items:center;gap:10px;display:flex}.draw-item-main h3{margin:0;font-size:16px}.draw-item-main p{color:#717f97;margin:8px 0;font-size:12px}.quota{color:#707e95;gap:15px;font-size:12px;display:flex}.quota b{color:#545e70}.quota span{align-items:center;gap:4px;display:flex}.draw-item-actions{flex-wrap:wrap;gap:6px;display:flex}.result-columns{grid-template-columns:1fr 1fr;gap:20px;margin:25px 0;display:grid}.result-group{background:#eef2f7;border:1px solid #dee1e6;border-radius:9px;padding:20px}.result-group h3{justify-content:space-between;align-items:center;gap:15px;margin:0 0 18px;display:flex}.result-group h3 span{color:#728098;font-size:12px;font-weight:400}.result-group.reserve{background:#f7f5eb;border-color:#e7e1c9}.result-person{border-bottom:1px solid #dee1e6;align-items:center;gap:12px;padding:12px 0;display:flex}.result-person:last-child{border:0}.result-person>b{color:#8090ab;min-width:26px;font:18px Georgia,serif}.result-person strong{color:#404856;font-size:16px}.result-person span{color:#6e7b92;font-size:12px;display:block}.result-person small{color:#74839b;font-size:11px}.draw-screen{z-index:50;color:#dadde2;background:radial-gradient(circle at 50% 0,#434b59 0,#2e343e 55%,#23282f 100%);position:fixed;inset:0;overflow:auto}.draw-screen-header{border-bottom:1px solid #ffffff13;justify-content:space-between;align-items:center;padding:22px 35px;display:flex}.draw-screen-header>span:last-child{color:#7a89a3;font-size:13px}.draw-screen-brand{color:#dee1e6;align-items:center;gap:9px;font-weight:600;display:flex}.draw-screen-body{text-align:center;max-width:1050px;margin:auto;padding:45px 35px}.draw-screen-body h1{color:#edf1f6;margin:12px 0 20px;font-size:36px}.draw-screen-body h2{color:#e6e9ee;font-size:24px}.draw-screen-body>p{color:#8292ad;font-size:15px}.draw-eyebrow{letter-spacing:.1em;color:#aeb6c4;font-size:13px}.draw-screen-quota{color:#adb5c2;justify-content:center;gap:35px;margin-bottom:30px;font-size:15px;display:flex}.draw-screen-quota b{color:#e0d6a0;margin:0 7px;font-size:24px}.draw-orb{color:#dace92;background:#515b6c2e;border:1px solid #606c8055;border-radius:50%;justify-content:center;align-items:center;width:150px;height:150px;margin:35px auto;display:flex;box-shadow:0 0 0 18px #515b6c10,0 0 0 36px #515b6c08}.start-draw{border-radius:8px;margin-top:20px;padding:15px 35px;font-size:17px;color:#3a414d!important;background:#bcc4d3!important}.draw-result-actions{justify-content:center;gap:20px;display:flex}.draw-warning{margin-top:22px;font-size:12px!important}.draw-screen .result-group{text-align:left;background:#ecf0f5}.drawing-animation{padding:55px 0}.lottery-wheel{justify-content:center;gap:15px;margin:20px 0 40px;display:flex}.lottery-wheel span{color:#3e4552;background:#bcc4d3;border-radius:10px;width:100px;padding:28px 10px;font:52px Georgia,serif;animation:.18s infinite alternate roll;display:block}.lottery-wheel span:nth-child(2){animation-delay:80ms}.lottery-wheel span:nth-child(3){animation-delay:.12s}.spin{animation:1s linear infinite rotate}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes roll{0%{opacity:.5;transform:translateY(-10px)}to{opacity:1;transform:translateY(10px)}}@keyframes shimmer{to{background-position:-200% 0}}@media (max-width:1100px){.admin-sidebar{width:195px}.admin-workspace{width:calc(100% - 195px);margin-left:195px}.admin-main{padding:25px}.admin-header{padding:0 25px}.stat-grid{gap:12px}.stat-card{padding:17px}.overview-grid{grid-template-columns:1fr}.draw-item{gap:12px}.draw-item-actions{flex-direction:column}}@media (max-width:850px){.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-hero{grid-template-columns:1.3fr .7fr;padding:30px}.public-hero .hero-visual{opacity:.7;transform-origin:100%;transform:scale(.85)}.public-footer{flex-wrap:wrap;gap:15px;margin:0 30px}.public-footer>span{margin-left:0}.registration-layout{grid-template-columns:1fr}.registration-aside{padding:20px}.admin-header-right{gap:8px}.admin-header-right .preview-link{font-size:0}.admin-sidebar{width:180px;padding:25px 12px}.admin-sidebar .brand{font-size:16px}.admin-sidebar nav button{padding:10px;font-size:13px}.admin-workspace{width:calc(100% - 180px);margin-left:180px}.stat-grid{grid-template-columns:repeat(2,1fr)}.toolbar{flex-wrap:wrap}.toolbar .control{flex:1}.session-overview{flex-direction:column;align-items:start}.session-metrics{justify-content:space-between;width:100%}.session-rule{flex-wrap:wrap}.session-rule>span:last-child{margin-left:0}.assignment{flex-wrap:wrap}.assignment .control{min-width:140px}}@media (max-width:600px){body{font-size:.9375rem}.header-inner{gap:10px;padding:18px}.header-inner nav{gap:15px}.header-inner nav a{font-size:12px}.header-inner nav a.admin-link{border:0;padding:0;font-size:0}.header-inner nav a.admin-link svg{width:19px;height:19px}.brand{gap:8px;font-size:17px}.brand-sub{letter-spacing:0;font-size:11px}.brand-icon{width:33px;height:33px}.brand-icon>svg{width:22px}.public-main{padding:20px 18px 35px}.public-hero{grid-template-columns:1fr;min-height:230px;padding:28px 24px}.public-hero .hero-visual{display:none}.public-hero h1{max-width:300px;font-size:27px}.public-hero p{font-size:13px}.hero-steps{gap:8px;font-size:12px}.hero-steps b{font-size:15px}.filter-bar{grid-template-columns:1fr 1fr;gap:12px;padding:15px}.filter-bar>.control:last-child{grid-column:1/-1}.section-heading h2{font-size:20px}.section-heading>.small{font-size:11px}.activity-grid,.skeleton-grid{grid-template-columns:1fr}.card-banner{height:160px}.card-body h3{font-size:19px}.help-strip{flex-wrap:wrap;padding:20px}.help-strip>div{flex:1}.help-strip>a{margin-left:40px}.public-footer{margin:0 18px;padding:23px 0}.public-footer>p{order:2;width:100%}.public-footer>span{margin-left:auto;font-size:11px}.registration-main{padding:22px 18px 35px}.registration-title h1{font-size:24px}.registration-panel{padding:23px}.registration-number strong{font-size:19px}.reset-main{margin:25px 18px}.modal{width:calc(100vw - 20px);max-height:94vh}.modal>header{padding:16px 18px}.modal>header h2{font-size:17px}.modal>footer{padding:14px 18px}.modal>footer .btn{flex:1}.modal-content{padding:18px}.form-grid,.permission-grid{grid-template-columns:1fr}.builder-card{padding:15px}.detail-list,.record-detail dl{grid-template-columns:95px minmax(0,1fr)}.admin-sidebar{display:none}.admin-sidebar.mobile-open{width:225px;display:flex;top:65px;box-shadow:15px 0 40px #2c323b20}.admin-workspace{width:100%;margin-left:0}.admin-header{gap:8px;height:65px;padding:0 14px}.admin-header .breadcrumb{display:none}.mobile-menu{display:flex}.admin-header-right{flex:1;justify-content:flex-end;gap:8px}.admin-header-right select{width:100%;max-width:235px;font-size:12px}.admin-main{padding:22px 16px}.admin-page-title{align-items:start}.admin-page-title h1{font-size:25px}.admin-page-title>.btn{padding:8px;font-size:0}.admin-page-title p{max-width:240px;font-size:12px}.stat-card{padding:16px}.stat-card>div>strong{font-size:29px}.stat-card .stat-icon{width:34px;height:34px}.stat-card .stat-icon svg{width:20px}.overview-panel,.data-panel{padding:18px}.toolbar{gap:12px}.toolbar>.control{min-width:100%}.toolbar>.btn{flex:1}table{font-size:12px}table th,table td{min-width:75px;padding:12px 9px}.session-overview{padding:20px}.session-overview h2{font-size:21px}.session-actions .btn{padding:8px 10px;font-size:12px}.draw-item{flex-wrap:wrap;padding:17px}.draw-item .draw-item-main{min-width:calc(100% - 80px)}.draw-item .draw-item-main h3{font-size:16px}.draw-item .draw-item-main>div{flex-direction:column;align-items:start;gap:5px}.draw-item .draw-item-actions{flex-direction:row;justify-content:flex-end;width:100%}.quota{flex-wrap:wrap;gap:6px 14px}.result-columns{grid-template-columns:1fr}.draw-screen-header{padding:15px}.draw-screen-header>span:last-child{display:none}.draw-screen-body{padding:28px 18px}.draw-screen-body h1{font-size:25px}.draw-screen-quota{gap:20px}.draw-result-actions{flex-wrap:wrap;gap:10px}.lottery-wheel span{width:80px;padding:25px 6px;font-size:40px}.settings-card{padding:20px}.test-mail{flex-direction:column;align-items:stretch}.assignment{padding:12px}.pager{gap:4px}.pager .btn{padding:7px;font-size:12px}}@media print{.public-header,.public-footer,.back-link,.btn,.admin-sidebar,.admin-header,.admin-footer{display:none!important}body{background:#fff}.registration-layout{display:block}.registration-aside{display:none}.registration-panel{border:0}.admin-workspace{width:100%;margin:0}.draw-screen{color:#193653;background:#fff;position:static}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation:none!important}}.confirmation-details{text-align:left;overflow-wrap:anywhere;background:#f0f4f9;border-radius:12px;margin:20px 0;padding:20px}.brand-icon i{background:#812f3b}.public-hero{background:#fff;border:1px solid #dde3eb;box-shadow:0 6px 22px #19365308}.public-hero p{color:#5c6878}.admin-sidebar{background:#f8f9fc;border-right-color:#dde3eb}.session-overview,.registration-aside,.help-strip{background:#f5f7fa;border-color:#dde3eb}.badge.red,.notice.error{color:#812f3b;background:#fbf1f3;border-color:#e8cdd2}.btn.danger{background:#812f3b}.btn.danger:hover:not(:disabled){background:#672431}.btn.danger-ghost{color:#812f3b}.btn.danger-ghost:hover{background:#fbf1f3}.draw-item.void{background:#fcf7f8;border-left-color:#812f3b}.void-reason{color:#812f3b!important}.draw-screen{color:#193653;background:#fff}.draw-screen-header{background:#f8f9fc;border-bottom-color:#dde3eb}.draw-screen-brand,.draw-screen-body h1,.draw-screen-body h2{color:#193653}.draw-screen-body>p,.draw-screen-header>span:last-child,.draw-eyebrow,.draw-screen-quota{color:#5c6878}.draw-screen-quota b{color:#812f3b}.draw-orb{color:#203f67;background:#f1f4f9;border-color:#d8e1ec;box-shadow:0 0 0 18px #203f6708,0 0 0 36px #203f6704}.start-draw{color:#fff!important;background:#203f67!important}.draw-result-actions .primary{color:#fff;background:#203f67}.draw-screen .btn.dark-ghost{color:#203f67;border-color:#aab9cc}.draw-count{color:#5c6878!important}.lottery-wheel span{color:#193653;background:#edf2f9}.rich-content{font-size:16px}.control label,.dynamic-field>label,.slot-option span{font-size:15px}.card-bottom,.section-heading,.admin-header,.admin-page-title,.hero-steps{flex-wrap:wrap}@media (max-width:850px){.admin-sidebar{width:210px}.admin-workspace{width:calc(100% - 210px);margin-left:210px}}@media (max-width:600px){body{font-size:16px}.admin-workspace{width:100%;margin-left:0}.admin-header{height:auto;min-height:65px;padding-block:10px}.admin-header-right{flex-wrap:wrap}.admin-page-title>.btn{padding:9px 12px;font-size:14px}.header-inner{flex-wrap:wrap}.header-inner nav{flex-wrap:wrap;gap:12px}.brand-sub{font-size:11px}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}.admin-header-right select{font-size:14px}.hero-steps{row-gap:8px}.stat-grid{gap:12px}.stat-card>span,table{font-size:13px}.public-footer{flex-wrap:wrap}.draw-result-actions .btn{white-space:normal}}.public-footer{flex-wrap:wrap;gap:20px}.footer-copyright{color:#193653;font-size:13px}.footer-links{white-space:nowrap;align-items:center;gap:16px;margin-left:auto;font-size:12px;display:flex}.footer-links>span{color:#5c6878}.footer-admin-link{color:#203f67;border-left:1px solid #dde3eb;align-items:center;gap:6px;padding:5px 0 5px 16px;display:inline-flex}.footer-admin-link:hover{text-decoration:underline}@media (max-width:600px){.public-footer{gap:12px}.footer-copyright{width:100%}.footer-links{margin-left:0}.public-footer>p{order:2}}:root{--query-control-height:36px;--query-control-font-size:14px;--query-control-padding:6px 10px;--query-control-radius:6px;--query-control-gap:10px}.query-bar{align-items:center;gap:var(--query-control-gap);flex-wrap:wrap;display:flex}.query-bar .control{min-width:0;margin:0;position:relative}.query-bar .control input:not([type=checkbox]):not([type=radio]),.query-bar .control select{width:100%;min-width:0;height:var(--query-control-height);min-height:var(--query-control-height);padding:var(--query-control-padding);border-radius:var(--query-control-radius);font-size:var(--query-control-font-size);line-height:1.4;display:block}.venue-category-filter{margin-bottom:1rem}.registrations-panel .query-bar .control{flex:220px;min-width:0;max-width:100%}.searchable-select-input{position:relative}.query-bar .searchable-select-input input{text-overflow:ellipsis;padding-right:36px!important}.searchable-select-input button{width:34px;height:100%;color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:0;right:0}.searchable-select-options{z-index:30;background:#fff;border:1px solid #dde3eb;border-radius:6px;max-height:280px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 6px 20px #0002}.searchable-select-options>div{overflow-wrap:anywhere;cursor:pointer;padding:9px 10px}.searchable-select-options>[aria-selected=true]{color:#203f67;font-weight:600}.searchable-select-options>.active,.searchable-select-options>[role=option]:hover{background:#eef2f5}.venue-category-filter .control{flex:0 240px;max-width:280px}@media (max-width:600px){:root{--query-control-height:42px;--query-control-font-size:16px;--query-control-padding:7px 10px;--query-control-gap:8px}.venue-category-filter .control{flex:180px;max-width:none}}.catalog-section{margin-top:24px}.filter-bar{justify-content:flex-start;gap:var(--query-control-gap);background:0 0;border:0;border-radius:0;flex-wrap:wrap;margin-bottom:18px;padding:0;display:flex}.filter-bar .control{flex:0 180px;min-width:0;margin:0;position:relative}.filter-bar .control:last-child{flex-basis:240px}.filter-bar .control label{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.filter-bar .control select,.filter-bar .control input:not([type=checkbox]):not([type=radio]){min-height:var(--query-control-height);height:var(--query-control-height);padding:var(--query-control-padding);border-radius:var(--query-control-radius);font-size:var(--query-control-font-size)}@media (max-width:600px){.catalog-section{margin-top:20px}.filter-bar{gap:var(--query-control-gap);margin-bottom:16px}.filter-bar .control{flex:calc(50% - 4px)}.filter-bar .control:last-child{flex:100%}}.publish-switch{color:#5c6878;white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;min-height:38px;padding:6px;font-size:13px;display:inline-flex}.publish-switch-track{background:#697586;border:1px solid #697586;border-radius:999px;flex-shrink:0;width:38px;height:22px;padding:2px;display:block}.publish-switch-thumb{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;display:block}.publish-switch[aria-checked=true]{color:#203f67}.publish-switch[aria-checked=true] .publish-switch-track{background:#203f67;border-color:#203f67}.publish-switch[aria-checked=true] .publish-switch-thumb{transform:translate(16px)}.publish-switch:hover:not(:disabled){background:#f1f4f9}@media (max-width:600px){.publish-switch{min-height:44px}}.admin-main .toolbar{justify-content:flex-start;align-items:center;gap:var(--query-control-gap);background:0 0;border:0;flex-wrap:wrap;margin-bottom:16px;padding:0}.admin-main .toolbar .control{flex:0 240px;min-width:0;max-width:280px;margin:0;position:relative}.admin-main .toolbar .control label{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-main .toolbar .control input:not([type=checkbox]):not([type=radio]),.admin-main .toolbar .control select{height:var(--query-control-height);min-height:var(--query-control-height);padding:var(--query-control-padding);font-size:var(--query-control-font-size);border-radius:var(--query-control-radius)}.admin-main .toolbar>.btn{min-height:36px;margin-left:auto;padding:7px 12px;font-size:14px}.data-count{color:#5c6878;margin:0 0 12px;font-size:13px;line-height:1.5}.data-count strong{color:#193653;font-weight:600}.registration-stats .data-count{margin:0}.header-member{align-items:center;gap:8px;min-width:0;display:flex}.header-member-name{overflow-wrap:anywhere;max-width:160px;font-size:13px;line-height:1.4}.header-member .avatar{flex-shrink:0;width:30px;height:30px;font-size:13px}.sidebar-preview-link{color:#5c6878;align-items:center;gap:5px;padding:6px 0;font-size:12px;display:inline-flex}.sidebar-preview-link:hover{color:#203f67;text-decoration:underline}.admin-header{height:auto;min-height:73px;padding-block:12px}.admin-header-right{flex-wrap:wrap;justify-content:flex-end;gap:12px}@media (max-width:600px){.admin-main .toolbar .control{flex:180px;min-width:0;max-width:none}.admin-main .toolbar>.btn{flex:0 auto;min-height:42px;margin-left:0}.admin-header-right{gap:8px}.admin-header-right select{flex:180px;width:auto;max-width:235px}.header-member-name{max-width:120px;font-size:12px}.header-member .avatar{width:27px;height:27px}.admin-sidebar.mobile-open{z-index:30;padding-top:24px;top:0}.admin-header .mobile-menu{z-index:31;background:#fff;position:relative}}.brand{white-space:normal}.brand>span:last-child{overflow-wrap:anywhere;min-width:0}.brand-icon{flex-shrink:0}.brand-logo{object-fit:contain;flex-shrink:0;width:42px;height:42px}.activity-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.card-banner.has-image>svg{display:none}.card-banner .badge{z-index:1}.branding-image-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px;display:grid}.image-upload{border:1px solid #dde3eb;border-radius:8px;min-width:0;margin-bottom:16px;padding:16px}.image-upload>label{margin-bottom:6px;font-size:15px;font-weight:600;display:block}.image-upload>small{color:#5c6878;margin-bottom:10px;font-size:12px;display:block}.image-upload-preview{background:#f6f8fb;border-radius:6px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:12px;display:flex}.image-upload-preview img{object-fit:contain;width:100%;height:130px}.image-upload-preview>span{overflow-wrap:anywhere;font-size:13px}.image-upload-preview .btn{margin-left:auto}@media (max-width:600px){.branding-image-grid{grid-template-columns:1fr}.brand-logo{width:34px;height:34px}.card-banner{height:160px}}.activity-card .card-bottom{justify-content:flex-end}.admin-shell .builder-card{background:#fff;border-color:#e4e9f0;box-shadow:0 3px 12px #19365312}.admin-shell .slot-row{align-items:center;gap:12px;padding:12px;display:flex}.admin-shell .slot-row>.control{flex:1;min-width:0;margin:0}.admin-shell .slot-row>.btn{flex-shrink:0;min-height:42px}.admin-shell fieldset:disabled{opacity:1}.admin-shell input:not([type=checkbox]):not([type=radio]):disabled,.admin-shell select:disabled,.admin-shell textarea:disabled{color:#536073;-webkit-text-fill-color:currentColor;opacity:1;cursor:not-allowed;background:#d8dfe8}.visually-hidden,.control label.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.public-banner{background:#fff;border:1px solid #dde3eb;border-radius:15px;overflow:hidden;box-shadow:0 6px 22px #19365308}.public-banner-image{width:100%;height:auto;display:block}.branding-image-item{min-width:0}.image-upload-extra{margin-top:10px}.image-upload-extra>.control{margin-bottom:0}.branding-text-grid>.control:first-child{grid-column:1/-1}.settings-fields{margin:0}.settings-save{justify-content:flex-end;margin-top:20px;display:flex}.draw-custom-image{object-fit:contain;width:min(100%,400px);height:400px;margin:30px auto;display:block}@media (max-width:600px){.settings-save>.btn{width:100%}.draw-custom-image{height:180px}}@media (min-width:601px) and (max-width:1100px){.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:601px) and (max-width:750px){.activity-grid{grid-template-columns:1fr}}@media (max-width:600px){.card-period{white-space:normal;align-items:flex-start}.card-period>svg{margin-top:1px}}.booking-panel{overflow-anchor:none;padding:0;overflow:hidden}.booking-layout{grid-template:"calendar filters quick""calendar filters schedule"1fr/15.5rem minmax(14rem,17rem) minmax(0,1fr);align-items:start;display:grid}.booking-calendar{background:#fff;border-right:1px solid #e1e8ee;grid-area:calendar;align-self:start;min-width:0;padding:1.25rem;position:static;top:auto}.booking-date{color:#174564;background:#edf5fa;border-radius:1.125rem;justify-content:space-between;padding:1.375rem;display:flex}.booking-date span,.booking-date small{font-size:.875rem;display:block}.booking-date strong{letter-spacing:-.06em;font-size:4.75rem;line-height:1.05;display:block}.booking-date small{color:#53758b;margin-top:.3125rem}.booking-month{justify-content:space-between;align-items:center;margin:1.375rem 0 .875rem;display:flex}.booking-month button{color:#315a73;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;display:inline-flex}.booking-days{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem;display:grid}.booking-days>span{color:#667b89;padding:.5625rem 0;font-size:.8125rem}.booking-days button{color:#27485e;cursor:pointer;background:0 0;border:0;border-radius:.625rem;min-height:2.75rem;font-size:.875rem}.booking-days button.selected{color:#fff;background:#15577c;font-weight:700}.booking-calendar>.btn{width:100%;min-height:2.75rem;margin-top:1.125rem}.booking-filters{border-right:1px solid #e1e8ee;grid-area:filters;min-width:0;padding:1.25rem}.booking-info-cards{grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem;display:grid}.booking-content .booking-info-cards:not(:empty){margin-bottom:1rem}.booking-category-card{color:#23495e;background:#edf6fb;border:1px solid #cbdfe9;border-radius:.875rem;padding:1rem;box-shadow:0 .25rem .875rem #1d48630d}.booking-category-card h3{color:#174e70;margin:0 0 .625rem;font-size:1.0625rem}.booking-category-card strong{color:#3c6680;font-size:.875rem}.booking-category-card p{white-space:pre-wrap;overflow-wrap:anywhere;margin:.25rem 0 .625rem;font-size:.875rem;line-height:1.5}.booking-category-card>div:last-child p{margin-bottom:0}.booking-venue-card{background:#f8fbfd;border:1px solid #dce7ee;border-radius:.875rem;padding:1rem;box-shadow:0 .25rem .875rem #1d48630d}.booking-venue-card h3{color:#174e70;margin:0 0 .75rem;font-size:1rem}.booking-venue-details{grid-template-columns:5.5rem minmax(0,1fr);gap:.5rem .4375rem;margin:0;font-size:.875rem;line-height:1.45;display:grid}.booking-venue-details dt{color:#5c7180}.booking-venue-details dd{overflow-wrap:anywhere;color:#2d4d60;margin:0}.booking-venue-details .multiline{white-space:pre-wrap}.booking-content{grid-area:schedule;min-width:0;padding:0 1.25rem 1.25rem}.booking-content>.notice{margin-bottom:1rem}.booking-quick-action{grid-area:quick;justify-content:flex-end;min-width:0;padding:1.25rem 1.25rem .75rem;display:flex}.booking-search-toggle{white-space:nowrap;min-height:2.75rem}.booking-search-panel{min-width:0}.booking-search-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:1rem;display:flex}.booking-search-heading h3{color:#174e70;margin:0;font-size:1rem}.booking-search-heading small,.booking-search-heading span{color:#5d7584;font-size:.875rem}.booking-search-fields{grid-template-columns:1.25fr 1fr 1fr;align-items:end;gap:.75rem;min-width:0;display:grid}.booking-search-fields .control{min-width:0;margin:0}.booking-search-fields .control>label{margin-bottom:.25rem}.booking-search-fields .control input:not([type=checkbox]):not([type=radio]),.booking-search-fields .control select{width:100%;min-width:0;height:42px;min-height:42px;padding:8px 10px;font-size:1rem;line-height:1.4;display:block}.booking-search-fields input[type=date]::-webkit-datetime-edit{padding:0}.booking-search-fields input[type=date]::-webkit-date-and-time-value{text-align:left}.booking-search-categories,.booking-search-options{border:0;min-width:0;margin:1rem 0;padding:0}.booking-search-categories{margin:.625rem 0 0}.booking-search-categories>div{flex-wrap:wrap;gap:.375rem;display:flex}.booking-search-subcategories{border-top:1px solid #d7e2ea;padding-top:.625rem}.booking-search-categories label{cursor:pointer;background:#fff;border:1px solid #d7e2ea;border-radius:.375rem;align-items:center;gap:.375rem;min-height:2rem;padding:.25rem .5rem;font-size:.8125rem;line-height:1.4;display:flex}.booking-search-categories label:has(input:checked){color:#174e70;background:#e8f2f8;border-color:#4486ad}.booking-search-panel>.notice{margin-top:1rem}.booking-search-results{border-top:1px solid #d7e2ea;margin-top:1rem;padding-top:1rem}.booking-search-options{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:.75rem;display:grid}.booking-search-options button{font:inherit;text-align:left;cursor:pointer;overflow-wrap:anywhere;background:#fff;border:1px solid #d7e2ea;border-radius:.75rem;align-items:center;min-width:0;min-height:44px;padding:.75rem 1rem;display:flex}.booking-search-options button:hover{border-color:#4486ad;box-shadow:0 0 0 .125rem #d9eaf4}.booking-search-options strong{color:#23475c;font-size:.9375rem}.booking-search-categories input{accent-color:#174e70;width:.875rem;height:.875rem;margin:0}.booking-quick-confirm{color:#23475c;background:#f0f6f9;border-radius:.75rem;gap:.5rem;padding:1rem;display:grid}.booking-quick-confirm span{font-size:.9375rem}.booking-search-panel :focus-visible{outline-offset:3px;outline:2px solid #174e70}@media (max-width:34.375rem){.booking-search-categories label{min-height:2.25rem}.booking-search-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.booking-search-fields>.control:first-child{grid-column:1/-1}.booking-search-heading{align-items:flex-start}.booking-search-options{grid-template-columns:minmax(0,1fr)}}.booking-tabs,.booking-venues{flex-wrap:wrap;gap:.5rem;display:flex}.booking-tabs button{color:#3c5c70;cursor:pointer;background:#fff;border:1px solid #d7e2ea;border-radius:2rem;min-height:2.75rem;padding:.5625rem .9375rem;font-size:.9375rem}.booking-venues{margin:.9375rem 0 1.25rem}.booking-venues button{text-align:left;color:#23475c;cursor:pointer;background:#fff;border:1px solid #dae5eb;border-radius:.8125rem;min-width:10rem;min-height:2.75rem;padding:.75rem .9375rem;font-size:.9375rem}.booking-filters .booking-venues button{overflow-wrap:anywhere;width:100%;min-width:0}.booking-slot-list{border:1px solid #e2e9ee;border-radius:.75rem;grid-template-rows:repeat(48,minmax(2.75rem,auto));grid-template-columns:4.25rem minmax(0,1fr);display:grid;overflow:hidden}.booking-slot-list.booking-slot-count-1{grid-template-rows:repeat(1,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-2{grid-template-rows:repeat(2,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-3{grid-template-rows:repeat(3,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-4{grid-template-rows:repeat(4,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-5{grid-template-rows:repeat(5,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-6{grid-template-rows:repeat(6,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-7{grid-template-rows:repeat(7,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-8{grid-template-rows:repeat(8,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-9{grid-template-rows:repeat(9,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-10{grid-template-rows:repeat(10,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-11{grid-template-rows:repeat(11,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-12{grid-template-rows:repeat(12,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-13{grid-template-rows:repeat(13,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-14{grid-template-rows:repeat(14,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-15{grid-template-rows:repeat(15,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-16{grid-template-rows:repeat(16,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-17{grid-template-rows:repeat(17,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-18{grid-template-rows:repeat(18,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-19{grid-template-rows:repeat(19,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-20{grid-template-rows:repeat(20,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-21{grid-template-rows:repeat(21,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-22{grid-template-rows:repeat(22,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-23{grid-template-rows:repeat(23,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-24{grid-template-rows:repeat(24,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-25{grid-template-rows:repeat(25,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-26{grid-template-rows:repeat(26,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-27{grid-template-rows:repeat(27,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-28{grid-template-rows:repeat(28,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-29{grid-template-rows:repeat(29,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-30{grid-template-rows:repeat(30,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-31{grid-template-rows:repeat(31,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-32{grid-template-rows:repeat(32,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-33{grid-template-rows:repeat(33,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-34{grid-template-rows:repeat(34,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-35{grid-template-rows:repeat(35,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-36{grid-template-rows:repeat(36,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-37{grid-template-rows:repeat(37,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-38{grid-template-rows:repeat(38,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-39{grid-template-rows:repeat(39,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-40{grid-template-rows:repeat(40,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-41{grid-template-rows:repeat(41,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-42{grid-template-rows:repeat(42,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-43{grid-template-rows:repeat(43,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-44{grid-template-rows:repeat(44,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-45{grid-template-rows:repeat(45,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-46{grid-template-rows:repeat(46,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-47{grid-template-rows:repeat(47,minmax(2.75rem,auto))}.booking-slot-list.booking-slot-count-48{grid-template-rows:repeat(48,minmax(2.75rem,auto))}.booking-slot-time{font-variant-numeric:tabular-nums;color:#455e6d;background:#f8fafb;border-bottom:1px solid #ecf0f3;grid-column:1;align-items:center;padding:0 .625rem;font-size:.875rem;font-weight:650;display:flex}.booking-slot-time.past{color:#7c8991;background:#f5f7f8}.booking-slot-free,.booking-slot-past{border:0;border-bottom:1px solid #ecf0f3;grid-column:2;min-width:0}.booking-slot-free{cursor:pointer;text-align:right;background:#fff;min-height:2.75rem;padding:0 .875rem;position:relative}.booking-slot-free:after{content:"＋ 借用";color:#286d90;opacity:0;font-size:.875rem;transition:opacity .15s}.booking-slot-free:hover:after{opacity:1}.booking-slot-free:focus-visible:after{opacity:1}.booking-slot-past{background:#f5f7f8}.booking-slot-reserved{z-index:1;color:#174f6f;background:#dceef6;border-bottom:1px solid #a9cfdf;border-left:.25rem solid #2981aa;grid-column:2;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem;min-width:0;padding:0 .25rem 0 .5rem;display:grid}.booking-reserved-details{flex-direction:column;min-width:0;display:flex}.booking-reserved-details strong{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;line-height:1.1;display:block;overflow:hidden}.booking-reserved-details small,.booking-reserved-details p{text-overflow:ellipsis;white-space:nowrap;color:#395c70;margin:0;font-size:.75rem;line-height:1.1;display:block;overflow:hidden}.booking-reserved-details p{color:#23536d}.booking-slot-reserved.multi p{white-space:normal;overflow-wrap:anywhere;max-height:3.6em}.booking-reserved-actions{flex:none;align-items:center;gap:.125rem;display:flex}.booking-reserved-actions .btn{border-radius:.375rem;min-width:2.75rem;min-height:2.75rem;padding:0 .375rem;font-size:.9375rem;line-height:1.2}.booking-reserved-actions .btn:focus-visible{outline-offset:-.125rem;outline:.125rem solid #174e70}.booking-row-start-0{grid-row-start:1}.booking-row-end-0{grid-row-end:1}.booking-row-start-1{grid-row-start:2}.booking-row-end-1{grid-row-end:2}.booking-row-start-2{grid-row-start:3}.booking-row-end-2{grid-row-end:3}.booking-row-start-3{grid-row-start:4}.booking-row-end-3{grid-row-end:4}.booking-row-start-4{grid-row-start:5}.booking-row-end-4{grid-row-end:5}.booking-row-start-5{grid-row-start:6}.booking-row-end-5{grid-row-end:6}.booking-row-start-6{grid-row-start:7}.booking-row-end-6{grid-row-end:7}.booking-row-start-7{grid-row-start:8}.booking-row-end-7{grid-row-end:8}.booking-row-start-8{grid-row-start:9}.booking-row-end-8{grid-row-end:9}.booking-row-start-9{grid-row-start:10}.booking-row-end-9{grid-row-end:10}.booking-row-start-10{grid-row-start:11}.booking-row-end-10{grid-row-end:11}.booking-row-start-11{grid-row-start:12}.booking-row-end-11{grid-row-end:12}.booking-row-start-12{grid-row-start:13}.booking-row-end-12{grid-row-end:13}.booking-row-start-13{grid-row-start:14}.booking-row-end-13{grid-row-end:14}.booking-row-start-14{grid-row-start:15}.booking-row-end-14{grid-row-end:15}.booking-row-start-15{grid-row-start:16}.booking-row-end-15{grid-row-end:16}.booking-row-start-16{grid-row-start:17}.booking-row-end-16{grid-row-end:17}.booking-row-start-17{grid-row-start:18}.booking-row-end-17{grid-row-end:18}.booking-row-start-18{grid-row-start:19}.booking-row-end-18{grid-row-end:19}.booking-row-start-19{grid-row-start:20}.booking-row-end-19{grid-row-end:20}.booking-row-start-20{grid-row-start:21}.booking-row-end-20{grid-row-end:21}.booking-row-start-21{grid-row-start:22}.booking-row-end-21{grid-row-end:22}.booking-row-start-22{grid-row-start:23}.booking-row-end-22{grid-row-end:23}.booking-row-start-23{grid-row-start:24}.booking-row-end-23{grid-row-end:24}.booking-row-start-24{grid-row-start:25}.booking-row-end-24{grid-row-end:25}.booking-row-start-25{grid-row-start:26}.booking-row-end-25{grid-row-end:26}.booking-row-start-26{grid-row-start:27}.booking-row-end-26{grid-row-end:27}.booking-row-start-27{grid-row-start:28}.booking-row-end-27{grid-row-end:28}.booking-row-start-28{grid-row-start:29}.booking-row-end-28{grid-row-end:29}.booking-row-start-29{grid-row-start:30}.booking-row-end-29{grid-row-end:30}.booking-row-start-30{grid-row-start:31}.booking-row-end-30{grid-row-end:31}.booking-row-start-31{grid-row-start:32}.booking-row-end-31{grid-row-end:32}.booking-row-start-32{grid-row-start:33}.booking-row-end-32{grid-row-end:33}.booking-row-start-33{grid-row-start:34}.booking-row-end-33{grid-row-end:34}.booking-row-start-34{grid-row-start:35}.booking-row-end-34{grid-row-end:35}.booking-row-start-35{grid-row-start:36}.booking-row-end-35{grid-row-end:36}.booking-row-start-36{grid-row-start:37}.booking-row-end-36{grid-row-end:37}.booking-row-start-37{grid-row-start:38}.booking-row-end-37{grid-row-end:38}.booking-row-start-38{grid-row-start:39}.booking-row-end-38{grid-row-end:39}.booking-row-start-39{grid-row-start:40}.booking-row-end-39{grid-row-end:40}.booking-row-start-40{grid-row-start:41}.booking-row-end-40{grid-row-end:41}.booking-row-start-41{grid-row-start:42}.booking-row-end-41{grid-row-end:42}.booking-row-start-42{grid-row-start:43}.booking-row-end-42{grid-row-end:43}.booking-row-start-43{grid-row-start:44}.booking-row-end-43{grid-row-end:44}.booking-row-start-44{grid-row-start:45}.booking-row-end-44{grid-row-end:45}.booking-row-start-45{grid-row-start:46}.booking-row-end-45{grid-row-end:46}.booking-row-start-46{grid-row-start:47}.booking-row-end-46{grid-row-end:47}.booking-row-start-47{grid-row-start:48}.booking-row-end-47{grid-row-end:48}.booking-row-start-48{grid-row-start:49}.booking-row-end-48{grid-row-end:49}.booking-form{--form-section-gap:1rem;--form-field-gap:.75rem;--form-label-gap:.375rem;--form-dependent-gap:.5rem;gap:var(--form-section-gap);display:grid}.booking-form .control{min-width:0;margin:0}.booking-form .control>label:not(.visually-hidden){margin-bottom:var(--form-label-gap)}.booking-form .control input:not([type=checkbox]):not([type=radio]),.booking-form .control select{height:42px;min-height:42px;padding:8px 10px;line-height:1.4}.booking-form .booking-time-fields{gap:var(--form-field-gap)}.booking-form .choice{cursor:pointer;min-height:2rem;margin:0;line-height:1.4}.booking-form>.notice,.booking-form>p{margin:0}.booking-recurrence{gap:var(--form-dependent-gap);display:grid}.booking-form-summary{background:#f0f6f9;border-radius:.75rem;grid-template-columns:5.625rem 1fr;gap:.625rem;padding:1.0625rem;display:grid}.booking-form-summary span{color:#5d7584}.booking-form .control textarea{width:100%;min-height:5.625rem}.booking-time-fields{grid-template-columns:1fr 1fr;gap:.875rem;display:grid}.booking-repeat{align-items:start;gap:var(--form-field-gap);border:1px solid #dce8ef;border-radius:.75rem;grid-template-columns:minmax(5rem,.75fr) minmax(13rem,1.7fr) minmax(0,2.7fr);padding:.75rem;display:grid}.booking-repeat .control,.booking-repeat fieldset{min-width:0;margin:0}.booking-repeat .control>label:not(.visually-hidden),.booking-repeat legend{margin:0 0 .375rem;padding:0;font-size:.875rem;font-weight:500;line-height:1.4}.booking-repeat .control input:not([type=checkbox]):not([type=radio]),.booking-repeat .control select{width:100%;min-width:0;height:42px;min-height:42px;padding:8px;font-size:.875rem;line-height:1.4;display:block}.booking-repeat input[type=date]::-webkit-datetime-edit{padding:0}.booking-repeat-range>div{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.375rem;display:grid}.booking-repeat-range>div>span{color:#5d7584}.booking-weekdays>div{grid-template-columns:repeat(7,minmax(0,1fr));gap:.1875rem;min-height:42px;display:grid}.booking-weekdays label{cursor:pointer;border:1px solid #dae5eb;border-radius:.375rem;flex-direction:column;justify-content:center;align-items:center;gap:.125rem;min-width:0;padding:.1875rem .125rem;font-size:.75rem;line-height:1;display:flex}.booking-weekdays label:has(input:checked){color:#174e70;background:#e8f2f8;border-color:#4486ad}.booking-weekdays input{width:.875rem;height:.875rem;margin:0}@media (max-width:47rem){.booking-repeat{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.booking-repeat-range{grid-column:1/-1}}@media (max-width:34.375rem){.booking-repeat{grid-template-columns:minmax(0,1fr)}.booking-repeat .control input:not([type=checkbox]):not([type=radio]),.booking-repeat .control select{font-size:1rem}.booking-repeat-range>div{grid-template-columns:minmax(0,1fr)}.booking-repeat-range>div>span{display:none}.booking-repeat-range .control{position:relative}.booking-repeat-range .control>label.visually-hidden{clip:auto;clip-path:none;white-space:normal;color:#5d7584;width:auto;height:auto;margin:0 0 .25rem;font-size:.8125rem;position:static}.booking-weekdays>div{min-height:44px}}@media (hover:none){.booking-slot-free:after{opacity:.6}}@media (min-width:53.125rem) and (max-width:68.75rem){.booking-layout{grid-template:"calendar quick""calendar filters""calendar schedule"1fr/15.5rem minmax(0,1fr)}.booking-filters{border-right:0;padding-top:0}.booking-filters .booking-venues button{flex:10rem;width:auto}}@media (max-width:53.125rem){.booking-layout{grid-template:"calendar""quick""filters""schedule"/minmax(0,1fr)}.booking-calendar{border-bottom:1px solid #e1e8ee;border-right:0;position:static}.booking-filters{border-right:0;padding-top:0}.booking-filters .booking-venues button{flex:10rem;width:auto}.booking-content{padding-top:0}.booking-date strong{font-size:3.75rem}}@media (max-width:34.375rem){.booking-time-fields{grid-template-columns:1fr}.booking-slot-list{grid-template-columns:3.75rem minmax(0,1fr)}.booking-slot-time{padding:0 .4375rem}.booking-slot-reserved{padding:0 .125rem 0 .375rem}.booking-reserved-actions .btn{padding:0 .125rem;font-size:.875rem}}.venue-subnav{border-bottom:1px solid #dce5eb;gap:.5rem;margin:0 0 1rem;display:flex;overflow-x:auto}.venue-subnav button{color:#456176;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:.1875rem solid #0000;min-height:2.75rem;padding:.75rem 1rem;font-size:1rem}.venue-subnav button.active{color:#164c70;border-color:#1b6489;font-weight:700}.venue-category-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.venue-category-header h2{margin:0 0 .375rem;font-size:1.25rem}.venue-category-header p{margin:0}.venue-category-manager>.notice{margin-bottom:1.25rem}.venue-category-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1rem;margin-top:1rem;display:grid}.venue-category-card{background:#fff;border:1px solid #dbe4ea;border-radius:.75rem;padding:1.125rem;box-shadow:0 .25rem 1rem #1e3a5010}.venue-category-card-heading,.venue-category-card li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.venue-category-card h3{margin:0;font-size:1.125rem}.venue-category-card ul{margin:1rem 0;padding:0;list-style:none}.venue-category-card li{border-top:1px solid #e6edf2;min-height:3.25rem;padding:.375rem 0;font-size:1rem}.venue-category-actions{flex-wrap:wrap;justify-content:flex-end;gap:.25rem;margin-left:auto;display:flex}.venue-category-actions .btn{justify-content:center;align-items:center;width:2.75rem;min-width:2.75rem;min-height:2.75rem;padding:0;display:inline-flex}.venue-category-order{background:#f7f9fc;border:1px solid #d7e2ea;border-radius:.5rem;flex-wrap:nowrap;align-self:center;gap:0;display:inline-flex;overflow:hidden}.venue-category-order .btn{border:0;border-radius:0;width:2rem;min-width:2rem;min-height:2.25rem}.venue-category-order .btn+.btn{border-left:1px solid #d7e2ea}.venue-category-order .btn:focus-visible{outline-offset:-3px}.venue-category-description{color:#46667b;white-space:pre-wrap;overflow-wrap:anywhere;margin:.75rem 0 0;font-size:.875rem;line-height:1.5}.venue-category-picker{border:1px solid #dbe4ea;border-radius:.75rem;margin:0 0 1.25rem;padding:1rem}.venue-category-picker legend{padding:0 .375rem;font-weight:600}.venue-category-picker p{margin:.625rem 0 0}.venue-category-group{border-bottom:1px solid #edf1f4;padding:.625rem 0}.venue-category-group:last-of-type{border:0}.venue-category-group>div{flex-wrap:wrap;gap:.25rem 1.25rem;margin-top:.25rem;display:flex}.venue-category-group .choice{margin:.375rem 0;font-size:1rem}.booking-subcategories button{background:#f2f7fa;border-radius:.625rem}.booking-subcategories button.active{color:#16486a;background:#dcecf5;border-color:#3d789b;font-weight:700}@media (max-width:600px){.venue-category-header{flex-direction:column}.venue-category-actions .btn{font-size:.875rem}.venue-category-card li{align-items:flex-start}.venue-category-card li span{padding-top:.625rem}}.recent-announcements{margin-bottom:1.5rem}.recent-announcements .section-heading h2{font-size:1.125rem}.recent-announcements .section-heading .btn{min-height:2.75rem;font-size:.9375rem}.admin-menu-popup{z-index:60;transform-origin:100% 0;background:#f7f9fc;border:1px solid #e3e8ef;border-radius:.875rem;width:17.5rem;max-width:calc(100vw - 2rem);max-height:36rem;padding:.5rem;animation:.16s ease-out admin-menu-enter;overflow-y:auto;box-shadow:0 .5rem 1.5rem #19365326}.admin-menu-item{color:#2c4359;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:.5rem;outline:none;align-items:center;gap:.75rem;min-height:3rem;padding:.625rem .875rem;font-size:1rem;line-height:1.4;display:flex}.admin-menu-item>span:not(.visually-hidden){flex:1}.admin-menu-item>svg{flex-shrink:0;width:1.25rem;height:1.25rem}.admin-menu-item:focus-visible{color:#193653;background:#e3ebf4}.admin-menu-item.active{color:#193653;background:#e8edf5;font-weight:600}.admin-menu-item:focus-visible{box-shadow:inset 0 0 0 .125rem #7490af}.admin-menu-separator{background:#dce4ed;height:1px;margin:.375rem .75rem}@keyframes admin-menu-enter{0%{opacity:0;transform:translateY(-.25rem)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (min-width:601px){.admin-menu-popup{display:none}}@media (max-width:600px){.admin-header-right{grid-template-columns:minmax(0,1fr) 2.75rem 2.75rem;gap:.375rem .5rem;width:100%;display:grid}.admin-header-right .header-member{grid-area:1/1;min-height:2.75rem}.admin-header-right .header-member-name{max-width:none;font-size:.9375rem}.admin-header-right>select{grid-area:2/1/auto/-1;width:100%;max-width:none;min-height:2.75rem;font-size:.9375rem}.admin-header-right>.icon-btn{grid-area:1/2;width:2.75rem;height:2.75rem}.admin-header-right>.mobile-menu{grid-column:3;display:inline-flex}.admin-header-right>.mobile-menu>svg{width:1.375rem;height:1.375rem}}.activity-form-settings{gap:1rem;display:grid}.activity-form-settings .builder-section{border:0;min-width:0;margin:0;padding:0}.activity-form-settings .builder-section+.builder-section{border-top:1px solid #dde3eb;padding-top:1rem}.activity-form-settings .builder-heading{margin-bottom:.75rem}.activity-form-settings .builder-section>.notice{margin:0 0 .75rem;padding:.625rem .75rem;font-size:.8125rem}.activity-form-settings .slot-row{margin-bottom:.5rem;padding:.75rem}.activity-form-settings .field-builder-card{gap:.5rem;margin:0 0 .75rem;padding:.75rem;display:grid}.field-builder-core{grid-template-columns:minmax(0,1fr) 9rem 8.5rem 2.25rem 2.25rem;align-items:center;gap:.5rem;display:grid}.field-builder-card .control{min-width:0;margin:0}.field-builder-card .control input:not([type=checkbox]):not([type=radio]),.field-builder-card .control select{width:100%;min-width:0;height:42px;min-height:42px;padding:8px 10px;font-size:.875rem;line-height:1.4;display:block}.field-builder-core>.btn{width:2.25rem;min-width:2.25rem;min-height:42px;padding:0}.field-required{cursor:pointer;justify-content:center;align-items:center;min-height:42px;margin:0;display:flex}.field-required input{margin:0}.field-builder-detail{align-items:center;gap:.5rem;min-width:0;display:flex}.field-builder-detail>.control{flex:1;min-width:0}.field-builder-detail>.btn{flex-shrink:0;min-height:42px}.field-file-size{background:#f2f4f7;border-radius:7px;flex:0 0 6.5rem;align-items:center;min-width:0;display:flex}.field-file-size>.control{flex:1;min-width:0}.field-file-size>span{color:#5c6878;padding-right:.5rem;font-size:.75rem}.field-file-size .control input{padding-right:0}.field-format-options{flex-wrap:wrap;gap:.5rem;display:flex}.field-format-options .choice{background:#f2f4f7;border-radius:.375rem;min-height:2.75rem;margin:0;padding:.375rem .625rem}@media (max-width:600px){.field-builder-core{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 2rem 2rem;gap:.375rem}.field-builder-core>.control:first-child{grid-column:1/-1}.field-builder-core>.btn{width:2rem;min-width:2rem}.field-builder-card .control input:not([type=checkbox]):not([type=radio]),.field-builder-card .control select{font-size:1rem}.field-builder-detail{flex-wrap:wrap}.field-builder-detail>.control{flex-basis:100%}.activity-form-settings .builder-heading>.btn{padding:.5rem .625rem;font-size:.875rem}}.admin-menu-item{text-align:left;background:0 0;border:0;width:100%;font-family:inherit;text-decoration:none}.admin-menu-item:hover{color:#193653;background:#e3ebf4}.connector-error{overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:12px;min-width:0;font-size:14px;display:flex}.connector-error .btn{white-space:normal;text-align:left;max-width:100%}.connector-error .btn svg{flex-shrink:0;width:16px;height:16px}.announcement-list{table-layout:fixed;background:0 0;border:0;border-radius:0;font-size:15px}.announcement-list .announcement-date-column{width:120px}.announcement-list th{background:0 0;border-bottom:1px solid #dde3eb;padding:8px 12px;font-size:13px;font-weight:500}.announcement-list td{border-bottom:1px solid #dde3eb;min-width:0;padding:0 12px}.announcement-list td:first-child{vertical-align:top;color:#5c6878;font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:12px;font-size:13px}.announcement-title{color:#193653;width:100%;min-height:44px;font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;border-radius:0;padding:10px 0;font-weight:500;line-height:1.5;display:block}.announcement-title:hover{color:#203f67;text-decoration:underline}.announcement-title:focus-visible{outline-offset:2px;outline:2px solid #31557e}@media (max-width:600px){.announcement-list .announcement-date-column{width:100px}.announcement-list th,.announcement-list td{padding-left:6px;padding-right:6px}.announcement-list td:first-child{font-size:12px}}.field-builder-heading p{margin:0;line-height:1.5}.field-builder-heading .btn{flex-shrink:0}.field-builder-detail .field-purpose{flex:0 0 8rem;min-width:0}.field-slot-purpose{white-space:nowrap;align-items:center;gap:6px;min-height:42px;font-size:13px;display:flex}.field-slot-purpose input{accent-color:#203f67;width:16px;height:16px;margin:0}.activity-form-settings>.field-builder{border-top:0;margin-top:0;padding-top:0}@media (max-width:600px){.field-builder-heading{align-items:flex-start}.field-builder-heading p{font-size:12px}.field-builder-detail .field-purpose{flex:1 0 7rem}}.draw-session-form{gap:16px;min-width:0;display:grid}.draw-session-form .control{min-width:0;margin:0}.draw-session-form fieldset{border:1px solid #dde3eb;border-radius:7px;min-width:0;margin:0;padding:12px}.draw-session-form legend{padding:0 4px;font-size:15px;font-weight:500}.draw-session-form p{margin:8px 0 0}.draw-session-options{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.draw-session-options>.control{flex:1;min-width:180px}.draw-condition-fields>div{flex-wrap:wrap;gap:8px 16px;display:flex}.draw-condition-fields .choice{min-height:32px;margin:0}.draw-fairness-fields{grid-template-columns:1.1fr 1fr .7fr 1fr;align-items:end;gap:12px;display:grid}.draw-column-settings summary{cursor:pointer;color:#5c6878;font-size:14px}.draw-column-settings>div{gap:8px;margin-top:12px;display:grid}.draw-column-row{grid-template-columns:minmax(0,1fr) 90px;align-items:center;gap:8px;font-size:14px;display:grid}.draw-column-row>span{overflow-wrap:anywhere}.draw-session-form .builder-heading{margin:0}.draw-item-editor-fields{grid-template-columns:minmax(0,1.4fr) minmax(0,1.6fr) 80px 80px 36px;align-items:end;gap:8px;display:grid}.draw-item-editor-fields:not(:has(select)){grid-template-columns:minmax(0,1fr) 80px 80px 36px}.draw-item-editor-fields>.btn{min-height:42px;padding:6px}.session-rule{flex-wrap:wrap}@media (max-width:600px){.draw-fairness-fields{grid-template-columns:1fr}.draw-column-row{grid-template-columns:minmax(0,1fr) 90px;gap:6px}:is(.draw-item-editor-fields,.draw-item-editor-fields:not(:has(select))){grid-template-columns:1fr 1fr 36px}.draw-item-editor-fields>.control:first-child{grid-column:1/-1}.draw-item-editor-fields:has(select)>.control:nth-child(2){grid-column:1/-1}}.result-columns.single{grid-template-columns:minmax(0,1fr)}.result-person{align-items:flex-start;min-width:0}.result-person-fields{text-align:left;flex:1;grid-template-columns:minmax(64px,32%) minmax(0,1fr);gap:4px 10px;min-width:0;margin:0;font-size:14px;line-height:1.5;display:grid}.result-person-fields dt{color:#657186;overflow-wrap:anywhere}.result-person-fields dd{color:#293548;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-weight:500}.draw-screen .result-person-fields{font-size:16px}.list-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.admin-main .list-toolbar>.toolbar{flex:1;min-width:0;margin:0}.list-export-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;max-width:100%;margin-left:auto;display:flex}.list-export-actions .btn{min-height:36px;padding:7px 12px;font-size:14px}.registration-table td{white-space:pre-wrap;overflow-wrap:anywhere;max-width:320px}.pager{flex-wrap:wrap}.pager>button{flex-shrink:0}.session-navigation{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.session-navigation-bottom{border-top:1px solid #dde3eb;justify-content:flex-start;margin:1.5rem 0 0;padding-top:1rem}@media (max-width:600px){.list-toolbar>.toolbar{order:1;flex-basis:100%!important}.list-export-actions{order:0}.list-export-actions .btn{min-height:42px}}.joint-form-controls{border:0;gap:16px;min-width:0;margin:0;padding:0;display:grid}.joint-unit-picker{border:1px solid #dde3eb;border-radius:7px;min-width:0;padding:16px}.joint-unit-options{flex-wrap:wrap;gap:8px 24px;display:flex}.activity-batch-editor{gap:16px;min-width:0;display:grid}.activity-batch-editor .builder-heading{margin:0}.activity-batch-editor .builder-card{gap:16px;display:grid}.batch-controls{gap:16px;min-width:0;display:grid}@media (min-width:850px){.batch-controls{grid-template-columns:minmax(95px,1fr) minmax(190px,1.7fr) minmax(190px,1.7fr) 80px auto;align-items:end;gap:8px}.batch-controls>.form-grid{display:contents}.batch-controls .control{min-width:0;margin:0}.batch-controls input,.batch-controls select{min-width:0;padding:8px;font-size:14px}.batch-identity>.control:first-child{grid-area:1/1}.batch-identity>.control:last-child{grid-area:1/4}.batch-times>.control:first-child{grid-area:1/2}.batch-times>.control:last-child{grid-area:1/3}.batch-delete{grid-area:1/5}.batch-delete>.btn{min-height:42px}}.registration-form-controls{border:0;min-width:0;margin:0;padding:0}@media (min-width:851px){.joint-catalog-filter{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(160px,1.2fr) auto;align-items:center;display:grid}}.catalog-share-actions{white-space:nowrap;flex:none;align-items:center;gap:6px;margin-left:auto;display:flex}.catalog-share-actions .btn{height:var(--query-control-height);min-height:var(--query-control-height);padding:var(--query-control-padding);border-radius:var(--query-control-radius);font-size:14px}.catalog-share-actions .filter-clear-button{width:var(--query-control-height);flex:none;padding:0}@media (max-width:600px){.joint-catalog-filter>.control{flex:calc(50% - 4px)}.catalog-share-actions{flex-basis:100%;justify-content:flex-end}}.catalog-results-summary{flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0 0 12px;display:flex}.catalog-results-summary .data-count{margin:0}.share-inline{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.btn.share-url-button{gap:4px;min-height:30px;padding:4px 6px;font-size:12px}.catalog-share-feedback{color:#39704a;font-size:12px}.registration-topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin-bottom:16px;display:flex}.registration-topbar .back-link{margin:0}.activity-card .card-bottom{justify-content:flex-end;gap:8px}@media (max-width:600px){.activity-grid,.skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.activity-card{border-radius:9px;flex-direction:column;min-width:0;display:flex}.activity-card .card-banner{flex:none;height:92px;padding:10px}.activity-card .card-banner>svg{width:32px;height:32px;bottom:12px;right:12px}.activity-card .card-banner .badge{padding:3px 6px;font-size:11px;bottom:8px;left:10px}.activity-card .card-body{flex-direction:column;flex:1;min-width:0;padding:12px;display:flex}.activity-card .card-body h3{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;min-height:45px;margin:6px 0 8px;font-size:15px;line-height:1.5;display:-webkit-box;overflow:hidden}.activity-card .location{align-items:flex-start;gap:3px;font-size:11px;line-height:1.5}.activity-card .location span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.activity-card .card-period{white-space:normal;align-items:flex-start;gap:0;margin-top:auto;padding-top:8px}.activity-card .card-period>svg,.activity-card .card-period .card-period-label{display:none}.activity-card .card-period .card-period-dates{overflow-wrap:anywhere;font-size:11px;line-height:1.6}.activity-card .card-bottom{margin-top:10px}.activity-card .card-bottom .btn{gap:4px;width:100%;min-height:34px;padding:6px;font-size:12px}.activity-card .card-bottom .btn svg{width:14px;height:14px}}.registration-aside .joint-registration-note{margin-top:12px}.admin-page-title .admin-refresh-button{width:44px;min-width:44px;height:44px;padding:0}.list-cell-label,.mobile-list-detail{display:none}@media (max-width:767px){.admin-main .responsive-table-scroll{overflow:visible}.admin-main .responsive-table{font-size:14px;display:block}.responsive-table>thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.responsive-table>tbody{display:block}.admin-main .responsive-table>tbody>tr{background:0 0;border-bottom:1px solid #e7eaef;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;padding:16px 0;display:grid}.admin-main .responsive-table>tbody>tr:last-child{border-bottom:0;padding-bottom:0}.admin-main .responsive-table>tbody>tr>td{white-space:normal;overflow-wrap:anywhere;border:0;min-width:0;max-width:none;padding:0;line-height:1.6}.responsive-table .list-title{grid-area:1/1;align-self:center;font-size:15px;font-weight:600}.responsive-table .list-title strong{font-size:15px;font-weight:600}.admin-main .responsive-table>tbody>tr>.list-status{text-align:right;grid-area:1/2;align-self:start;max-width:112px}.responsive-table .list-status .badge{white-space:normal;text-align:left}.admin-main .responsive-table .list-meta{color:#657186;grid-column:1/-1;grid-template-columns:78px minmax(0,1fr);gap:10px;display:grid}.list-cell-label{color:#657186;font-size:13px;display:block}.list-cell-value{overflow-wrap:anywhere;min-width:0}.responsive-table td small{margin-top:2px;font-size:13px}.mobile-list-detail{gap:4px;margin-top:5px;display:grid}.admin-main .responsive-table .list-actions{border-top:1px solid #eef2f7;grid-column:1/-1;margin-top:2px;padding-top:9px}.responsive-table .row-actions{justify-content:flex-end;gap:4px}.responsive-table .list-actions .btn{min-width:44px;min-height:44px;padding:8px 10px;font-size:13px}.responsive-table .publish-switch{min-height:44px}.venue-category-card h3,.venue-category-card li>span{overflow-wrap:anywhere;min-width:0}.venue-category-card h3{flex:140px}.venue-category-card li>span{flex:100px}.venue-category-order .btn{width:44px;min-width:44px;min-height:44px}}.registration-table-hint{margin:8px 0 12px;font-size:.8125rem}.registration-table-scroll{isolation:isolate;overscroll-behavior-x:contain;max-width:100%}.registration-table-scroll:focus-visible{outline-offset:3px;outline:2px solid #203f67}.registration-table{table-layout:auto;width:max-content;min-width:100%}.registration-table th,.registration-table td{white-space:nowrap;overflow-wrap:normal;vertical-align:middle}.registration-table td{max-width:none}.registration-cell-value{text-overflow:ellipsis;white-space:nowrap;max-width:24rem;display:block;overflow:hidden}.registration-table .row-actions{flex-wrap:nowrap}.registration-table .registration-number-cell,.registration-table .registration-actions-cell{z-index:1;background:#fff;position:sticky}.registration-table .registration-number-cell{min-width:112px;left:0;box-shadow:2px 0 #e7eaef}.registration-table .registration-actions-cell{right:0;box-shadow:-2px 0 #e7eaef}.registration-table th.registration-number-cell,.registration-table th.registration-actions-cell{z-index:2;background:#eef2f7}.registration-table tbody tr:hover .registration-number-cell,.registration-table tbody tr:hover .registration-actions-cell{background:#f2f5fb}.registration-record-detail dd{white-space:pre-wrap;overflow-wrap:anywhere}@media (max-width:600px){.registration-cell-value{max-width:18rem}.registration-table .registration-actions-cell{box-shadow:none;position:static}.registration-table .registration-number-cell{min-width:112px}}.admin-mobile-brand{display:none}.admin-menu-logout{color:#812f3b}@media (max-width:600px){.admin-header{grid-template-columns:minmax(0,1fr) 32px 40px;gap:8px;padding:10px 14px;display:grid}.admin-mobile-brand{grid-area:1/1;min-width:0;display:block}.admin-mobile-brand .brand{gap:8px;font-size:15px;line-height:1.3}.admin-mobile-brand .brand-logo,.admin-mobile-brand .brand-icon{width:32px;height:32px}.admin-mobile-brand .brand-sub{letter-spacing:0;font-size:11px}.admin-header-right{display:contents}.admin-header .header-member{grid-area:1/2;justify-content:center}.admin-header .header-member-name,.admin-header .admin-desktop-logout{display:none}.admin-header .header-member .avatar{width:30px;height:30px;font-size:13px}.admin-header .mobile-menu{grid-area:1/3;justify-content:center;min-width:40px;min-height:40px}.admin-header-right select{grid-area:2/1/auto/-1;width:100%;min-width:0;max-width:100%;margin-top:2px}}@media (max-width:768px){.admin-main{--query-control-height:44px;--query-control-font-size:16px;--query-control-padding:8px 10px;--query-control-gap:8px;min-width:0}.admin-main .data-panel{min-width:0}.admin-main .toolbar.query-bar{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));align-items:stretch;gap:8px;width:100%;min-width:0;display:grid}.admin-main .toolbar.query-bar>.control{width:100%;min-width:0;max-width:none;margin:0}.admin-main .toolbar.query-bar>.btn{white-space:normal;overflow-wrap:anywhere;grid-column:1/-1;justify-content:center;gap:6px;width:100%;max-width:100%;min-height:44px;margin:4px 0 0;line-height:1.4}.admin-main .toolbar.query-bar>.btn svg{flex-shrink:0}.admin-main .query-bar .searchable-select-input input{padding-right:44px!important}.admin-main .query-bar .searchable-select-input button{width:44px}.admin-main .query-bar .searchable-select-options>[role=option]{align-items:center;min-height:44px;display:flex}.admin-main .list-toolbar{flex-direction:column;align-items:stretch;gap:12px;display:flex}.admin-main .list-toolbar>.toolbar{order:0;width:100%;margin:0;flex:none!important}.admin-main .list-export-actions{order:1;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:8px;width:100%;max-width:100%;margin:0;display:grid}.admin-main .list-export-actions .btn{white-space:normal;overflow-wrap:anywhere;width:100%;min-width:0;max-width:100%;min-height:44px;font-size:14px;line-height:1.4}.admin-main .list-export-actions .btn svg{flex-shrink:0}.admin-main .session-actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:8px;min-width:0;display:grid}.admin-main .session-actions>.btn,.admin-main .booking-quick-action>.btn{white-space:normal;overflow-wrap:anywhere;width:100%;max-width:100%;min-height:44px;line-height:1.4}.admin-main .venue-category-header{flex-direction:column;align-items:stretch;gap:8px}.admin-main .venue-category-header>.btn{white-space:normal;width:100%;min-height:44px}.admin-main .venue-category-filter>.control{flex:100%;width:100%;max-width:none}}.filter-clear-button.btn{width:var(--query-control-height,36px);height:var(--query-control-height,36px);min-height:var(--query-control-height,36px);border-radius:var(--query-control-radius,6px);flex:none;padding:0}.admin-main .toolbar>.btn.filter-clear-button{width:var(--query-control-height);min-height:var(--query-control-height);margin:0;padding:0}.filter-reset-actions{justify-content:flex-end;align-items:center;margin-bottom:8px;display:flex}@media (max-width:768px){.admin-main .toolbar.query-bar>.btn.filter-clear-button{grid-column:-2/-1;justify-self:end;width:44px;height:44px;min-height:44px;margin:0;padding:0}.admin-main .filter-reset-actions>.btn.filter-clear-button,.booking-search-panel .filter-clear-button{width:44px;height:44px;min-height:44px}.admin-main .venue-category-filter>.control{flex:1 1 0;min-width:0}}.overview-grid.without-bookings{grid-template-columns:minmax(0,1fr)}.upcoming-bookings{min-width:0}.upcoming-bookings .section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.upcoming-bookings-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.upcoming-bookings-list>.upcoming-booking-card{overflow-wrap:anywhere;min-width:0;padding:16px}.upcoming-booking-time,.upcoming-booking-place{flex-wrap:wrap;align-items:center;gap:6px;font-size:.875rem;display:flex}.upcoming-booking-time svg,.upcoming-booking-place svg{flex-shrink:0}.upcoming-booking-place{margin-top:6px}.upcoming-bookings-list p{margin:4px 0 0;font-size:.8125rem}.booking-panel{overflow:visible}.booking-navigation{display:contents}@media (min-width:53.125rem){.booking-layout{grid-template:"navigation quick""navigation schedule"1fr/minmax(29.5rem,32.5rem) minmax(0,1fr)}.booking-navigation{min-width:0;max-height:calc(100vh - 2rem);scrollbar-gutter:stable;z-index:2;background:#fff;border-right:1px solid #e1e8ee;border-radius:9px 0 0 9px;grid-area:navigation;grid-template-columns:15.5rem minmax(0,1fr);align-self:start;align-items:start;max-height:calc(100dvh - 2rem);display:grid;position:sticky;top:1rem;overflow:hidden auto}.booking-navigation:focus-visible{outline-offset:2px;outline:2px solid #31557e}.booking-navigation>.booking-calendar,.booking-navigation>.booking-filters{grid-area:auto;min-width:0;max-height:none;position:static;top:auto}.booking-navigation>.booking-filters{border-right:0;padding-top:1.25rem}}@media (min-width:53.125rem) and (max-width:68.75rem){.booking-layout{grid-template-columns:15.5rem minmax(0,1fr)}.booking-navigation{grid-template-columns:minmax(0,1fr)}.booking-navigation>.booking-calendar{border-bottom:1px solid #e1e8ee;border-right:0}}@media (min-width:53.125rem) and (max-height:40rem){.booking-navigation{scrollbar-gutter:auto;max-height:none;position:static;overflow:visible}}@media print{.booking-navigation{max-height:none;position:static;overflow:visible}}@media (max-width:1100px){.admin-sidebar .brand{gap:6px;min-width:0;margin-inline:0;font-size:1rem;line-height:1.3}.admin-sidebar .brand-logo,.admin-sidebar .brand-icon{width:32px;height:32px}.admin-sidebar .brand>span:last-child{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;flex:1;min-width:0;overflow:hidden}.admin-sidebar .brand-sub{letter-spacing:0;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.public-header .brand{gap:8px;min-width:0;font-size:1rem}.public-header .brand-logo,.public-header .brand-icon{width:32px;height:32px}.public-header .brand-sub{letter-spacing:0;font-size:11px}.admin-mobile-brand .brand>span:last-child,.public-header .brand>span:last-child{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;min-width:0;overflow:hidden}.admin-mobile-brand .brand-sub,.public-header .brand-sub{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}}.booking-notification-template{margin-top:20px}.booking-notification-template>p{font-size:.875rem}.booking-notification-template form>.btn{margin-top:16px}.booking-notification-template .notice p{overflow-wrap:anywhere;margin:8px 0 0}.overview-panel{min-width:0}.overview-activities-scroll{overscroll-behavior-x:contain;margin-top:12px}.overview-activities-scroll:focus-visible{outline-offset:3px;outline:2px solid #507da1}.overview-activities-table{min-width:41rem;font-size:.8125rem}.overview-activities-table th,.overview-activities-table td{padding:10px 8px;line-height:1.5}.overview-activities-table .overview-activities-name{overflow-wrap:anywhere;min-width:7rem;max-width:14rem}.overview-activities-table .overview-activities-name strong{font-size:.8125rem;font-weight:600}.overview-activities-table .overview-activities-place{overflow-wrap:anywhere;min-width:6.5rem;max-width:10rem}.overview-activities-table .overview-activities-date{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.75rem}.overview-activities-table .overview-activities-scope{overflow-wrap:anywhere;min-width:6rem;max-width:10rem}@media (min-width:768px){.activity-list-date{white-space:nowrap;font-variant-numeric:tabular-nums}}@media (min-width:1401px){.overview-grid:not(.without-bookings){grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}@media (min-width:1101px) and (max-width:1400px){.overview-grid{grid-template-columns:minmax(0,1fr)}}.permission-modules{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0;display:grid}.permission-modules .permission-module{background:#f8fafc;border:1px solid #dce3eb;border-radius:9px;min-width:0;margin:0;padding:12px 16px 16px}.permission-module legend{color:#193653;margin:0;padding:0 6px;font-size:15px;font-weight:600}.permission-options{gap:8px;display:grid}.permission-options .choice{overflow-wrap:anywhere;align-items:flex-start;min-height:30px;margin:0;font-size:14px;line-height:1.6}.permission-options input[type=checkbox]{margin-top:4px}.permission-fixed{border-top:1px solid #dde3eb;padding-top:10px;margin-top:2px!important}.permission-fixed small{color:#657186;margin-top:2px;font-size:12px;display:block}@media (max-width:600px){.permission-modules{grid-template-columns:minmax(0,1fr)}}.draw-screen{overscroll-behavior:contain;overflow:hidden auto}.draw-screen-header{flex-wrap:wrap;gap:16px}.draw-screen-header>span.draw-screen-brand{color:#193653;flex-shrink:0;font-size:16px;display:flex}.draw-screen-body{box-sizing:border-box;overflow-wrap:anywhere;width:100%}.draw-item-main h3{overflow-wrap:anywhere}.result-columns{grid-template-columns:minmax(0,1fr);gap:14px;margin:20px 0}.result-group{min-width:0;padding:16px 20px}.result-group h3{margin-bottom:10px;font-size:18px}.result-person{gap:10px;padding:9px 0}.result-person-fields,.draw-screen .result-person-fields{flex-wrap:wrap;gap:4px 20px;font-size:14px;line-height:1.5;display:flex}.result-person-field{align-items:baseline;gap:6px;min-width:0;max-width:100%;display:flex}.result-person-fields dt{flex-shrink:0;font-size:12px}.result-person-fields dd{overflow-wrap:anywhere;min-width:0}@media (max-width:600px){.result-group{padding:14px}.result-person-fields{gap:4px 14px}.result-person-field{flex-wrap:wrap}.draw-screen-header>span.draw-screen-brand{font-size:14px}}.header-member-menu{min-width:0;position:relative}.header-member-menu>summary{cursor:pointer;border-radius:6px;padding:4px;list-style:none}.header-member-menu>summary::-webkit-details-marker{display:none}.booking-location>summary::-webkit-details-marker{display:none}:is(.header-member-menu>summary:focus-visible,.booking-location>summary:focus-visible){outline-offset:2px;outline:2px solid #31557e}.header-member-menu[open]>summary>svg{transform:rotate(90deg)}.header-role-options{z-index:80;background:#fff;border:1px solid #d7e2ea;border-radius:8px;min-width:240px;max-width:min(320px,90vw);padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #162d412e}.header-role-options button{text-align:left;color:#27485e;cursor:pointer;background:#fff;border:0;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 10px;display:flex}.header-role-options button:hover,.header-role-options button[aria-current=true]{background:#eaf2f7}.booking-quick-action{align-items:flex-start;gap:12px}.booking-location{background:#fff;border:1px solid #dce7ee;border-radius:.75rem;flex:auto;min-width:0;max-width:32rem}.booking-location>summary{cursor:pointer;color:#174e70;padding:.7rem 1rem;font-weight:600;list-style:none}@media (max-width:600px){.admin-header .header-member-menu{grid-area:1/2;align-self:center}.header-role-options{right:-48px}.booking-quick-action{flex-wrap:wrap}.booking-location{flex:100%;max-width:none}.admin-header{z-index:40;position:sticky;top:0}}.booking-location{width:100%;max-width:none;margin-bottom:1rem;display:block}.booking-location>summary{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.booking-location>summary svg{flex:none;transition:transform .15s}.booking-location[open]>summary svg{transform:rotate(180deg)}.booking-filter-actions{flex-wrap:wrap;gap:.5rem}.booking-filter-actions .booking-quick-action{min-width:0;padding:0;display:block}.booking-filter-actions .booking-search-toggle{min-height:2.75rem}@media (min-width:68.75rem){.booking-layout{grid-template-rows:auto;grid-template-areas:"navigation schedule"}}@media (min-width:53.125rem) and (max-width:68.75rem){.booking-layout{grid-template-rows:auto;grid-template-areas:"navigation schedule"}}@media (max-width:53.125rem){.booking-layout{grid-template-rows:auto;grid-template-areas:"calendar""filters""schedule"}.booking-content{padding-top:0}}.booking-content{padding-top:1.25rem}.booking-location{background:#fff;border-color:#dce1e8;box-shadow:0 2px 8px #2534470a}.booking-location>summary{color:#273e57}.booking-location .booking-info-cards{gap:1rem;padding:.25rem 1rem 1rem}.booking-location .booking-category-card,.booking-location .booking-venue-card{box-shadow:none;color:#35475b;background:0 0;border:0;border-radius:0;padding:0}.booking-location .booking-category-card h3,.booking-location .booking-venue-card h3{color:#273e57;margin:0 0 .5rem;font-size:.9375rem}.booking-location .booking-category-card strong,.booking-location .booking-venue-details dt{color:#687688}.booking-location .booking-venue-details dd{color:#35475b}.booking-filter-actions{flex-wrap:nowrap;align-items:stretch;gap:.5rem;width:100%;display:flex}.booking-filter-actions .booking-quick-action{flex:auto;min-width:0}.booking-filter-actions .booking-search-toggle{justify-content:center;gap:.4rem;width:100%;min-height:40px;padding:8px 10px;font-size:.875rem}.booking-filter-actions>.filter-clear-button{flex:0 0 40px;width:40px;height:40px;min-height:40px}.booking-date{color:#273e57;background:#f1f3f6}.booking-date small,.booking-month button{color:#607087}.booking-days button{color:#35475b}.booking-days button:hover,.booking-days button.today{background:#edf0f4}.booking-days button.selected{color:#fff;background:#344b67}.booking-tabs button{color:#45586f;border-color:#d9e0e8}.booking-tabs button.active{color:#fff;background:#344b67;border-color:#344b67}.booking-subcategories button{background:#f6f7f9}.booking-subcategories button.active{color:#293f59;background:#e8edf4;border-color:#8797aa}.booking-venues button{color:#35475b;border-color:#dce2e9}.booking-venues button.active{border-color:#788ba1;box-shadow:0 0 0 2px #e6ebf1}.booking-slot-time{color:#556579;background:#f6f7f9}:is(.booking-slot-free:hover,.booking-slot-free:focus-visible){background:#f0f3f7}.booking-slot-free:after{color:#405b78}.booking-slot-reserved{color:#293f59;background:#e8edf3;border-bottom-color:#cbd6e1;border-left-color:#627b97}.booking-reserved-details small,.booking-reserved-details p{color:#465c73}@media (max-width:53.125rem){.booking-content{padding-top:1.25rem}}@media (max-width:600px){.admin-main .booking-filter-actions>.filter-clear-button{flex-basis:44px;width:44px;height:44px;min-height:44px}.booking-filter-actions .booking-search-toggle{min-height:44px}}.booking-filter-actions .booking-search-toggle{color:#344b67;background:#fff;border:1px solid #344b67}.booking-filter-actions .booking-search-toggle:hover:not(:disabled){color:#273e57;background:#eef2f6;border-color:#273e57}.booking-filters .booking-tabs{gap:.375rem}.booking-filters .booking-tabs button{min-height:34px;padding:.375rem .625rem;font-size:.8125rem;line-height:1.3}@media (max-width:600px){.booking-filters .booking-tabs button{min-height:40px}}.booking-date .booking-date-caption{flex-wrap:wrap;align-items:baseline;gap:0 .4em;line-height:1.5;display:flex}.booking-date-caption time,.booking-date-caption span{white-space:nowrap}.booking-filter-actions{border-bottom:1px solid #e2e7ed;margin-bottom:1rem;padding-bottom:1rem}.booking-filter-label{color:#6a7889;margin:0 0 .4rem;font-size:.75rem;font-weight:600;line-height:1.4}.booking-tabs+.booking-filter-label{margin-top:.875rem}.booking-subcategories{margin-top:0}.booking-venues{gap:.375rem;margin:.125rem 0 1rem}.booking-filters .booking-venues button{border-radius:.5rem;justify-content:space-between;align-items:center;gap:.5rem;min-height:38px;padding:.4rem .625rem;font-size:.8125rem;line-height:1.35;display:flex}.booking-filters .booking-venues button svg{flex:none}.booking-filters .booking-venues button.active{color:#263f5b;box-shadow:none;background:#edf1f6;border-color:#667d96}@media (max-width:600px){.booking-filters .booking-venues button{min-height:44px}}
