:root{--ho-orange:#f15a24;--ho-green:#2f8f46;--ho-red:#c93c36;--ho-bg:#f6f4ef;--ho-paper:#fff;--ho-ink:#1c1b19;--ho-muted:#6c6962;--ho-line:#ded9cf;--ho-soft:#eeeae2;--ho-shadow:0 18px 55px rgba(31,27,21,.14)}*{box-sizing:border-box}.hos-frontend-app,.hos-public,.hos-login-wrap{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ho-ink)}body:has(.hos-frontend-app),body:has(.hos-login-wrap){margin:0;background:#24211e}.hos-frontend-app{min-height:100vh;background:var(--ho-bg)}button,input,select{font:inherit}.hos-loading{padding:44px;text-align:center}.hos-app-shell{min-height:100vh;background:var(--ho-bg)}
.hos-appbar{height:76px;display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);align-items:center;border-bottom:1px solid var(--ho-line);background:rgba(255,255,255,.96);position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.hos-brand{display:flex;align-items:center;gap:10px;padding-left:22px}.hos-brand-dot{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--ho-orange);color:#fff;font-weight:900;font-size:13px}.hos-brand div{display:grid}.hos-brand small{font-size:11px;color:var(--ho-muted);margin-top:2px}.hos-nav{display:flex;height:100%;align-items:stretch}.hos-navitem{border:0;background:transparent;min-width:92px;padding:9px 12px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#55514b;position:relative}.hos-navitem b{font-size:18px}.hos-navitem span{font-size:11px;font-weight:700}.hos-navitem.active{color:var(--ho-orange)}.hos-navitem.active:after{content:"";height:3px;position:absolute;left:14px;right:14px;bottom:0;background:var(--ho-orange);border-radius:4px 4px 0 0}.hos-controls{justify-self:end;display:flex;align-items:center;gap:8px;padding-right:18px}.hos-icon-nav{border:0;background:transparent;font-size:22px;cursor:pointer;color:#55514b;padding:9px}.hos-icon-nav.active{color:var(--ho-orange)}
.hos-main-panel{padding:30px 32px 80px;max-width:1560px;margin:auto}.hos-view-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:22px}.hos-view-head h1{margin:2px 0 6px;font-size:clamp(26px,3vw,38px);letter-spacing:-.025em}.hos-view-head p{margin:0;color:var(--ho-muted);max-width:760px}.hos-kicker{font-size:11px;letter-spacing:.14em;font-weight:800;color:var(--ho-orange)}.hos-head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.hos-btn,.hos-select,.hos-input{border:1px solid #403d38;border-radius:8px;background:#fff;padding:10px 13px;color:var(--ho-ink)}.hos-btn{cursor:pointer;font-weight:750;transition:.15s ease}.hos-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0001}.hos-btn.small{padding:7px 10px;font-size:13px}.hos-btn.primary{background:var(--ho-green);border-color:var(--ho-green);color:#fff}.hos-btn.danger{background:var(--ho-red);border-color:var(--ho-red);color:#fff}.hos-btn.ghost{border-color:var(--ho-line)}.hos-btn.wide{width:100%}.hos-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.hos-select.compact{max-width:190px}.hos-link{background:none;border:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer;color:inherit}.hos-link.back{display:block;margin-bottom:8px;color:var(--ho-muted)}
.hos-days{display:flex;gap:7px;overflow:auto;padding:2px 0 16px;scrollbar-width:thin}.hos-day{white-space:nowrap;border:1px solid #48443e;border-radius:999px;background:#fff;padding:8px 13px;cursor:pointer;font-size:13px;font-weight:700}.hos-day.active{background:#2f353c;border-color:#2f353c;color:#fff}.hos-day.drag-over{outline:3px solid var(--ho-green);outline-offset:2px;background:#eef7ef;color:var(--ho-ink)}.hos-table-wrap{overflow:auto;border:1px solid var(--ho-line);border-radius:12px;background:#fff;box-shadow:0 6px 24px #00000008}.hos-schedule{width:100%;border-collapse:separate;border-spacing:0;min-width:1080px;table-layout:fixed}.hos-schedule col.hos-unit-col{width:235px}.hos-schedule col.hos-period-col{width:calc((100% - 235px)/5)}.hos-schedule th,.hos-schedule td{padding:9px;border-bottom:1px dotted #bdb7ae;border-right:1px solid #ebe7df;vertical-align:middle}.hos-schedule th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;text-align:center;background:#f8f6f1;position:sticky;top:0;z-index:2}.hos-schedule th:first-child,.hos-schedule td:first-child{text-align:left;width:235px;position:sticky;left:0;z-index:3;background:#fff}.hos-schedule th:first-child{z-index:4;background:#f8f6f1}.hos-schedule small{display:block;color:var(--ho-muted);margin-top:3px}.hos-group-head td{background:#f0ede7!important;border-top:3px solid var(--ho-orange);font-size:15px;position:static!important}.hos-group-head .hos-link{float:right;font-size:12px}.hos-unit-name strong{font-size:14px}.hos-drop-cell{min-width:160px;transition:.12s ease}.hos-drop-cell.drag-over{background:#eef7ef;outline:2px dashed var(--ho-green);outline-offset:-4px}.hos-activity-chip,.hos-library-item,.hos-pick{--chip:#666;background:var(--chip);color:white;border:0;border-radius:8px;padding:11px 12px;cursor:pointer}.hos-activity-chip{width:100%;min-height:44px;display:flex;gap:7px;align-items:center;justify-content:flex-start;font-weight:750;text-align:left;box-shadow:inset 0 0 0 1px #ffffff18}.hos-activity-chip small{margin-left:auto!important;color:#fff!important;opacity:.82;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.hos-activity-chip.inherited{background:color-mix(in srgb,var(--chip) 72%,white);border:1px dashed #ffffffaa}.hos-activity-chip.dragging{opacity:.38}.hos-chip-symbol{font-size:10px}.hos-slot-add{width:100%;min-height:44px;border:1px dashed transparent;background:transparent;color:#b9b3aa;font-size:26px;cursor:pointer;border-radius:8px}.hos-slot-add:hover{border-color:#b9b3aa;background:#faf9f6;color:var(--ho-orange)}.hos-help{font-size:12px;color:var(--ho-muted);margin:10px 2px}
.hos-group-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.hos-group-card{border:1px solid var(--ho-line);border-top:4px solid var(--ho-orange);border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 7px 25px #00000008}.hos-group-card-head{display:grid;grid-template-columns:36px 1fr auto;gap:7px;align-items:center;background:#f3f0ea;padding:13px 15px}.hos-group-card-head h3{margin:0 0 2px}.hos-group-card-head small{color:var(--ho-muted)}.hos-edit-icon,.hos-icon-btn{border:0;background:transparent;cursor:pointer;font-size:19px}.hos-count{text-align:right}.hos-count b{display:block;font-size:22px}.hos-count small{font-size:10px}.hos-unit-table>div{display:grid;grid-template-columns:1fr 150px 100px;padding:10px 15px;border-bottom:1px dotted #c8c2b9;font-size:13px}.hos-card-actions{display:flex;gap:8px;justify-content:flex-end;padding:13px 15px}.hos-library section{border-bottom:1px dotted #aaa;padding:16px 0 22px}.hos-library h3{display:inline-flex;align-items:center;gap:8px;background:var(--chip);color:#fff;border-radius:7px;padding:8px 14px;margin:0 0 12px}.hos-library h3 span{width:9px;height:9px;background:#fff;border-radius:50%}.hos-activity-grid{display:flex;gap:8px;flex-wrap:wrap}.hos-library-item{min-width:160px;text-align:left}.hos-library-item small,.hos-pick small{display:block;opacity:.85;margin-top:3px}.hos-settings-grid{display:grid;max-width:650px;gap:12px}.hos-setting-card{border:1px solid var(--ho-line);background:#fff;border-radius:10px;padding:18px;display:flex;justify-content:space-between;text-decoration:none;color:#111;cursor:pointer;font-size:16px}
.hos-activity-title{background:var(--chip);color:#fff;padding:13px 15px;border-radius:9px;display:flex;gap:10px;align-items:center;margin-bottom:16px}.hos-activity-title small{margin-left:auto;opacity:.85}.hos-segmented{display:flex;border:1px solid #35312e;border-radius:8px;overflow:hidden;background:#fff}.hos-segmented button{border:0;background:#fff;padding:9px 12px;cursor:pointer}.hos-segmented button.active{background:#2f353c;color:#fff}.hos-activity-day{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hos-day-slot{border:1px solid var(--ho-line);border-radius:10px;background:#fff;overflow:hidden}.hos-day-slot header{display:flex;justify-content:space-between;gap:12px;padding:11px 13px;background:#f3f0ea}.hos-day-slot .over,.hos-week-cell.over{color:var(--ho-red)!important;font-weight:800}.hos-participant-row{padding:9px 12px;border-top:1px dotted #ccc;font-size:13px}.hos-empty-slot{padding:18px 12px;color:#aaa;font-size:13px}.hos-week-wrap{overflow:auto;border:1px solid var(--ho-line);border-radius:12px;background:#fff}.hos-week-grid{display:grid;grid-template-columns:150px repeat(var(--days),minmax(145px,1fr));min-width:max-content}.hos-week-corner,.hos-week-period,.hos-week-date,.hos-week-cell{border:0;border-right:1px solid var(--ho-line);border-bottom:1px solid var(--ho-line);background:#fff}.hos-week-corner,.hos-week-period{padding:12px;font-size:12px;font-weight:800;background:#f3f0ea;position:sticky;left:0;z-index:3}.hos-week-date{padding:12px;cursor:pointer;background:#f8f6f1;text-align:left}.hos-week-date.active{box-shadow:inset 0 -3px var(--ho-orange)}.hos-week-cell{min-height:104px;padding:10px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:3px}.hos-week-cell:hover{background:#faf8f3}.hos-week-cell.has-booking{background:#f5faf5}.hos-week-cell>b{font-size:20px}.hos-week-cell small{color:var(--ho-muted)}.hos-week-cell span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:125px}.hos-week-cell em{font-size:10px;color:var(--ho-muted);margin-top:auto}
.hos-modal-backdrop{position:fixed;inset:0;background:rgba(25,22,19,.72);display:flex;align-items:center;justify-content:center;padding:22px;z-index:99999}.hos-modal{width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:16px;padding:28px;position:relative;box-shadow:var(--ho-shadow)}.hos-modal.wide{width:min(940px,100%)}.hos-modal h2{margin:0 48px 6px 0;color:var(--ho-orange);font-size:25px}.hos-modal h3{margin:8px 0}.hos-modal hr{border:0;border-top:1px solid var(--ho-line);margin:22px 0 14px}.hos-modal-intro{color:var(--ho-muted);font-size:13px;margin-top:2px}.hos-x{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:34px;cursor:pointer;line-height:1}.hos-modal-nudge{animation:hosNudge .2s ease}@keyframes hosNudge{0%,100%{transform:translateX(0)}40%{transform:translateX(-5px)}70%{transform:translateX(5px)}}.hos-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}.hos-form-grid label,.hos-login-card label,.hos-unit-edit label{font-size:12px;font-weight:750;display:grid;gap:5px}.hos-form-grid .hos-input,.hos-form-grid .hos-select,.hos-unit-edit .hos-input{width:100%}.hos-section-head{display:flex;justify-content:space-between;align-items:center}.hos-unit-edit{display:grid;grid-template-columns:1fr 140px 120px 44px;gap:12px;align-items:end;padding:10px 0;border-bottom:1px dotted #bbb}.hos-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:22px;position:sticky;bottom:-28px;background:linear-gradient(transparent,#fff 18%);padding-top:18px;padding-bottom:4px}.hos-actions .danger{margin-right:auto}.hos-booking-meta{display:flex;gap:7px;flex-wrap:wrap;margin:9px 0 14px}.hos-booking-meta span{padding:6px 9px;border-radius:999px;background:#f0ede7;font-size:12px;font-weight:700}.hos-picker-toolbar{display:grid;gap:10px;position:sticky;top:-28px;background:#fff;z-index:2;padding:8px 0 10px}.hos-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:10px}.hos-pick{position:relative;text-align:left;min-height:72px;border:3px solid transparent;transition:.12s ease}.hos-pick:hover{filter:brightness(1.04)}.hos-pick.selected{border-color:#171717;box-shadow:0 0 0 2px #fff inset}.hos-pick-check{position:absolute;right:8px;top:7px;display:none;width:20px;height:20px;border-radius:50%;background:#fff;color:#111;text-align:center;font-weight:900}.hos-pick.selected .hos-pick-check{display:block}.hos-category-tabs{display:flex;gap:6px;flex-wrap:wrap}.hos-category-tabs button{border:1px solid var(--ho-line);background:#fff;border-radius:999px;padding:6px 9px;font-size:11px;cursor:pointer}.hos-category-tabs button:not([data-cat="0"]){border-color:var(--chip)}.hos-category-tabs button.active{background:#2f353c;color:#fff;border-color:#2f353c}.hos-alert{padding:12px 14px;border-radius:8px;margin:12px 0;background:#eee;font-size:13px}.hos-alert ul{margin:7px 0 0;padding-left:20px}.hos-alert.warn{background:#fff4df;border:1px solid #e9ad49}.hos-alert.danger{background:#ffe7e5;border:1px solid #d96b65}.hos-alert.ok{background:#eaf6ed;border:1px solid #8cc49a}.hos-multi-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.hos-multi-list section{border:1px solid var(--ho-line);border-radius:9px;overflow:hidden}.hos-multi-list section>header{display:flex;justify-content:space-between;padding:10px 12px;background:#f3f0ea}.hos-multi-list section>label{display:grid;grid-template-columns:auto 1fr auto;gap:8px;padding:9px 12px;border-top:1px dotted #ccc;align-items:center;font-size:13px}.hos-multi-list small{color:var(--ho-muted)}.hos-toast{position:fixed;right:22px;bottom:22px;z-index:100000;background:#222;color:#fff;padding:12px 18px;border-radius:8px;box-shadow:0 8px 30px #0004}.hos-toast.ok{background:#238b2f}.hos-toast.error{background:#b52e28}.hos-empty{text-align:center;padding:70px 20px;color:var(--ho-muted)}
.hos-login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:#24211e}.hos-login-card{width:min(420px,100%);background:#fff;padding:34px;border-radius:18px;box-shadow:0 18px 60px #0007}.hos-brandmark{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:var(--ho-orange);color:#fff;font-weight:900}.hos-login-card h1{margin-bottom:5px}.hos-login-card>p{color:var(--ho-muted);margin-top:0}.hos-login-card label{margin:14px 0}.hos-login-card input:not([type=checkbox]){width:100%;border:1px solid #333;border-radius:8px;padding:12px}.hos-check{display:flex!important;grid-auto-flow:column;justify-content:start;align-items:center}.hos-secret{font:700 18px monospace;background:#f2f2f2;padding:12px;border-radius:8px;word-break:break-all}
.hos-public{padding:18px;background:#f5f5f2;min-height:100vh}.hos-public .hos-shell{max-width:1200px;margin:auto;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 5px 30px #0001}.hos-public .hos-top{padding:16px 20px;background:#eee}.hos-public .hos-main{padding:20px}.hos-public table{width:100%;border-collapse:collapse}.hos-public th,.hos-public td{border-bottom:1px dotted #aaa;padding:10px;text-align:left}.hos-public .hos-activity{color:#fff;padding:10px;border-radius:7px;font-weight:700}.hos-muted{color:#777;font-size:12px}
@media(max-width:1100px){.hos-appbar{grid-template-columns:auto 1fr auto}.hos-brand div{display:none}.hos-navitem{min-width:78px}.hos-main-panel{padding:24px 18px 70px}.hos-group-list{grid-template-columns:1fr}.hos-picker-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.hos-appbar{height:auto;grid-template-columns:1fr auto;grid-template-areas:"brand controls" "nav nav"}.hos-brand{grid-area:brand;padding:9px 12px}.hos-brand div{display:grid}.hos-controls{grid-area:controls;padding-right:8px}.hos-nav{grid-area:nav;overflow:auto;border-top:1px solid var(--ho-line);justify-content:space-around}.hos-navitem{min-width:82px;height:56px}.hos-navitem b{font-size:16px}.hos-main-panel{padding:18px 10px 70px}.hos-view-head{display:grid;gap:13px}.hos-head-actions{justify-content:flex-start}.hos-head-actions>*{max-width:100%}.hos-form-grid{grid-template-columns:1fr}.hos-modal-backdrop{padding:0;align-items:flex-end}.hos-modal,.hos-modal.wide{width:100%;max-height:94vh;border-radius:18px 18px 0 0;padding:22px 16px 26px}.hos-actions{bottom:-26px}.hos-unit-edit{grid-template-columns:1fr 86px 86px 38px;gap:7px}.hos-picker-grid{grid-template-columns:1fr 1fr}.hos-multi-list{grid-template-columns:1fr}.hos-activity-day{grid-template-columns:1fr}.hos-group-card-head{grid-template-columns:30px 1fr auto}.hos-unit-table>div{grid-template-columns:1fr 90px 70px}.hos-public{padding:0}.hos-public .hos-shell{border-radius:0}.hos-public table{min-width:900px}.hos-public .hos-main{overflow:auto}.hos-help{display:none}}
@media(max-width:480px){.hos-brand div small{display:none}.hos-controls .hos-select{max-width:135px;padding:8px}.hos-navitem{min-width:70px}.hos-navitem span{font-size:10px}.hos-view-head h1{font-size:28px}.hos-picker-grid{grid-template-columns:1fr}.hos-unit-edit{grid-template-columns:1fr 1fr 70px 34px}.hos-unit-edit label:first-child{grid-column:1/-1}.hos-card-actions{flex-direction:column}.hos-card-actions .hos-btn{width:100%}}

/* v0.4 drag-and-drop + capacity override */
.hos-drag-tray{display:grid;grid-template-columns:minmax(190px,240px) 1fr;gap:14px;align-items:center;margin:4px 0 14px;padding:12px 14px;border:1px solid var(--ho-line);border-radius:12px;background:#f8f6f1}.hos-drag-tray>div:first-child{display:grid;gap:3px}.hos-drag-tray>div:first-child small{color:var(--ho-muted);font-size:11px;line-height:1.35}.hos-drag-activities{display:flex;gap:8px;overflow:auto;padding:2px 0;scrollbar-width:thin}.hos-drag-activity{--chip:#666;flex:0 0 auto;border:0;border-radius:8px;background:var(--chip);color:#fff;padding:9px 11px;display:flex;align-items:center;gap:7px;font-weight:750;cursor:grab;box-shadow:inset 0 0 0 1px #ffffff24}.hos-drag-activity:active{cursor:grabbing}.hos-drag-activity small{opacity:.8;font-size:9px;text-transform:uppercase;margin-left:2px}.hos-drag-activity.dragging{opacity:.4}.hos-activity-chip.capacity-over{position:relative;outline:3px solid #b42318;outline-offset:-3px;box-shadow:0 0 0 2px #fff,inset 0 0 0 1px #ffffff30}.hos-activity-chip.capacity-over:before{content:'!';display:grid;place-items:center;position:absolute;right:-7px;top:-8px;width:21px;height:21px;border-radius:50%;background:#b42318;color:#fff;font-weight:900;font-size:12px;border:2px solid #fff}.hos-activity-chip .hos-over-label{background:#fff;color:#8f1b13!important;opacity:1!important;border-radius:999px;padding:2px 6px;white-space:nowrap;font-weight:900}.hos-override-check{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:11px;border-radius:8px;background:#fff;border:1px solid #d96b65;cursor:pointer}.hos-override-check input{margin-top:3px;transform:scale(1.15)}.hos-override-check span{display:grid;gap:2px}.hos-override-check small{color:#76504d;font-weight:500;line-height:1.35}.hos-drop-cell.drag-over{background:#e5f4e8;box-shadow:inset 0 0 0 3px var(--ho-green)}
@media(max-width:760px){.hos-drag-tray{display:none}}

/* v0.4.1 robust activity selection */
.hos-pick{display:block;user-select:none}.hos-pick-radio{position:absolute;opacity:0;pointer-events:none}.hos-pick:focus-within{outline:3px solid #111;outline-offset:2px}

/* v0.5 hierarchy + icon picker */
.hos-category-heading{display:flex;align-items:center;gap:12px;width:100%;max-width:560px;border:0;border-radius:12px;background:var(--chip);color:#fff;padding:12px 14px;text-align:left;cursor:pointer;box-shadow:inset 0 0 0 1px #ffffff22}.hos-category-heading>span:nth-child(2){display:grid;gap:2px;flex:1}.hos-category-heading b{font-size:16px}.hos-category-heading small{font-size:11px;opacity:.85;font-weight:600}.hos-category-heading em{font-style:normal;opacity:.8}.hos-category-icon,.hos-library-icon{font-size:24px;line-height:1}.hos-category-example{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:10px 0 12px;font-size:11px;color:var(--ho-muted)}.hos-category-example b{background:var(--chip);color:#fff;padding:5px 8px;border-radius:7px}.hos-library-item{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center;border:1px solid color-mix(in srgb,var(--chip) 35%,#ddd);border-left:5px solid var(--chip);border-radius:9px;background:#fff;padding:10px 12px;cursor:pointer}.hos-library-item strong,.hos-library-item small{grid-column:2}.hos-library-item .hos-library-icon{grid-row:1/3;grid-column:1}.hos-icon-picker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:8px 0 16px}.hos-icon-picker label{position:relative;display:grid;place-items:center;gap:3px;border:2px solid var(--ho-line);border-radius:10px;padding:10px 5px;cursor:pointer;background:#fff}.hos-icon-picker input{position:absolute;opacity:0;pointer-events:none}.hos-icon-picker span{font-size:25px}.hos-icon-picker small{font-size:9px;color:var(--ho-muted)}.hos-icon-picker label:has(input:checked){border-color:#111;background:#f2efe9;box-shadow:0 0 0 2px #fff inset}.hos-color-input{min-height:44px;padding:4px}.hos-pick{display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:10px;background:color-mix(in srgb,var(--chip) 10%,white);border-color:color-mix(in srgb,var(--chip) 25%,transparent)}.hos-pick.category-choice{background:var(--chip);color:#fff}.hos-pick.category-choice small{color:#fff;opacity:.83}.hos-pick-icon{font-size:26px}.hos-pick-copy{display:grid;gap:3px}.hos-pick.child-choice{border-left:5px solid var(--chip)}.hos-drag-activity.category-choice{box-shadow:inset 0 0 0 2px #fff8}.hos-activity-chip.category-choice{font-weight:850}.hos-activity-title.category-choice{outline:2px solid color-mix(in srgb,var(--chip) 60%,#111)}
@media(max-width:760px){.hos-icon-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.hos-category-heading{max-width:none}.hos-category-example{font-size:10px}}
@media(max-width:480px){.hos-icon-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}

.hos-public-activity-icon{font-size:18px;margin-right:6px}.hos-activity small{display:block;margin-top:3px;opacity:.9}
\n\n/* v0.5.1 hierarchical drag library */\n.hos-drag-tray{grid-template-columns:minmax(210px,250px) 1fr;align-items:start}\n.hos-drag-intro{padding-top:5px}\n.hos-drag-activities{display:flex;align-items:stretch;gap:12px;overflow-x:auto;padding:3px 2px 8px;scroll-snap-type:x proximity}\n.hos-drag-category{--chip:#666;flex:0 0 auto;min-width:190px;max-width:260px;padding:7px;border:1px solid color-mix(in srgb,var(--chip) 42%,#d7d2ca);border-radius:12px;background:color-mix(in srgb,var(--chip) 5%,white);scroll-snap-align:start}\n.hos-drag-category>.hos-drag-activity.category-choice{width:100%;border:2px solid var(--chip);outline:2px solid color-mix(in srgb,var(--chip) 33%,white);outline-offset:2px;background:#fff;color:var(--ho-ink);box-shadow:none;border-radius:9px;padding:9px 10px;margin-bottom:7px}\n.hos-drag-category>.hos-drag-activity.category-choice .hos-drag-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:var(--chip);color:#fff}\n.hos-drag-category>.hos-drag-activity.category-choice small{color:var(--ho-muted);opacity:1}\n.hos-drag-children{display:grid;gap:5px;padding:3px 2px 1px 13px;border-left:2px solid color-mix(in srgb,var(--chip) 50%,white);margin-left:8px}\n.hos-drag-activity.child-choice{width:100%;background:color-mix(in srgb,var(--chip) 88%,#222);padding:8px 9px;border-radius:7px}\n.hos-drag-activity .hos-drag-name{white-space:nowrap}\n.hos-drag-category-label{display:flex;align-items:center;gap:7px;border:2px solid var(--chip);outline:2px solid color-mix(in srgb,var(--chip) 33%,white);outline-offset:2px;border-radius:9px;padding:9px 10px;margin-bottom:7px;background:#fff}\n.hos-activity-chip.category-choice{outline:2px solid color-mix(in srgb,var(--chip) 65%,#111);outline-offset:-2px;box-shadow:inset 0 0 0 2px #ffffffb8}\n.hos-pick.category-choice{outline:2px solid color-mix(in srgb,var(--chip) 70%,#111);outline-offset:-4px}\n@media(max-width:1100px){.hos-drag-tray{grid-template-columns:1fr}.hos-drag-intro{padding-top:0}.hos-drag-category{min-width:180px}}\n
/* v0.6 Lucide icons, temporary activities, capacity labels and collapsible drag library */
.hos-tabler-icon{width:1em;height:1em;display:inline-block;vertical-align:-.14em;stroke:currentColor;fill:none;flex:0 0 auto}.hos-tabler-icon:empty:before{content:'◇';font-size:.85em}
.hos-icon-control{display:grid;gap:10px}.hos-icon-selected{display:inline-flex;align-items:center;gap:10px;width:max-content;max-width:100%;padding:9px 12px;border:1px solid var(--ho-line);border-radius:10px;background:#f7f5f1;font-weight:750}.hos-icon-selected .hos-tabler-icon{font-size:24px}.hos-icon-selected span{font-size:12px;color:var(--ho-muted)}.hos-icon-source{color:var(--ho-muted);font-size:11px}.hos-icon-picker{max-height:300px;overflow:auto;align-content:start;padding-right:4px}.hos-icon-picker label{min-height:78px}.hos-icon-picker label span{font-size:24px;line-height:1}.hos-icon-picker .hos-tabler-icon{font-size:24px}.hos-icon-search{margin-top:2px}
.hos-scope-note{display:flex;gap:10px;align-items:center;padding:11px 13px;border:1px solid var(--ho-line);border-radius:10px;background:#f7f7f5;margin-bottom:14px}.hos-scope-note b{background:#333;color:#fff;padding:4px 8px;border-radius:999px;font-size:11px}.hos-scope-note.temporary{background:#fff7e8;border-color:#e4b85e}.hos-scope-note.temporary b{background:#a86300}.hos-library-item.temporary{border-style:dashed;background:#fffaf0}.hos-temp-separator{grid-column:1/-1;display:flex;align-items:center;gap:10px;margin:8px 0 0;color:#95610e;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.hos-temp-separator:before,.hos-temp-separator:after{content:'';height:1px;background:#e4c98f;flex:1}.hos-temp-mini{background:#fff2cc!important;color:#744d00!important;opacity:1!important;border-radius:999px;padding:2px 5px;text-transform:none!important;white-space:nowrap}
.hos-activity-chip{gap:7px;align-items:center}.hos-chip-main{display:grid;gap:2px;min-width:0;text-align:left}.hos-capacity-label{display:inline-flex!important;width:max-content;max-width:100%;background:#ffffffc9;color:#222!important;opacity:1!important;border-radius:999px;padding:2px 6px;font-size:10px!important;font-weight:900;line-height:1.2}.hos-capacity-label.over{background:#fff;color:#9c1d14!important}.hos-inherited-label{opacity:.8}.hos-chip-symbol .hos-tabler-icon{font-size:18px}
.hos-category-heading .hos-tabler-icon,.hos-library-icon .hos-tabler-icon,.hos-drag-icon .hos-tabler-icon,.hos-activity-title .hos-tabler-icon{font-size:1em}
.hos-drag-category{position:relative;min-width:205px;overflow:visible}.hos-drag-category>.hos-drag-activity.category-choice,.hos-drag-category>.hos-drag-category-label{margin-bottom:0;position:relative;z-index:2}.hos-drag-chevron{margin-left:auto;font-size:18px;line-height:1;transition:transform .18s ease}.hos-drag-category.expanded .hos-drag-chevron,.hos-drag-category.hover-open .hos-drag-chevron,.hos-drag-category.drag-active .hos-drag-chevron{transform:rotate(180deg)}
.hos-drag-children{max-height:0;opacity:0;overflow:hidden;padding-top:0!important;padding-bottom:0!important;margin-top:0!important;transform:translateY(-4px);transition:max-height .22s ease,opacity .16s ease,transform .18s ease,margin .18s ease,padding .18s ease;pointer-events:none}
.hos-drag-category:hover .hos-drag-children,.hos-drag-category.hover-open .hos-drag-children,.hos-drag-category.expanded .hos-drag-children,.hos-drag-category.drag-active .hos-drag-children{max-height:520px;opacity:1;overflow:visible;padding-top:8px!important;padding-bottom:2px!important;margin-top:5px!important;transform:none;pointer-events:auto}
.hos-drag-activity.temporary{outline:1px dashed #7b5b19;outline-offset:-2px}.hos-drag-activities{min-height:64px}.hos-drag-tray{overflow:visible}.hos-drag-category-label{width:100%;cursor:pointer}.hos-drag-category-label .hos-tabler-icon{font-size:22px}
@media(max-width:760px){.hos-icon-picker{grid-template-columns:repeat(4,minmax(0,1fr));max-height:250px}}
@media(max-width:480px){.hos-icon-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.hos-icon-picker label{min-height:70px}}


/* v0.6.2 readability fixes */
.hos-library-item{color:var(--ho-ink)!important}
.hos-library-item strong{color:var(--ho-ink)!important}
.hos-library-item small{color:var(--ho-muted)!important;opacity:1!important}
.hos-library-item .hos-library-icon{color:var(--chip)!important}
.hos-activity-chip .hos-capacity-label{background:#fff!important;color:#1c1b19!important;opacity:1!important;text-transform:none!important;letter-spacing:0!important;font-size:11px!important;font-weight:900!important;padding:3px 7px!important;border:1px solid rgba(0,0,0,.14);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.hos-activity-chip .hos-capacity-label.over{background:#fff1ef!important;color:#9c1d14!important;border-color:#d96b65!important}

.hos-tabler-icon{font-family:"tabler-icons"!important;font-style:normal;font-weight:400;line-height:1;display:inline-block;vertical-align:-.1em;flex:0 0 auto}.hos-icon-filters{display:flex;gap:6px;flex-wrap:wrap;margin-top:-2px}.hos-icon-filters button{border:1px solid var(--ho-line);background:#fff;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:750;cursor:pointer;color:#4c4944}.hos-icon-filters button.active{background:#222;color:#fff;border-color:#222}.hos-icon-picker label:hover{border-color:#777;background:#faf9f7}.hos-icon-source{line-height:1.45}

/* v0.7.2 local SVG icon library */
.hos-svg-icon{width:1em;height:1em;display:inline-block;vertical-align:-.14em;overflow:visible;fill:currentColor;color:currentColor;filter:none}
.hos-icon-picker .hos-svg-icon{width:28px;height:28px;vertical-align:0}
.hos-icon-selected .hos-svg-icon{width:30px;height:30px;vertical-align:0}
.hos-category-icon .hos-svg-icon,.hos-library-icon .hos-svg-icon,.hos-drag-icon .hos-svg-icon,.hos-chip-symbol .hos-svg-icon,.hos-pick-icon .hos-svg-icon,.hos-public-activity-icon .hos-svg-icon{width:1.35em;height:1.35em;vertical-align:-.22em}
.hos-category-heading .hos-svg-icon,.hos-drag-activity .hos-svg-icon,.hos-activity-chip .hos-svg-icon,.hos-activity-title .hos-svg-icon{filter:brightness(0) invert(1)}
.hos-library-item .hos-svg-icon,.hos-pick:not(.category-choice) .hos-svg-icon,.hos-icon-picker .hos-svg-icon,.hos-icon-selected .hos-svg-icon{filter:none}

.hos-icon-fallback{display:inline-flex;width:1em;height:1em;align-items:center;justify-content:center;font-size:.75em;line-height:1;color:currentColor}

/* v0.7.4 icon library visibility */
.hos-icon-count{font-size:13px;color:#655f56;margin:8px 0 10px;font-weight:650}
.hos-icon-more{display:block;margin:12px auto 8px;min-width:220px}
.hos-icon-more[hidden]{display:none!important}

/* v0.8.0 Material Design Icons + handwork supplement */
.hos-icon-selected .mdi,.hos-icon-picker .mdi{font-size:30px;line-height:1;display:inline-block;color:currentColor}
.hos-icon-picker .mdi{font-size:28px}
.hos-category-icon .mdi,.hos-library-icon .mdi,.hos-drag-icon .mdi,.hos-chip-symbol .mdi,.hos-pick-icon .mdi,.hos-public-activity-icon .mdi{font-size:1.35em;line-height:1;vertical-align:-.12em}
.hos-craft-icon{fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;filter:none!important}
.hos-category-heading .hos-craft-icon,.hos-drag-activity .hos-craft-icon,.hos-activity-chip .hos-craft-icon,.hos-activity-title .hos-craft-icon{filter:none!important}

/* v0.9.0: lejr-specifik kapacitet */
.hos-camp-capacity-box{margin:18px 0;padding:16px;border:1px solid #ded8ca;border-radius:14px;background:#faf8f3;display:grid;gap:12px}.hos-camp-capacity-box label[hidden]{display:none!important}.hos-local-cap-badge{display:inline-flex;align-items:center;width:max-content;padding:3px 8px;border-radius:999px;background:#fff3dd;color:#8a4d00;font-size:11px;font-style:normal;font-weight:800;border:1px solid #e7b96d}.hos-library-item.capacity-adjusted{box-shadow:inset 0 0 0 2px #e5a83a}.hos-category-heading.capacity-adjusted{outline:2px solid #e5a83a;outline-offset:2px}.hos-form-grid label>small{display:block;margin-top:4px;color:#746f65;font-weight:500;line-height:1.35}


/* v0.10 - read-only Aktivitetsleder */
.hos-readonly-banner{display:flex;gap:18px;align-items:center;padding:10px 24px;background:#fff7d6;border-bottom:1px solid #e6d58a;color:#4d4320;font-size:13px}
.hos-readonly-banner b{white-space:nowrap}.hos-readonly-banner span{opacity:.88}
.hos-slot-empty{display:flex;align-items:center;justify-content:center;min-height:42px;color:#9ca3af}
.hos-app-shell.is-readonly .hos-activity-chip{cursor:default}
.hos-app-shell.is-readonly .hos-library-item,.hos-app-shell.is-readonly .hos-category-heading{cursor:default}
@media(max-width:760px){.hos-readonly-banner{align-items:flex-start;flex-direction:column;gap:2px;padding:9px 14px}}


/* v0.10.1: larger activity icons in schedule overview */
.hos-activity-chip .hos-chip-symbol{font-size:25px!important;line-height:1;flex:0 0 30px;width:30px;display:grid;place-items:center;align-self:center}
.hos-activity-chip .hos-chip-symbol .mdi{font-size:25px!important;line-height:1}
.hos-activity-chip .hos-chip-symbol .hos-svg-icon{width:25px!important;height:25px!important;vertical-align:0}
@media(max-width:760px){.hos-activity-chip .hos-chip-symbol{font-size:22px!important;flex-basis:26px;width:26px}.hos-activity-chip .hos-chip-symbol .mdi{font-size:22px!important}.hos-activity-chip .hos-chip-symbol .hos-svg-icon{width:22px!important;height:22px!important}}

/* v0.11.1: readable text contrast in activity pickers */
.hos-pick.child-choice{color:var(--ho-ink,#242321)!important}
.hos-pick.child-choice .hos-pick-copy b{color:var(--ho-ink,#242321)!important;opacity:1!important}
.hos-pick.child-choice .hos-pick-copy small{color:var(--ho-muted,#6f6a61)!important;opacity:1!important}
.hos-pick.child-choice .hos-pick-icon{color:var(--chip,#555)!important}
.hos-pick.child-choice.selected{background:color-mix(in srgb,var(--chip) 16%,white)!important;color:var(--ho-ink,#242321)!important}
.hos-pick.category-choice,.hos-pick.category-choice .hos-pick-copy b{color:#fff!important}
.hos-pick.category-choice .hos-pick-copy small{color:#fff!important;opacity:.88!important}
.hos-pick.category-choice .hos-pick-icon{color:#fff!important}

/* v0.11.2: category/search filters must win over the grid display rule */
.hos-pick[hidden]{display:none!important}


/* v0.12.0: sticky drag-and-drop dock + standardised age groups */
.hos-planner-tools{position:sticky;top:76px;z-index:14;background:linear-gradient(to bottom,var(--ho-bg) 0%,var(--ho-bg) calc(100% - 10px),rgba(246,244,239,0) 100%);padding:8px 0 10px;margin:-8px 0 2px}
.hos-planner-tools .hos-drag-tray{margin-top:0;box-shadow:0 8px 22px rgba(31,27,21,.08)}
.hos-planner-tools .hos-days{padding:8px 2px 8px;margin:0;background:rgba(246,244,239,.96);backdrop-filter:blur(8px)}
.hos-planner-tools:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ho-line);opacity:.9}
.hos-unit-edit .ua{width:100%;min-width:0}
@media(max-width:760px){.hos-planner-tools{top:113px;padding-top:4px}.hos-planner-tools .hos-days{padding-top:4px}.hos-unit-edit{grid-template-columns:1fr 150px 86px 38px}}
@media(max-width:600px){.hos-unit-edit{grid-template-columns:1fr 1fr 72px 36px}.hos-unit-edit label:first-child,.hos-unit-edit label:nth-child(2){grid-column:1/3}}

/* v0.13.0: kategorioversigt i aktivitetsplanen */
.hos-category-activity-row{margin:.55rem 0;padding:.65rem .75rem;border-left:4px solid var(--chip,#777);background:#fff;border-radius:10px}
.hos-category-activity-name{display:flex;align-items:center;gap:.55rem;margin-bottom:.35rem}.hos-category-activity-name svg,.hos-category-activity-name i{width:22px;height:22px;font-size:22px;color:var(--chip,#666)}.hos-category-activity-name b{flex:1}.hos-category-activity-name>span:last-child{font-weight:700;font-size:.9rem}
.hos-drag-category-label small{margin-left:auto;opacity:.85;font-size:.72rem;font-weight:600}.hos-drag-category-label .hos-drag-chevron{margin-left:.4rem}

/* v0.13.1: cleaner sticky activity library */
.hos-drag-tray{grid-template-columns:minmax(220px,270px) minmax(0,1fr);gap:18px;padding:15px 16px;border-color:#ded9cf;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);box-shadow:0 8px 24px rgba(31,27,21,.07)}
.hos-drag-intro{display:flex!important;flex-direction:column;justify-content:center;gap:5px!important;padding:0 4px 0 2px!important}
.hos-drag-intro b{font-size:15px;line-height:1.2;letter-spacing:-.01em}.hos-drag-intro small{font-size:11px!important;line-height:1.45!important;max-width:250px}
.hos-drag-activities{gap:10px;padding:2px 3px 7px;align-items:flex-start}
.hos-drag-category{min-width:210px;max-width:250px;padding:0;border:0;background:transparent;border-radius:11px}
.hos-drag-category-label{min-height:50px;gap:9px;padding:9px 11px;border:1.5px solid color-mix(in srgb,var(--chip) 68%,#d8d4cc);outline:0;border-radius:10px;background:color-mix(in srgb,var(--chip) 9%,white);color:var(--ho-ink);box-shadow:0 1px 2px rgba(31,27,21,.04);text-align:left;transition:background .15s ease,box-shadow .15s ease,transform .15s ease}
.hos-drag-category-label:hover{background:color-mix(in srgb,var(--chip) 15%,white);box-shadow:0 4px 12px rgba(31,27,21,.08);transform:translateY(-1px)}
.hos-drag-category-label>span:first-child{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border-radius:8px;background:var(--chip);color:#fff}.hos-drag-category-label>span:first-child svg,.hos-drag-category-label>span:first-child i{width:19px;height:19px;font-size:19px}
.hos-drag-category-label b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hos-drag-category-label small{font-size:10px!important;line-height:1.1;white-space:nowrap;color:var(--ho-muted);opacity:1;margin-left:auto}.hos-drag-chevron{flex:0 0 auto;color:var(--ho-muted)}
.hos-drag-children{border-left:0!important;margin-left:0!important;padding-left:0!important}.hos-drag-category:hover .hos-drag-children,.hos-drag-category.hover-open .hos-drag-children,.hos-drag-category.expanded .hos-drag-children,.hos-drag-category.drag-active .hos-drag-children{padding:7px 0 2px!important;margin-top:2px!important}
.hos-drag-activity.child-choice{min-height:42px;border:1px solid color-mix(in srgb,var(--chip) 40%,#d8d4cc);background:color-mix(in srgb,var(--chip) 88%,#222);box-shadow:0 2px 6px rgba(31,27,21,.08)}
@media(max-width:1100px){.hos-drag-tray{grid-template-columns:1fr;gap:10px}.hos-drag-intro small{max-width:none}.hos-drag-category{min-width:205px}}


/* v0.13.2: sticky period headings below the floating planner tools */
@media (min-width:1101px){
  .hos-table-wrap{overflow:visible}
  .hos-schedule thead th{
    top:var(--hos-schedule-sticky-top,76px);
    z-index:13;
    box-shadow:0 1px 0 var(--ho-line),0 5px 12px rgba(31,27,21,.06);
  }
  .hos-schedule thead th:first-child{z-index:15}
}

/* v0.14.0: compact full-camp matrix overview */
.hos-overview-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin:0 0 12px;padding:10px 12px;border:1px solid var(--ho-line);border-radius:12px;background:#fff}
.hos-overview-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--ho-muted)}
.hos-overview-legend-item>i{width:9px;height:9px;border-radius:3px;background:var(--chip)}
.hos-overview-legend-item svg,.hos-overview-legend-item .mdi{width:15px;height:15px;font-size:15px;color:var(--chip)}
.hos-overview-legend-item b{color:var(--ho-ink);font-weight:700}
.hos-overview-scroll{position:relative;max-width:100%;overflow:auto;border:1px solid var(--ho-line);border-radius:14px;background:#fff;box-shadow:0 4px 18px rgba(31,27,21,.05);max-height:calc(100vh - 235px)}
.hos-overview-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:11px}
.hos-overview-table th,.hos-overview-table td{border-right:1px solid #e8e3da;border-bottom:1px solid #ece8e0;background:#fff}
.hos-overview-table thead th{position:sticky;top:0;z-index:8;background:#f5f2ec;text-transform:uppercase;letter-spacing:.04em;font-weight:800;color:#2e2b27}
.hos-overview-table thead tr:first-child th{height:34px}
.hos-overview-table thead tr:nth-child(2) th{top:34px;height:28px}
.hos-overview-corner{left:0;z-index:12!important;min-width:190px;text-align:left;padding:0 12px}
.hos-overview-day{text-align:center;min-width:150px;border-bottom:1px solid #d8d2c8!important}
.hos-overview-period{width:30px;min-width:30px;max-width:30px;text-align:center;padding:0}
.hos-overview-unit{position:sticky;left:0;z-index:5;width:190px;min-width:190px;max-width:190px;padding:7px 10px;text-align:left;background:#fff!important;box-shadow:3px 0 8px rgba(31,27,21,.04)}
.hos-overview-unit b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.hos-overview-unit small{display:block;color:var(--ho-muted);font-size:9px;margin-top:1px}
.hos-overview-table td{width:30px;min-width:30px;height:34px;padding:2px;text-align:center}
.hos-overview-chip{position:relative;display:grid;place-items:center;width:25px;height:25px;margin:auto;border-radius:7px;background:var(--chip);color:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);cursor:help}
.hos-overview-chip svg{width:16px!important;height:16px!important}.hos-overview-chip .mdi{font-size:17px!important;line-height:1}.hos-overview-chip .hos-craft-icon{width:16px!important;height:16px!important}
.hos-overview-chip.capacity-over{outline:2px solid #c82b22;outline-offset:1px}.hos-overview-chip>em{position:absolute;right:-5px;top:-6px;display:grid;place-items:center;width:13px;height:13px;border-radius:50%;background:#c82b22;color:#fff;font-style:normal;font-size:9px;font-weight:900;border:1px solid #fff}
.hos-overview-empty{display:block;width:5px;height:5px;margin:auto;border-radius:50%;background:#e8e3da}
.hos-overview-group-row th{position:sticky;left:0;z-index:6;padding:6px 10px;text-align:left;background:#ece8e0!important;color:#2e2b27;border-top:2px solid var(--ho-accent,#ff5a1f);font-size:11px}
@media(max-width:760px){.hos-overview-scroll{max-height:calc(100vh - 205px)}.hos-overview-corner,.hos-overview-unit{min-width:145px;width:145px;max-width:145px}.hos-overview-day{min-width:140px}}

/* v0.16.0: backup controls */
.hos-settings-section{margin:0 0 28px}.hos-settings-section>div:first-child h2{margin:4px 0 4px;font-size:20px}.hos-settings-section>div:first-child p{margin:0 0 12px;color:var(--ho-muted);max-width:780px}.hos-backup-section{padding-top:24px;border-top:1px solid var(--ho-line)}.hos-setting-card small{display:block;color:var(--ho-muted);font-size:11px;line-height:1.35;margin-top:4px;max-width:300px}.hos-setting-card.accent{border-color:color-mix(in srgb,var(--ho-orange) 55%,var(--ho-line));background:color-mix(in srgb,var(--ho-orange) 5%,#fff)}

/* v0.16.0: smartphone-first activity-leader view */
@media(max-width:760px){
 .hos-main-panel{padding-top:12px}
 .hos-view-head h1{font-size:25px;line-height:1.08;margin-bottom:5px}
 .hos-view-head p{font-size:12px;line-height:1.4}
 .hos-head-actions{display:grid!important;grid-template-columns:1fr auto;width:100%;gap:8px}
 .hos-head-actions .hos-select{width:100%;min-width:0;height:46px;font-size:15px}
 .hos-segmented{height:46px}.hos-segmented button{padding:8px 13px;min-width:55px}
 .hos-activity-title{position:sticky;top:113px;z-index:10;margin:0 -2px 9px;padding:10px 12px;border-radius:10px;box-shadow:0 5px 16px rgba(31,27,21,.11)}
 .hos-activity-title>span{display:grid;place-items:center;min-width:34px}.hos-activity-title>span svg{width:25px!important;height:25px!important}.hos-activity-title>span .mdi{font-size:26px!important}
 .hos-activity-title strong{font-size:16px}.hos-activity-title small{font-size:10px;text-align:right;max-width:43%;line-height:1.25}
 .hos-activity-day>.hos-days,.hos-main-panel>.hos-days{position:sticky;top:165px;z-index:9;background:var(--ho-bg)}
 .hos-day-slot{border-radius:13px;box-shadow:0 2px 10px rgba(31,27,21,.04)}
 .hos-day-slot header{position:sticky;top:165px;z-index:2;padding:12px 13px;align-items:center}.hos-day-slot header b{font-size:15px}.hos-day-slot header span{font-size:12px;font-weight:750}
 .hos-participant-row{padding:12px 13px;font-size:14px;line-height:1.25;background:#fff}
 .hos-category-activity-row{margin:8px;padding:10px;border-radius:11px}.hos-category-activity-name b{font-size:14px}
 .hos-week-wrap{max-height:calc(100vh - 250px)}
 .hos-week-grid{grid-template-columns:96px repeat(var(--days),minmax(118px,1fr))}.hos-week-cell{min-height:92px}.hos-week-corner,.hos-week-period{padding:9px}
}

/* v0.16.0: public participant program - mobile cards, no internal overbooking state */
.hos-public-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:14px}.hos-public-head h2{margin:0 0 3px}.hos-public-days{margin:0 0 16px;overflow:auto;flex-wrap:nowrap;scrollbar-width:thin}.hos-public-days .hos-day{white-space:nowrap;flex:0 0 auto}.hos-public-mobile{display:none}.hos-public-table-wrap{overflow:auto}
@media(max-width:760px){
 body:has(.hos-public){margin:0;background:#f5f5f2}
 .hos-public .hos-shell{min-height:100vh;box-shadow:none}
 .hos-public .hos-top{padding:13px 14px;background:#efede8}.hos-public .hos-top h1{font-size:20px;margin:2px 0 0}.hos-public .hos-top .hos-kicker{font-size:9px}
 .hos-public .hos-main{padding:12px 10px 28px;overflow:visible!important}
 .hos-public-head{align-items:flex-start;margin-bottom:8px}.hos-public-head h2{font-size:20px}.hos-public-head>b{display:none}
 .hos-public-days{position:sticky;top:0;z-index:20;margin:0 -10px 12px;padding:8px 10px;background:rgba(245,245,242,.96);backdrop-filter:blur(8px);border-bottom:1px solid #ddd8cf}
 .hos-public-days .hos-day{min-height:40px;padding:9px 12px;font-size:12px}
 .hos-public-table-wrap{display:none}.hos-public-mobile{display:grid;gap:12px}
 .hos-public-period{border:1px solid #ddd8cf;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 3px 12px rgba(31,27,21,.04)}
 .hos-public-period>header{display:flex;justify-content:space-between;align-items:center;padding:11px 12px;background:#efede8;border-bottom:1px solid #ddd8cf}.hos-public-period>header span{font-weight:850;font-size:15px}.hos-public-period>header small{color:var(--ho-muted);font-size:10px}
 .hos-public-period-list{display:grid}.hos-public-unit-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(145px,46%);gap:10px;align-items:center;padding:10px 11px;border-bottom:1px dotted #d8d3ca}.hos-public-unit-card:last-child{border-bottom:0}
 .hos-public-unit-meta{min-width:0}.hos-public-unit-meta b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hos-public-unit-meta small{display:block;color:var(--ho-muted);font-size:10px;margin-top:2px;line-height:1.25}
 .hos-public-mobile-activity{min-width:0;display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:9px;background:var(--chip);color:#fff}.hos-public-mobile-activity>span{display:grid;place-items:center;flex:0 0 23px}.hos-public-mobile-activity svg{width:21px!important;height:21px!important}.hos-public-mobile-activity .mdi{font-size:22px!important}.hos-public-mobile-activity strong{font-size:12px;line-height:1.18;white-space:normal;overflow-wrap:anywhere}
 .hos-public-free{justify-self:end;color:#9a958d;font-size:11px}
}
@media(max-width:420px){.hos-public-unit-card{grid-template-columns:minmax(0,1fr) minmax(130px,48%);gap:7px;padding:9px}.hos-public-mobile-activity{padding:8px}.hos-public-unit-meta b{font-size:12px}}

/* Public programme language selector */
.hos-public .hos-top{display:flex;justify-content:space-between;align-items:center;gap:16px}
.hos-public-language{display:inline-flex;align-items:center;padding:3px;background:#fff;border:1px solid var(--ho-line);border-radius:999px;box-shadow:0 1px 3px rgba(31,27,21,.05)}
.hos-public-language button{appearance:none;border:0;background:transparent;color:var(--ho-muted);font:inherit;font-size:12px;font-weight:800;line-height:1;padding:8px 11px;border-radius:999px;cursor:pointer}
.hos-public-language button.active{background:var(--ho-ink);color:#fff}
.hos-public-language button:focus-visible{outline:2px solid var(--ho-orange);outline-offset:2px}
@media(max-width:760px){
 .hos-public .hos-top{align-items:flex-start}
 .hos-public-language{flex:0 0 auto}
 .hos-public-language button{font-size:11px;padding:7px 9px}
}


/* v0.18.0: lejrperioder som sikker startside efter login */
.hos-periods-head{align-items:end}
.hos-period-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1180px}
.hos-period-card{appearance:none;width:100%;min-height:108px;border:1px solid var(--ho-line);border-radius:16px;background:#fff;color:var(--ho-ink);padding:18px;text-align:left;display:grid;grid-template-columns:48px 1fr auto;grid-template-areas:"icon copy arrow" "icon status arrow";align-items:center;gap:5px 14px;cursor:pointer;box-shadow:0 7px 24px #00000008;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.hos-period-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px #00000012;border-color:#a8a097}
.hos-period-card.current{border-color:var(--ho-orange);box-shadow:inset 0 0 0 1px var(--ho-orange),0 8px 25px #0000000a}
.hos-period-icon{grid-area:icon;width:48px;height:48px;border-radius:13px;background:#f3efe8;display:grid;place-items:center;font-size:24px;color:var(--ho-orange);font-weight:800}
.hos-period-copy{grid-area:copy;min-width:0;display:grid;gap:5px}.hos-period-copy strong{font-size:18px;line-height:1.2}.hos-period-copy small{color:var(--ho-muted);font-size:13px}
.hos-period-current{grid-area:status;width:max-content;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#914314;background:#fff0e8;border-radius:999px;padding:3px 8px}
.hos-period-arrow{grid-area:arrow;font-size:22px;color:#8b857c;align-self:center}
@media(max-width:980px){.hos-period-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.hos-period-grid{grid-template-columns:1fr;gap:10px}.hos-period-card{min-height:92px;padding:14px;grid-template-columns:42px 1fr auto}.hos-period-icon{width:42px;height:42px;border-radius:11px}.hos-period-copy strong{font-size:17px}}

/* v0.19 - quick unit actions and temporary split */
.hos-group-head td{position:relative}.hos-group-row-actions{display:flex;align-items:center;gap:10px;float:right}.hos-mini-action{appearance:none;border:1px solid #d9d4ca;background:#fff;color:#252525;border-radius:999px;padding:6px 10px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;line-height:1}.hos-mini-action:hover{border-color:#ff5a1f;color:#ff5a1f}.hos-mini-action.subtle{padding:4px 8px;font-size:11px;background:#f7f5f0}.hos-unit-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.hos-unit-name>small{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:5px}.hos-participant-pill{display:inline-flex;align-items:center;border-radius:999px;background:#ece9e2;color:#222;padding:3px 8px;font-weight:800;font-size:12px;white-space:nowrap}.hos-split-note{display:block;margin-top:5px;font-size:11px;font-style:normal;font-weight:800;color:#7b5d00;background:#fff4c7;border-radius:999px;padding:3px 7px;width:max-content;max-width:100%}
@media(max-width:760px){.hos-group-head td{padding-top:10px;padding-bottom:10px}.hos-group-row-actions{float:none;margin-top:8px;justify-content:space-between}.hos-mini-action{min-height:34px;padding:7px 11px}.hos-unit-title .hos-mini-action{min-height:30px}.hos-participant-pill{font-size:13px;padding:4px 9px}}
.hos-split-edit-note{align-self:end;margin-bottom:7px;font-size:11px;font-weight:800;color:#7b5d00;max-width:150px}


/* v0.20.1 booking notes */
.hos-booking-note-field{display:grid;gap:6px;margin:14px 0 4px;font-weight:800}.hos-booking-note-field>small{font-weight:500;color:var(--ho-muted)}
.hos-note-trigger,.hos-public-note-trigger{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:999px;border:1px solid #ffffff80;background:#ffffffee;color:#222;font-size:13px;line-height:1;cursor:pointer;box-shadow:0 1px 4px #0002;flex:0 0 auto}.hos-note-trigger:hover,.hos-public-note-trigger:hover{transform:translateY(-1px);box-shadow:0 3px 8px #0003}.hos-note-trigger{position:absolute;right:7px;bottom:7px}.hos-activity-chip.has-note{position:relative;padding-right:34px}.hos-note-dialog-copy{margin-top:18px;padding:16px;border:1px solid var(--ho-line);border-radius:10px;background:#f7f5f0;line-height:1.55;white-space:normal;overflow-wrap:anywhere}
.hos-public-activity-card{display:flex;align-items:center;gap:7px;position:relative}.hos-public-activity-copy,.hos-public-mobile-copy{display:flex;align-items:center;gap:7px;min-width:0;flex:1}.hos-public-activity-copy strong{font:inherit;min-width:0}.hos-public-note-trigger{margin-left:auto;border-color:#0002;background:#fff;color:#222}.hos-public-mobile-activity{display:flex;align-items:center;gap:8px}.hos-public-mobile-copy strong{flex:1;min-width:0}
.hos-public-note-backdrop{position:fixed;inset:0;background:rgba(25,22,19,.62);display:flex;align-items:center;justify-content:center;padding:18px;z-index:100001}.hos-public-note-dialog{position:relative;width:min(480px,100%);background:#fff;border-radius:16px;padding:24px;box-shadow:0 18px 70px #0005}.hos-public-note-dialog h3{margin:5px 36px 14px 0;font-size:22px}.hos-public-note-copy{padding:15px;border-radius:10px;background:#f5f2ec;line-height:1.55;overflow-wrap:anywhere}.hos-public-note-x{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:32px;line-height:1;cursor:pointer}.hos-public-note-close{margin-top:18px;width:100%}
@media(max-width:760px){.hos-note-trigger,.hos-public-note-trigger{width:30px;height:30px;font-size:15px}.hos-note-trigger{right:6px;bottom:6px}.hos-activity-chip.has-note{padding-right:39px}.hos-public-note-backdrop{padding:0;align-items:flex-end}.hos-public-note-dialog{width:100%;border-radius:18px 18px 0 0;padding:24px 18px 28px}.hos-public-mobile-copy{gap:10px}}

/* v0.20.3 availability in booking picker */
.hos-seat-status{display:inline-flex;align-items:center;gap:7px;width:max-content;max-width:100%;margin-top:4px;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;line-height:1.1;background:#eef0ed;color:#2d312d}.hos-seat-status small{display:inline!important;margin:0!important;font-size:10px!important;color:inherit!important;opacity:.75!important}.hos-seat-status.available{background:#e7f4e9;color:#246631}.hos-seat-status.full{background:#fff0d9;color:#8a5200}.hos-seat-status.over{background:#ffe5e2;color:#a32920}.hos-seat-status.unlimited{background:#edf0f5;color:#475263}@media(max-width:480px){.hos-seat-status{font-size:10px;padding:4px 7px}.hos-seat-status small{font-size:9px!important}}

/* v0.21 - temporary units sourced from permanent units */
.hos-mini-action.temporary{border-style:dashed;background:#fff8e8;border-color:#d5a94b;color:#6f5418}
.hos-mini-action.temporary:hover{border-color:#ff5a1f;color:#ff5a1f;background:#fff4e3}
.hos-temporary-unit-row .hos-unit-name{background:#fffaf0}
.hos-temp-unit-note{display:block;margin-top:5px;font-size:11px;font-style:normal;font-weight:800;color:#775a16;background:#fff0bf;border:1px dashed #d8b55a;border-radius:999px;padding:3px 7px;width:max-content;max-width:100%}
.hos-mini-action.dangerish{color:#a52a1f;border-color:#e0b9b4;background:#fff}
.hos-mini-action.dangerish:hover{background:#fff1ef;border-color:#c63a2d;color:#c63a2d}
@media(max-width:760px){.hos-group-row-actions{gap:6px;flex-wrap:wrap;justify-content:flex-end}.hos-mini-action.temporary{font-size:11px}.hos-temp-unit-note{white-space:normal}}

/* v0.22.0: category operations / booking from the activity side */
.hos-category-operations-day{display:grid;gap:14px;margin-top:12px}
.hos-ops-period{border:1px solid var(--ho-line);border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 4px 16px rgba(31,27,21,.04)}
.hos-ops-period-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;background:#f3f0ea;border-bottom:1px solid var(--ho-line)}
.hos-ops-period-head>div{display:grid;gap:2px}.hos-ops-period-head b{font-size:15px}.hos-ops-period-head small,.hos-ops-period-head>span{font-size:11px;color:var(--ho-muted);font-weight:700}
.hos-ops-activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:11px}
.hos-ops-activity-card{appearance:none;border:1px solid color-mix(in srgb,var(--chip) 35%,#d8d4cc);border-left:5px solid var(--chip);border-radius:11px;background:color-mix(in srgb,var(--chip) 5%,#fff);color:var(--ho-ink);min-height:76px;padding:10px 11px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;text-align:left;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}
.hos-ops-activity-card:hover{transform:translateY(-1px);box-shadow:0 5px 14px #00000012}.hos-ops-icon{display:grid;place-items:center;color:var(--chip)}.hos-ops-icon svg{width:26px!important;height:26px!important}.hos-ops-icon .mdi{font-size:27px!important}.hos-ops-copy{min-width:0;display:grid;gap:4px}.hos-ops-copy b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hos-ops-copy small{font-size:10px;color:var(--ho-muted)}
.hos-ops-cap{border-radius:999px;padding:5px 8px;font-size:10px;font-weight:850;white-space:nowrap;background:#edf0ed;color:#374138}.hos-ops-cap.available{background:#e4f4e7;color:#236232}.hos-ops-cap.full{background:#fff0d9;color:#855000}.hos-ops-cap.over{background:#ffe3df;color:#a12b22}.hos-ops-cap.unlimited{background:#edf0f5;color:#4a5563}
.hos-ops-week-scroll{overflow:auto;max-width:100%;border:1px solid var(--ho-line);border-radius:14px;background:#fff;box-shadow:0 4px 16px rgba(31,27,21,.04)}
.hos-ops-week{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:11px}.hos-ops-week th,.hos-ops-week td{border-right:1px solid #e7e2d9;border-bottom:1px solid #e7e2d9;padding:7px;background:#fff;vertical-align:top}.hos-ops-week thead th{position:sticky;top:0;z-index:4;background:#f3f0ea;min-width:175px}.hos-ops-week thead th:first-child{position:sticky;left:0;z-index:7;min-width:185px}.hos-ops-week tbody th{position:sticky;left:0;z-index:3;background:#fff;min-width:185px;text-align:left}.hos-ops-date{appearance:none;border:0;background:transparent;font:inherit;font-weight:850;cursor:pointer;padding:4px 6px;border-radius:7px}.hos-ops-date.active{background:#2d343d;color:#fff}
.hos-ops-week-activity{display:grid;grid-template-columns:25px 1fr;grid-template-areas:"i b" "i s";gap:1px 7px;align-items:center;color:var(--chip)}.hos-ops-week-activity svg,.hos-ops-week-activity .mdi{grid-area:i}.hos-ops-week-activity b{grid-area:b;color:var(--ho-ink);font-size:12px}.hos-ops-week-activity small{grid-area:s;color:var(--ho-muted);font-weight:500}
.hos-ops-mini-periods{display:grid;gap:4px;min-width:150px}.hos-ops-mini-slot{appearance:none;border:1px solid #dedad2;border-radius:8px;background:#f8f7f4;color:#2b2b2b;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 7px;font:inherit;cursor:pointer}.hos-ops-mini-slot:hover{border-color:#9f998f}.hos-ops-mini-slot span{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#e9e6df;font-weight:900}.hos-ops-mini-slot b{font-size:10px}.hos-ops-mini-slot.available{background:#f2faf3}.hos-ops-mini-slot.full{background:#fff8ec}.hos-ops-mini-slot.over{background:#fff0ee;border-color:#e7aaa4}.hos-ops-mini-slot.unlimited{background:#f5f7fa}
.hos-ops-slot-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:15px 0}.hos-ops-slot-summary>div{padding:11px;border:1px solid var(--ho-line);border-radius:10px;background:#f7f5f0;display:grid;gap:3px}.hos-ops-slot-summary small{color:var(--ho-muted);font-size:10px}.hos-ops-slot-summary b{font-size:17px}.hos-ops-slot-summary.over>div:first-child{background:#fff0ee;border-color:#e7aaa4}.hos-ops-slot-summary.available>div:first-child{background:#eef9f0;border-color:#bcdcc1}
.hos-ops-subhead{font-size:14px;margin:18px 0 7px}.hos-ops-booked-list{border:1px solid var(--ho-line);border-radius:10px;overflow:hidden}.hos-ops-booked-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 11px;border-bottom:1px dotted #d8d3ca}.hos-ops-booked-row:last-child{border-bottom:0}.hos-ops-booked-row span{display:grid;gap:2px}.hos-ops-booked-row small{color:var(--ho-muted);font-size:10px}.hos-ops-booked-row strong{min-width:34px;text-align:right}
.hos-target-list{display:grid;gap:7px;max-height:55vh;overflow:auto;margin:10px 0}.hos-target-choice{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--ho-line);border-radius:10px;padding:9px 11px;background:#fff;cursor:pointer}.hos-target-choice:hover{border-color:#aaa39a}.hos-target-choice>span{display:grid;gap:2px}.hos-target-choice small{color:var(--ho-muted);font-size:10px}.hos-target-choice em{font-style:normal;font-size:10px;font-weight:850;border-radius:999px;padding:4px 7px;background:#e5f4e8;color:#236232}.hos-target-choice.over em{background:#ffe3df;color:#a12b22}.hos-target-choice.conflict em{background:#fff0d9;color:#855000}.hos-target-choice.same{opacity:.65}.hos-target-choice.same em{background:#edf0f5;color:#4a5563}
@media(max-width:900px){.hos-ops-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.hos-ops-activity-grid{grid-template-columns:1fr}.hos-ops-period-head{align-items:flex-start}.hos-ops-activity-card{grid-template-columns:32px minmax(0,1fr) auto}.hos-ops-slot-summary{grid-template-columns:repeat(2,1fr)}.hos-target-choice{grid-template-columns:22px minmax(0,1fr)}.hos-target-choice em{grid-column:2;width:max-content}.hos-ops-week thead th:first-child,.hos-ops-week tbody th{min-width:145px}.hos-ops-week thead th{min-width:155px}}

/* v0.22.1: stronger visual capacity states in category operations */
.hos-category-operations-day{display:grid;gap:14px}
.hos-ops-period{border-width:2px;box-shadow:0 6px 20px rgba(31,27,21,.07)}
.hos-ops-period-head{background:#ece7de;padding:13px 15px}
.hos-ops-period-head b{font-size:16px}.hos-ops-period-head>span{background:#fff;border:1px solid #d7d0c5;border-radius:999px;padding:5px 9px;color:#39352f}
.hos-ops-activity-card{border-width:2px;border-left-width:7px;box-shadow:0 2px 7px rgba(0,0,0,.05)}
.hos-ops-activity-card.available{background:#dff3e3;border-color:#70b87e;border-left-color:#25823a}
.hos-ops-activity-card.full{background:#ffe8b8;border-color:#e0a43a;border-left-color:#b66a00}
.hos-ops-activity-card.over{background:#ffd8d4;border-color:#d76a60;border-left-color:#b42318;box-shadow:0 0 0 1px rgba(180,35,24,.08),0 3px 10px rgba(180,35,24,.10)}
.hos-ops-activity-card.unlimited{background:#e5edf8;border-color:#8da8cf;border-left-color:#416da6}
.hos-ops-activity-card.available .hos-ops-icon{color:#1d6f30}.hos-ops-activity-card.full .hos-ops-icon{color:#9a5800}.hos-ops-activity-card.over .hos-ops-icon{color:#a22017}.hos-ops-activity-card.unlimited .hos-ops-icon{color:#355f96}
.hos-ops-cap{font-size:11px;padding:6px 9px;border:1px solid transparent;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.hos-ops-cap.available{background:#247d36;color:#fff;border-color:#1d672c}.hos-ops-cap.full{background:#b66a00;color:#fff;border-color:#945700}.hos-ops-cap.over{background:#b42318;color:#fff;border-color:#941c13}.hos-ops-cap.unlimited{background:#416da6;color:#fff;border-color:#345b8d}
.hos-ops-copy small{color:#4e4941;font-weight:700}
.hos-ops-mini-slot{border-width:2px;font-weight:800;min-height:34px}
.hos-ops-mini-slot.available{background:#dff3e3;border-color:#70b87e;color:#185f29}.hos-ops-mini-slot.available span{background:#247d36;color:#fff}
.hos-ops-mini-slot.full{background:#ffe8b8;border-color:#e0a43a;color:#7a4700}.hos-ops-mini-slot.full span{background:#b66a00;color:#fff}
.hos-ops-mini-slot.over{background:#ffd8d4;border-color:#d76a60;color:#8f1b13}.hos-ops-mini-slot.over span{background:#b42318;color:#fff}
.hos-ops-mini-slot.unlimited{background:#e5edf8;border-color:#8da8cf;color:#315988}.hos-ops-mini-slot.unlimited span{background:#416da6;color:#fff}
.hos-ops-mini-slot:hover{filter:brightness(.97);box-shadow:0 2px 7px rgba(0,0,0,.10)}
.hos-ops-slot-summary.available>div:first-child{background:#dff3e3;border:2px solid #70b87e;color:#185f29}.hos-ops-slot-summary.full>div:first-child{background:#ffe8b8;border:2px solid #e0a43a;color:#7a4700}.hos-ops-slot-summary.over>div:first-child{background:#ffd8d4;border:2px solid #d76a60;color:#8f1b13}.hos-ops-slot-summary.unlimited>div:first-child{background:#e5edf8;border:2px solid #8da8cf;color:#315988}
.hos-ops-legend{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.hos-ops-legend span{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:850;border:1px solid transparent}.hos-ops-legend i{width:9px;height:9px;border-radius:50%;display:inline-block}.hos-ops-legend .available{background:#dff3e3;border-color:#70b87e;color:#185f29}.hos-ops-legend .available i{background:#247d36}.hos-ops-legend .full{background:#ffe8b8;border-color:#e0a43a;color:#7a4700}.hos-ops-legend .full i{background:#b66a00}.hos-ops-legend .over{background:#ffd8d4;border-color:#d76a60;color:#8f1b13}.hos-ops-legend .over i{background:#b42318}.hos-ops-legend .unlimited{background:#e5edf8;border-color:#8da8cf;color:#315988}.hos-ops-legend .unlimited i{background:#416da6}
@media(max-width:620px){.hos-ops-legend{gap:6px}.hos-ops-legend span{padding:5px 8px;font-size:10px}.hos-ops-activity-card{min-height:82px}.hos-ops-cap{font-size:10px}}

/* v0.23.0 category program / arrival overview */
.hos-category-agenda-intro{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:0 0 12px;padding:12px 14px;border:1px solid #cfc8bc;border-radius:12px;background:#f4f0e8}.hos-category-agenda-intro b{font-size:14px}.hos-category-agenda-intro span{font-size:11px;color:var(--ho-muted);font-weight:650}
.hos-category-agenda{display:grid;gap:14px}.hos-category-agenda-period{border:2px solid #d6d0c6;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 5px 18px rgba(31,27,21,.06)}.hos-category-agenda-period>header{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#e9e3d9;border-bottom:1px solid #d6d0c6}.hos-category-agenda-period>header div{display:grid;gap:2px}.hos-category-agenda-period>header b{font-size:16px}.hos-category-agenda-period>header small{font-size:10px;color:var(--ho-muted)}.hos-category-agenda-period>header strong{font-size:11px;background:#fff;border:1px solid #cfc8bc;border-radius:999px;padding:6px 9px}.hos-category-agenda-list{display:grid}.hos-category-agenda-row{appearance:none;border:0;border-bottom:1px solid #e7e2d9;border-left:7px solid var(--chip);background:#fff;color:var(--ho-ink);padding:11px 13px;display:grid;grid-template-columns:34px minmax(150px,1fr) 28px minmax(160px,1.1fr);gap:10px;align-items:center;text-align:left;cursor:pointer}.hos-category-agenda-row:last-child{border-bottom:0}.hos-category-agenda-row:hover{background:color-mix(in srgb,var(--chip) 7%,#fff)}.hos-category-agenda-icon{display:grid;place-items:center;color:var(--chip)}.hos-category-agenda-icon svg{width:27px!important;height:27px!important}.hos-category-agenda-icon .mdi{font-size:28px!important}.hos-category-agenda-who,.hos-category-agenda-what{display:grid;gap:2px}.hos-category-agenda-who b,.hos-category-agenda-what b{font-size:13px}.hos-category-agenda-who small,.hos-category-agenda-what small{font-size:10px;color:var(--ho-muted);font-weight:650}.hos-category-agenda-what b{color:var(--chip)}.hos-category-agenda-arrow{font-size:20px;color:#8d877d;text-align:center}.hos-category-agenda-empty{padding:18px;text-align:center;color:var(--ho-muted);font-size:12px;background:#faf9f7}
@media(max-width:620px){.hos-category-agenda-intro{display:grid;gap:4px}.hos-category-agenda-row{grid-template-columns:30px minmax(0,1fr);grid-template-areas:"i who" "i what";gap:4px 9px;padding:11px}.hos-category-agenda-icon{grid-area:i}.hos-category-agenda-who{grid-area:who}.hos-category-agenda-what{grid-area:what;padding-top:5px;border-top:1px dotted #ddd6cc}.hos-category-agenda-arrow{display:none}.hos-category-agenda-what b:before{content:"→ ";color:#8d877d}.hos-category-agenda-period>header{position:sticky;top:0;z-index:2}}

/* v0.23.1 clearer activity-vs-unit capacity labels */
.hos-activity-capacity-line{display:flex!important;align-items:center;gap:7px;flex-wrap:wrap;margin-top:3px;color:var(--ho-muted)!important}.hos-activity-capacity-label{font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#6c665d}.hos-activity-capacity-badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:900;line-height:1;border:1px solid #c9c3ba;background:#f4f1ec;color:#292723}.hos-activity-capacity-badge.available{background:#dff3e3;border-color:#70b87e;color:#185f29}.hos-activity-capacity-badge.full{background:#ffe8b8;border-color:#e0a43a;color:#7a4700}.hos-activity-capacity-badge.over{background:#ffd8d4;border-color:#d76a60;color:#8f1b13}.hos-activity-capacity-badge.unlimited{background:#e5edf8;border-color:#8da8cf;color:#315988}@media(max-width:620px){.hos-activity-capacity-line{gap:5px}.hos-activity-capacity-label{width:100%;font-size:8px}.hos-activity-capacity-badge{font-size:10px;padding:4px 6px}}

/* v0.24.1: make saved-view shortcut unmistakably visible */
#copyActivityShortcut{background:#fff7f1;border:2px solid var(--ho-orange);color:var(--ho-ink);font-weight:800;white-space:nowrap}
#copyActivityShortcut:hover{background:var(--ho-orange);color:#fff}
@media(max-width:760px){#copyActivityShortcut{grid-column:1/-1;width:100%;min-height:46px;order:-1}}

/* v1.0.0-rc7: balanced activity tiles; capacity is deliberately hidden in drag library */
.hos-drag-activity.child-choice{
  min-height:44px;
  min-width:190px;
  max-width:240px;
  padding:8px 10px;
  gap:8px;
  font-size:13px;
  line-height:1.2;
  justify-content:flex-start;
}
.hos-drag-activity.child-choice .hos-drag-icon{
  flex:0 0 24px;
  display:grid;
  place-items:center;
  font-size:21px;
  line-height:1;
}
.hos-drag-activity.child-choice .hos-drag-icon svg{width:21px!important;height:21px!important}
.hos-drag-activity.child-choice .hos-drag-icon .mdi{font-size:21px!important}
.hos-drag-activity.child-choice .hos-drag-name{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
  font-weight:800;
  text-align:left;
}
.hos-drag-activity.child-choice .hos-temp-mini{
  margin-left:auto;
  flex:0 0 auto;
  font-size:8px;
  line-height:1.1;
  text-align:right;
  max-width:60px;
}

/* The picker knows date + period, so capacity information remains useful there. */
.hos-picker-grid{gap:10px}
.hos-pick{
  min-height:72px;
  padding:10px 12px;
  gap:10px;
  border-width:2px;
  border-radius:9px;
}
.hos-pick.child-choice{border-left-width:4px}
.hos-pick-icon{
  font-size:25px;
  width:32px;
  display:grid;
  place-items:center;
  line-height:1;
}
.hos-pick-icon svg{width:25px!important;height:25px!important}
.hos-pick-icon .mdi{font-size:25px!important}
.hos-pick-copy{gap:3px;min-width:0}
.hos-pick-copy b{
  font-size:14px;
  line-height:1.2;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
}
.hos-pick-copy>small{
  margin-top:1px!important;
  font-size:10.5px!important;
  line-height:1.25;
}
.hos-seat-status{
  margin-top:4px;
  padding:3px 7px;
  gap:6px;
  font-size:9.5px;
}
.hos-seat-status small{font-size:9px!important}
.hos-pick-check{width:18px;height:18px;line-height:18px;font-size:11px;right:7px;top:7px}

@media(max-width:760px){
  .hos-drag-activity.child-choice{min-width:170px;max-width:210px;min-height:42px;padding:7px 9px}
  .hos-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .hos-pick{min-height:68px;padding:9px 10px}
  .hos-pick-copy b{font-size:13.5px}
}
@media(max-width:480px){
  .hos-picker-grid{grid-template-columns:1fr}
  .hos-pick{min-height:64px;padding:9px 10px;gap:9px}
  .hos-pick-icon{width:28px;font-size:22px}
  .hos-pick-icon svg{width:22px!important;height:22px!important}
  .hos-pick-copy b{font-size:13px}
  .hos-pick-copy>small{font-size:10px!important}
  .hos-seat-status{font-size:9px;padding:3px 6px}
  .hos-seat-status small{font-size:8.5px!important}
}


/* rc12: compact group sorting control in camp plan */
.hos-sort-btn{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.hos-sort-btn span{font-size:16px;line-height:1}

/* Internal language switch */
.hos-app-language{flex:0 0 auto}
@media(max-width:760px){.hos-app-language button{font-size:10px;padding:6px 8px}}
@media(max-width:480px){.hos-app-language{margin-right:2px}.hos-app-language button{padding:6px 7px}}

/* v1.0.0-rc17: slightly smaller activity names in schedule cards */
.hos-activity-chip .hos-chip-main > span:first-child{
  font-size:14px;
  line-height:1.18;
  font-weight:800;
}

/* v1.0.0-rc18: align capacity labels consistently on the right */
.hos-activity-chip .hos-chip-main{
  flex:1 1 auto;
  width:100%;
}
.hos-activity-chip .hos-capacity-label{
  justify-self:end;
  margin-left:0!important;
}
.hos-activity-chip.has-note .hos-capacity-label{
  margin-right:28px!important;
}
@media(max-width:760px){
  .hos-activity-chip.has-note .hos-capacity-label{margin-right:34px!important}
}

/* v1.0.0-rc19: QR code on group overview, while keeping copy-link action */
.hos-group-share{display:grid;grid-template-columns:132px 1fr;gap:14px;align-items:center;padding:13px 15px;background:#faf9f6}
.hos-group-share .hos-card-actions{padding:0;align-self:center}
.hos-group-qr{display:grid;justify-items:center;gap:5px;text-align:center}
.hos-group-qr img{display:block;width:116px;height:116px;background:#fff;border:1px solid var(--ho-line);border-radius:8px;padding:4px}
.hos-group-qr small{font-size:10px;line-height:1.25;color:var(--ho-muted);max-width:126px}
@media(max-width:480px){.hos-group-share{grid-template-columns:112px 1fr;gap:10px}.hos-group-qr img{width:100px;height:100px}.hos-group-share .hos-card-actions{flex-direction:column}.hos-group-share .hos-card-actions .hos-btn{width:100%}}

/* v1.0.0-rc20: public programme mobile activity cards - keep names readable */
@media(max-width:760px){
 .hos-public-unit-card{grid-template-columns:minmax(0,42%) minmax(0,58%);gap:10px}
 .hos-public-mobile-activity{width:100%;min-width:0;display:grid;grid-template-columns:26px minmax(0,1fr);gap:9px;align-items:center}
 .hos-public-mobile-copy{min-width:0;width:100%;display:flex;align-items:center;gap:6px}
 .hos-public-mobile-activity strong{display:block;min-width:0;font-size:13px;line-height:1.22;white-space:normal;overflow-wrap:normal;word-break:normal;hyphens:none}
 .hos-public-mobile-activity>span:first-child{width:26px}
 .hos-public-mobile-activity.has-note,.hos-public-mobile-copy{padding-right:0}
}
@media(max-width:420px){
 .hos-public-unit-card{grid-template-columns:minmax(0,40%) minmax(0,60%);gap:8px;padding:9px}
 .hos-public-mobile-activity{padding:9px 10px}
 .hos-public-mobile-activity strong{font-size:12.5px}
}

/* rc22: separate participant count from age text in the public programme */
.hos-public-unit-details{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:3px}
.hos-public-participant-pill{display:inline-flex;align-items:center;width:max-content;padding:4px 8px;border-radius:999px;background:#efede8;color:var(--ho-ink);font-size:11px;font-weight:800;line-height:1.1;white-space:nowrap}
@media(max-width:760px){.hos-public-unit-meta .hos-public-participant-pill{margin-top:6px;font-size:10px;padding:4px 7px}.hos-public-unit-details{gap:5px}}

/* v1.0.0-rc23: activity leadership + Camp info */
.hos-leadership-badge{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-left:5px;opacity:.72;line-height:1;flex:0 0 auto}
.hos-leadership-badge .mdi{font-size:14px!important}.hos-leadership-badge .hos-svg-icon{width:14px!important;height:14px!important}
.hos-activity-chip .hos-leadership-badge{color:#fff;opacity:.85;margin-left:4px}.hos-drag-activity .hos-leadership-badge{margin-left:auto;color:inherit}.hos-library-item .hos-leadership-badge{position:absolute;right:10px;bottom:9px}.hos-library-item{position:relative}
.hos-activity-leadership-box{margin:18px 0;padding:14px;border:1px solid var(--ho-line);border-radius:12px;background:#f7f5f0}.hos-activity-leadership-box h3{margin:0 0 10px}.hos-activity-leadership-box label{display:grid;gap:6px}.hos-activity-leadership-box small{color:var(--ho-muted)}
.hos-info-editor-list{display:grid;gap:12px}.hos-info-editor-card{border:1px solid var(--ho-line);border-radius:14px;background:#fff;padding:16px}.hos-info-editor-card.local{border-left:5px solid #d49b31}.hos-info-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.hos-info-editor-head h3{margin:0 0 3px}.hos-info-editor-head small{color:var(--ho-muted)}.hos-info-preview{margin-top:12px;color:#555;line-height:1.5;white-space:normal}.hos-info-default-list{display:grid;gap:8px;margin:14px 0}.hos-info-default-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--ho-line);border-radius:10px;padding:9px 10px;background:#fff}.hos-drag-handle{cursor:grab;font-size:20px;color:#777}.hos-info-default-row:active .hos-drag-handle{cursor:grabbing}
.hos-public-tabs{display:flex;gap:6px;margin:2px 0 18px;border-bottom:1px solid #e3dfd6;padding-bottom:8px}.hos-public-tabs a{display:inline-flex;align-items:center;padding:8px 13px;border-radius:999px;text-decoration:none;color:#444;font-weight:800}.hos-public-tabs a.active{background:#272c33;color:#fff}.hos-public-info{display:grid;gap:10px;max-width:900px}.hos-public-info-item{border:1px solid #ded9cf;border-radius:12px;background:#fff;overflow:hidden}.hos-public-info-item summary{cursor:pointer;padding:14px 16px;font-weight:800;background:#f5f2ec;list-style:none}.hos-public-info-item summary::-webkit-details-marker{display:none}.hos-public-info-item summary:after{content:'+';float:right}.hos-public-info-item[open] summary:after{content:'−'}.hos-public-info-item>div{padding:15px 16px;line-height:1.58;color:#444}.hos-public-leadership{display:inline-flex;align-items:center;justify-content:center;opacity:.82;flex:0 0 auto}.hos-public-leadership .mdi{font-size:14px!important}.hos-public-leadership .hos-svg-icon{width:14px!important;height:14px!important}
@media(max-width:760px){.hos-info-editor-head{align-items:center}.hos-public-tabs{position:sticky;top:0;background:#fff;z-index:3;padding-top:7px}.hos-public-mobile-copy .hos-public-leadership{margin-left:3px}.hos-public-mobile-copy{flex-wrap:nowrap}}

/* rc24: Lejrinfo visual polish */
.hos-info-editor-head h3{font-size:20px;line-height:1.2;letter-spacing:-.01em}
.hos-info-editor-card{padding:14px 16px}
.hos-info-section-form{display:grid;gap:18px;margin-top:18px}
.hos-info-text-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}
.hos-info-section-form label{display:grid;gap:6px;font-size:12px;font-weight:750;color:var(--ho-ink);min-width:0}
.hos-info-section-form label>small{font-size:11px;font-weight:500;color:var(--ho-muted)}
.hos-info-section-form .hos-input{width:100%;min-width:0}
.hos-info-section-form textarea.hos-input{display:block;min-height:180px;resize:vertical;line-height:1.5;padding:12px 13px}
.hos-info-section-form .hos-override-check{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--ho-line);border-radius:10px;background:#f8f6f1}
.hos-info-section-form .hos-override-check input{margin-top:3px}
.hos-info-section-form .hos-override-check span{display:grid;gap:2px}
@media(max-width:760px){.hos-info-editor-head h3{font-size:18px}.hos-info-text-grid{grid-template-columns:1fr}.hos-info-section-form textarea.hos-input{min-height:150px}}

/* Lejrinfo status labels */
.hos-info-editor-head .hos-info-status{display:inline-flex;align-items:center;width:max-content;margin-top:4px;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.15;background:#f1efea;color:#666}.hos-info-editor-head .hos-info-status.override{background:#fff1d5;color:#805800;border:1px solid #e6bd68}.hos-info-editor-head .hos-info-status.local{background:#fff1d5;color:#805800;border:1px solid #e6bd68}.hos-info-editor-head .hos-info-status.hidden{background:#eee;color:#666;border:1px solid #d3d3d3}.hos-info-editor-head .hos-info-status.default{background:#f1efea;color:#666}

/* rc28: clearer leadership markers + consistent activity modal typography */
.hos-modal>h2{font-size:24px!important;line-height:1.15!important;letter-spacing:-.015em!important;margin:0 42px 16px 0!important;color:var(--ho-orange)!important}
.hos-modal h3{font-size:18px!important;line-height:1.25!important;letter-spacing:-.005em!important;margin:18px 0 10px!important}
.hos-activity-leadership-box h3{font-size:18px!important;margin:0 0 10px!important}

/* Keep the steering indicator in its own quiet corner on library activity cards. */
.hos-library-item{padding-right:38px!important}
.hos-library-item .hos-leadership-badge{position:absolute!important;right:10px!important;top:10px!important;bottom:auto!important;margin:0!important;width:22px;height:22px;border-radius:999px;background:#f1eee8;color:var(--chip)!important;opacity:1!important}
.hos-library-item .hos-leadership-badge .mdi{font-size:13px!important}.hos-library-item .hos-leadership-badge .hos-svg-icon{width:13px!important;height:13px!important}

/* On programme chips, keep the indicator with the title rather than the capacity/note area. */
.hos-chip-main{min-width:0;display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:6px;row-gap:4px;width:100%}
.hos-chip-main>span:first-child{min-width:0;grid-column:1;grid-row:1;overflow-wrap:anywhere}
.hos-activity-chip .hos-chip-main>.hos-leadership-badge{grid-column:2;grid-row:1;margin:0!important;align-self:center;justify-self:end;width:19px;height:19px;border-radius:999px;background:#ffffff24;color:#fff!important;opacity:1!important}
.hos-activity-chip .hos-chip-main>.hos-capacity-label{grid-column:1/3;grid-row:2;justify-self:end;margin:0!important}
.hos-activity-chip.has-note .hos-chip-main>.hos-capacity-label{padding-right:28px}

@media(max-width:760px){
 .hos-modal>h2{font-size:21px!important;margin-bottom:14px!important}
 .hos-modal h3,.hos-activity-leadership-box h3{font-size:17px!important}
}

/* rc29: lokal aktivitetsoversigt og beskyttet standardbibliotek */
.hos-activity-status-summary{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.hos-activity-status-summary span{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--ho-line);background:#fff;border-radius:999px;padding:5px 9px;font-size:11px;color:var(--ho-muted)}.hos-activity-status-summary .adjusted{background:#fff5e5;border-color:#e6bd72;color:#7f5510}.hos-activity-status-summary .local{background:#eef7ef;border-color:#a9cfad;color:#356b3b}.hos-activity-status-summary .hidden{background:#f1f1f1;color:#6c6c6c}.hos-category-heading.static{cursor:default}.hos-library-item.locally-adjusted{box-shadow:inset 0 0 0 2px #e5a83a}.hos-library-item.locally-hidden{opacity:.58;border-style:dashed;filter:grayscale(.35)}.hos-activity-scope-badge{grid-column:2;display:inline-flex;width:max-content;max-width:100%;align-items:center;margin-top:5px;padding:3px 7px;border-radius:999px;font-size:10px;font-style:normal;font-weight:800;line-height:1.2;background:#efefed;color:#67625b;border:1px solid #dedbd4}.hos-activity-scope-badge.adjusted{background:#fff3dd;color:#8a4d00;border-color:#e7b96d}.hos-activity-scope-badge.local{background:#eaf6ed;color:#286934;border-color:#9ecda7}.hos-activity-scope-badge.hidden{background:#ececec;color:#666;border-color:#ccc}.hos-scope-note.local{background:#fff7e8;border-color:#e4b85e}.hos-scope-note.local b{background:#a86300}.hos-hide-activity-check{margin-top:18px;padding:13px;border:1px solid var(--ho-line);border-radius:11px;background:#faf9f6}.hos-standard-manager-actions{justify-content:flex-start;margin:14px 0}.hos-standard-activity-list{display:grid;gap:14px}.hos-standard-activity-list section{border-bottom:1px dotted #bcb6ad;padding-bottom:15px}.hos-standard-activities-modal .hos-modal>h2{font-size:23px}.hos-modal-section-title{font-size:17px!important;margin:18px 0 8px!important}.hos-local-library .hos-library-item{min-width:190px}
@media(max-width:760px){.hos-local-library .hos-library-item{min-width:calc(50% - 5px)}.hos-activity-status-summary{gap:5px}.hos-activity-status-summary span{font-size:10px;padding:4px 7px}}
.hos-activity-status-summary button{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--ho-line);background:#fff;border-radius:999px;padding:6px 10px;font:inherit;font-size:11px;color:var(--ho-muted);cursor:pointer}.hos-activity-status-summary button.adjusted{background:#fff5e5;border-color:#e6bd72;color:#7f5510}.hos-activity-status-summary button.local{background:#eef7ef;border-color:#a9cfad;color:#356b3b}.hos-activity-status-summary button.hidden{background:#f1f1f1;color:#6c6c6c}.hos-activity-status-summary button.active{outline:2px solid #2f353c;outline-offset:1px;color:#222;font-weight:800}

/* rc31: Houens Odde map and places */
.hos-map{width:100%;border:1px solid var(--ho-line);border-radius:16px;overflow:hidden;background:#e9eee8}
.hos-map-admin{height:min(66vh,680px);min-height:440px}.hos-public-map{height:min(68vh,680px);min-height:420px}
.hos-map-admin-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}
.hos-map-point-list{display:grid;gap:8px;max-height:680px;overflow:auto;padding-right:3px}.hos-map-point-row{appearance:none;width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;text-align:left;border:1px solid var(--ho-line);border-radius:12px;background:#fff;padding:10px 11px;cursor:pointer;color:inherit}.hos-map-point-row:hover{border-color:#a89f91;box-shadow:0 2px 10px #0000000c}.hos-map-point-row>span:first-child{display:grid;place-items:center;width:32px;height:32px;border-radius:999px;background:#f1eee8}.hos-map-point-row b,.hos-map-point-row small{display:block}.hos-map-point-row small{margin-top:3px;color:var(--ho-muted);font-size:10px}.hos-map-point-row em{font-style:normal;color:var(--ho-muted)}.hos-map-point-row.inactive{opacity:.5}.hos-map-help{font-size:11px;margin:7px 3px 0}
.hos-map-marker,.hos-public-map-marker{display:grid;place-items:center;width:34px;height:34px;border:2px solid #fff;border-radius:50% 50% 50% 5px;transform:rotate(-45deg);background:#d76b32;color:#fff;box-shadow:0 3px 9px #0004;cursor:pointer;text-decoration:none}.hos-map-marker>* ,.hos-public-map-marker>*{transform:rotate(45deg)}.hos-map-marker .mdi,.hos-public-map-marker .mdi{font-size:18px!important}.hos-map-marker .hos-svg-icon,.hos-public-map-marker .hos-svg-icon{width:18px!important;height:18px!important}
.hos-public-map-wrap{display:grid;gap:10px}.hos-public-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #ded9cf;border-radius:12px;background:#fff}.hos-public-map-toolbar>div{display:grid;gap:2px;min-width:0}.hos-public-map-toolbar span{font-size:12px;color:#666}.hos-public-map-toolbar .hos-btn{white-space:nowrap}.hos-map-distance:empty{display:none}.hos-map-distance{display:flex;gap:8px 14px;flex-wrap:wrap;align-items:center;padding:9px 12px;border-radius:11px;background:#fff3dc;border:1px solid #e5ba69;font-size:12px;color:#614619}.hos-map-distance b{margin-right:4px}.hos-user-location{width:18px;height:18px;border:3px solid #fff;border-radius:50%;background:#1478ff;box-shadow:0 0 0 2px #1478ff55,0 2px 8px #0005}

.maplibregl-popup-content{font-family:inherit;border-radius:10px!important;padding:10px 12px!important}.maplibregl-popup-content p{margin:4px 0 0;font-size:11px;line-height:1.35;color:#555}
@media(max-width:900px){.hos-map-admin-layout{grid-template-columns:1fr}.hos-map-point-list{max-height:none;grid-template-columns:repeat(2,minmax(0,1fr))}.hos-map-admin{height:56vh;min-height:390px}}
@media(max-width:600px){.hos-map-point-list{grid-template-columns:1fr}.hos-map-admin,.hos-public-map{height:58vh;min-height:360px}.hos-public-map-toolbar{align-items:flex-start;flex-direction:column}.hos-public-map-toolbar .hos-btn{width:100%;justify-content:center}}

/* rc33: map point editor and location help */
.hos-map-description-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.hos-map-description-grid label{display:grid;gap:6px;font-weight:700}.hos-map-description-grid label>small{font-weight:400;color:var(--ho-muted);font-size:11px}.hos-map-description-grid textarea{width:100%;min-height:110px;resize:vertical;line-height:1.45;padding:12px}.hos-modal-section-title{font-size:17px!important;margin:20px 0 8px}.hos-map-color-row{display:flex;align-items:center;gap:10px}.hos-map-color-row .hos-color-input{width:64px;min-width:64px;padding:4px;height:42px}.hos-map-color-row small{color:var(--ho-muted);font-weight:400}.hos-location-help{margin:10px 0 14px;padding:14px 16px;border:1px solid #e1d7c8;border-radius:12px;background:#faf7f1;color:#403b35}.hos-location-help>b{display:block;margin-bottom:3px}.hos-location-help p{margin:0 0 8px}.hos-location-help details{border-top:1px solid #e5ded3;padding:8px 0}.hos-location-help summary{cursor:pointer;font-weight:700}.hos-location-help ol{margin:8px 0 3px;padding-left:22px}.hos-location-help li{margin:5px 0}.hos-location-help>small{display:block;color:var(--ho-muted);margin-top:4px}@media(max-width:700px){.hos-map-description-grid{grid-template-columns:1fr}}
