:root{color:#111827;background:#f4f6f8;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}.shell{max-width:720px;margin:0 auto;padding:16px 14px 100px}.top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.brand{font-size:24px;font-weight:800}.muted{color:#667085}.card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;margin:12px 0;padding:16px;box-shadow:0 2px 8px #1018280a}.room{font-size:26px;font-weight:900}.status{margin:6px 0;font-size:17px;font-weight:800}.btn{color:#fff;text-align:center;background:#111827;border:0;border-radius:16px;width:100%;min-height:58px;margin:10px 0;padding:14px 16px;font-size:19px;font-weight:800;text-decoration:none;display:block}.btn.good{background:#127a4b}.btn.warn{background:#b54708}.btn.danger{background:#b42318}.btn:disabled{opacity:.45}.grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.banner{border-radius:14px;margin:10px 0;padding:12px 14px;font-weight:700}.banner.ok{background:#eaf8f1}.banner.warn{background:#fff4e5}.banner.bad{background:#fee4e2}.sectionTitle{margin:6px 0;font-size:21px;font-weight:900}.progress{font-size:18px;font-weight:800}.thumbs{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px;display:grid}.thumb{aspect-ratio:1;text-align:center;background:#eef2f6;border-radius:12px;justify-content:center;align-items:center;padding:4px;font-size:13px;display:flex}.check{border-bottom:1px solid #eee;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.check input{width:26px;height:26px}.nav{background:#fff;border-top:1px solid #ddd;justify-content:center;gap:8px;padding:10px;display:flex;position:fixed;bottom:0;left:0;right:0}.nav a{color:#111827;padding:10px 14px;font-weight:800;text-decoration:none}.bigTime{font-size:28px;font-weight:900}.error{color:#b42318;font-weight:700}.success{color:#127a4b;font-weight:700}input,select,textarea{border:1px solid #cfd4dc;border-radius:14px;width:100%;margin:6px 0 12px;padding:14px;font-size:18px}label{font-weight:800}.file{background:#eef2f6;border-radius:14px;padding:12px}@media (min-width:760px){.shell{padding-top:28px}}:root{--accent:#12665b;--ink:#15322f;--line:#d9e5e2;font-size:17px}body{color:var(--ink);background:#edf4f2;line-height:1.5}.shell{max-width:620px;padding:20px 16px 96px}.brand{letter-spacing:-.6px;font-size:25px}.top{align-items:flex-start}.card{border-color:var(--line);border-radius:20px;padding:20px;box-shadow:0 4px 18px #15322f08}.room{overflow-wrap:anywhere;font-size:30px;line-height:1.25}.room .muted{margin-top:4px;font-size:16px;font-weight:500;display:block}.status{font-size:18px}.btn{background:var(--accent);cursor:pointer;border-radius:14px;min-height:56px;font-size:17px;line-height:1.35}.btn.secondary{color:var(--ink);background:#e3efec}.banner{font-size:15px;font-weight:500;line-height:1.5}.banner strong{margin-bottom:4px;display:block}.sectionTitle{font-size:22px}.thumbs{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.thumb{border:1px solid var(--line);border-radius:14px;padding:0}.check{align-items:center;gap:14px;padding:16px 0;font-size:18px}.check input{width:28px;height:28px;accent-color:var(--accent);flex:0 0 28px;margin:0}input,select,textarea{background:#fff;min-height:52px;font-size:17px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid .btn{font-size:16px}.file{background:#f0f7f4;border:2px dashed #92b6ac;width:100%;padding:16px;font-size:16px}.file::file-selector-button{background:var(--accent);color:#fff;border:0;border-radius:10px;margin-right:8px;padding:12px;font-weight:700}.step-title{align-items:center;gap:12px;display:flex}.step-number{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.detail-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.detail-grid dt{color:#60756e;font-size:14px}.detail-grid dd{margin:0;font-weight:700}.photo-dialog{z-index:100;background:#10211ff2;flex-direction:column;justify-content:center;padding:20px;display:flex;position:fixed;inset:0}.photo-dialog img{object-fit:contain;width:100%;max-height:75vh}.photo-dialog button{flex-shrink:0}.toolbar{flex-wrap:wrap;gap:10px;display:flex}.toolbar a{flex:1;min-width:140px}.badge{background:#e3efec;border-radius:30px;padding:5px 10px;font-size:14px;font-weight:700;display:inline-block}.participant{background:#f2f7f5;border-radius:12px;margin:8px 0;padding:12px}.sticky-summary{z-index:5;border:1px solid #92b6ac;position:sticky;bottom:12px;box-shadow:0 8px 24px #15322f20}.empty{text-align:center;padding:28px}@media (max-width:420px){.shell{padding:12px 12px 96px}.card{padding:16px}.brand{font-size:23px}.room{font-size:28px}.top .btn{min-height:44px!important;font-size:13px!important}.grid{gap:8px}.thumbs{gap:10px}}@media (min-width:760px){.shell{max-width:760px}.thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}}:root .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell.room-dashboard{max-width:760px;padding:10px 10px calc(24px + env(safe-area-inset-bottom))}.room-dashboard{max-width:760px;padding:10px 10px 28px}.room-dashboard .top{align-items:center;margin-bottom:4px}.room-dashboard .brand{font-size:21px}.room-dashboard .top .muted{font-size:13px}.sync-compact{color:#17604a;background:#eaf8f1;border-radius:8px;justify-content:space-between;gap:8px;padding:5px 8px;font-size:12px;display:flex}.dashboard-shortcuts{gap:6px;margin:6px 0;display:flex}.dashboard-shortcuts a{min-height:44px;color:var(--ink);background:#e3efec;border-radius:9px;flex:1;justify-content:center;align-items:center;padding:6px;font-size:14px;font-weight:750;text-decoration:none;display:flex}.dashboard-filters input[type=search]{border-radius:10px;height:44px;min-height:44px;margin:0 0 5px;padding:8px 12px;font-size:16px}.room-filter-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.room-filter-tabs button{border:1px solid var(--line);min-height:44px;color:var(--ink);cursor:pointer;background:#fff;border-radius:9px;padding:5px 2px;font-size:12px}.room-filter-tabs button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.room-filter-tabs b{font-size:14px;display:block}.dashboard-extra-filters,.dashboard-management{border-bottom:1px solid var(--line);font-size:13px}.dashboard-extra-filters summary,.dashboard-management summary{cursor:pointer;min-height:32px;padding:6px 2px;font-weight:700}.dashboard-extra-filters[open],.dashboard-management[open]{padding-bottom:8px}.dashboard-extra-filters p{margin:5px 0}.dashboard-extra-filters .check{padding:8px 0;font-size:15px}.room-list-heading{color:#52665f;justify-content:space-between;gap:6px;padding:6px 2px;font-size:12px;display:flex}.room-list{gap:5px;display:grid}.room-row{border:1px solid var(--line);background:#fff;border-left:4px solid #80958c;border-radius:10px;align-items:center;gap:6px;padding:8px 9px;display:flex}.room-row.warn{border-left-color:#b54708}.room-row.ok{border-left-color:#127a4b}.room-row.bad{border-left-color:#b42318}.room-row-main{flex:1;min-width:0}.room-row-heading{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.room-row-heading h3{overflow-wrap:anywhere;margin:0;font-size:19px;font-weight:850;line-height:1.2}.room-row-heading>span{color:#52665f;font-size:11px;font-weight:700}.room-row-status{color:#52665f;margin:2px 0;font-size:12px;font-weight:800;line-height:1.3}.room-row-status.warn{color:#9b4207}.room-row-status.ok{color:#127a4b}.room-row-status.bad{color:#b42318}.room-row-times{color:#52665f;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:2px 10px;font-size:12px;line-height:1.4;display:flex}.room-row-crew{overflow-wrap:anywhere;margin-top:2px;font-size:12px;line-height:1.4}.room-row-action:empty{display:none}.room-row-action a{color:#15322f;background:#e3efec;border-radius:9px;justify-content:center;align-items:center;min-width:58px;min-height:44px;padding:6px;font-size:12px;font-weight:800;text-decoration:none;display:flex}.room-dashboard .banner.bad,.room-dashboard .banner.warn{margin:5px 0;font-size:14px}@media (min-width:760px){.room-dashboard{padding-top:18px}.room-list{grid-template-columns:repeat(2,minmax(0,1fr))}.room-row{align-items:flex-start}.room-dashboard .brand{font-size:24px}}.admin-room-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 24px;display:grid}.admin-room-grid>div{min-width:0}.admin-room-tile{border:1px solid var(--line);width:100%;min-height:112px;color:var(--ink);text-align:center;font:inherit;cursor:pointer;overflow-wrap:anywhere;background:#fff;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:10px 5px;text-decoration:none;display:flex}.admin-room-tile b{font-size:17px;line-height:1.25}.admin-room-tile small{font-size:12px;line-height:1.3}.admin-room-tile span{font-size:13px}.approval-badge{border-radius:9px;padding:3px 7px;font-weight:800}.approval-badge.approved{color:#10613b;background:#ddf5e6}.approval-badge.pending{color:#854100;background:#fff0ce}.admin-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.admin-photo-grid>div{min-width:0}.admin-photo-grid .muted{overflow-wrap:anywhere;font-size:12px!important}.photo-dialog{overscroll-behavior:contain}.photo-dialog .btn{position:sticky;top:0}@media (min-width:600px){.admin-room-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.admin-item-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-item-grid .card{overflow-wrap:anywhere;min-width:0;margin:0 0 10px;padding:12px}.admin-item-grid .sectionTitle{font-size:17px}.admin-item-grid .admin-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-item-grid .admin-photo-grid>div:only-child{grid-column:1/-1}.admin-item-grid .muted{font-size:13px}.admin-item-grid summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:14px;font-weight:800}.admin-item-grid .detail-grid{grid-template-columns:1fr}.admin-item-grid select{padding:8px;font-size:14px}@media (min-width:600px){.admin-item-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
