:root{--bg:#f5f5f7;--surface:rgba(255,255,255,.88);--ink:#1d1d1f;--muted:#6e6e73;--muted2:#86868b;--line:rgba(0,0,0,.07);--soft:#f5f5f7;--dark:#1d1d1f;--blue:#0071e3;--green:#248a5a;--greenSoft:#edf8f2;--amber:#a96300;--amberSoft:#fff6e8;--red:#b42318;--redSoft:#fff0ef;--shadow:0 18px 55px rgba(0,0,0,.065);--ease:cubic-bezier(.22,.61,.36,1)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -15%,#fff 0,#fafafa 34%,#f5f5f7 70%);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Tahoma,Arial,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select{font:inherit}button{touch-action:manipulation}.app-shell{width:min(1180px,calc(100% - 32px));margin:auto;padding:22px 0 max(64px,env(safe-area-inset-bottom))}.app-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:14px}.eyebrow{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted2);font-weight:750;margin-bottom:5px}.app-head h1{font-size:clamp(30px,3.5vw,44px);letter-spacing:-1.5px;line-height:1.04;margin:0;font-weight:760}.app-head p{margin:6px 0 0;color:var(--muted);font-size:12px}.user-chip{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.9);padding:8px 9px 8px 13px;border-radius:17px;box-shadow:0 8px 26px rgba(0,0,0,.05);backdrop-filter:blur(22px) saturate(160%)}.user-chip div{display:flex;flex-direction:column}.user-chip strong{font-size:11px}.user-chip span{font-size:9px;color:var(--muted);margin-top:2px}.user-chip button{border:0;background:rgba(118,118,128,.1);border-radius:10px;padding:7px 10px;font-size:10px;cursor:pointer}.input{width:100%;appearance:none;border:1px solid var(--line);outline:0;background:rgba(255,255,255,.94);border-radius:14px;padding:13px 14px;color:var(--ink);transition:.18s}.input:focus{border-color:rgba(0,113,227,.4);box-shadow:0 0 0 4px rgba(0,113,227,.08)}label>span{display:block;color:var(--muted);font-size:11px;margin-bottom:6px}.login-shell{min-height:100dvh;display:grid;place-items:center;padding:22px max(18px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:radial-gradient(circle at 50% 0,#fff,#f5f5f7 65%)}.login-card{width:min(420px,100%);background:rgba(255,255,255,.88);border:1px solid #fff;border-radius:30px;box-shadow:0 28px 90px rgba(0,0,0,.1);padding:30px;backdrop-filter:blur(30px);animation:rise .4s var(--ease) both}.login-mark{width:50px;height:50px;border-radius:15px;background:#1d1d1f;color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:21px}.login-card h1{font-size:34px;margin:0;letter-spacing:-1px}.login-card p{color:var(--muted);margin:7px 0 21px}.login-card label{display:block;margin-top:13px}.form-error{background:var(--redSoft);color:var(--red);padding:11px 13px;border-radius:13px;font-size:12px;margin:10px 0}.primary-btn{width:100%;margin-top:18px;border:0;background:linear-gradient(180deg,#29292c,#111113);color:#fff;border-radius:16px;padding:15px 18px;font-weight:740;display:flex;justify-content:space-between;align-items:center;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.13);transition:.18s var(--ease)}.primary-btn:hover{transform:translateY(-1px)}.primary-btn:active{transform:scale(.985)}.primary-btn:disabled{opacity:.45}.admin-tabs{display:flex;gap:4px;background:rgba(118,118,128,.11);padding:4px;width:max-content;border-radius:13px;margin-bottom:14px}.admin-tabs button{border:0;background:transparent;padding:8px 13px;border-radius:9px;font-size:11px;color:var(--muted);cursor:pointer}.admin-tabs button.active{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.07)}.branch-card,.manager-panel,.users-panel,.empty-card{background:var(--surface);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow);border-radius:26px;padding:20px;backdrop-filter:blur(26px) saturate(150%);animation:rise .35s var(--ease) both}.last-banner{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:17px}.last-banner span{font-size:10px;color:var(--muted)}.last-banner strong{font-size:12px}.last-banner small{font-size:9px;color:var(--muted2)}.occupancy-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px;margin:6px 0 18px}.occupancy-input,.live-metric{min-height:126px;border-radius:20px;padding:16px;background:rgba(245,245,247,.9);border:1px solid rgba(0,0,0,.05);display:flex;flex-direction:column;justify-content:center}.occupancy-input>span,.live-metric span{font-size:11px;color:var(--muted)}.occupancy-input input{border:0;background:transparent;padding:4px 0 0;font-size:42px;font-weight:760;outline:0;width:100%;color:var(--ink)}.live-metric strong{font-size:42px;line-height:1.02;margin:7px 0 2px;letter-spacing:-1.3px}.occupancy-input small,.live-metric small{font-size:10px;color:var(--muted2)}.live-metric.accent{background:linear-gradient(145deg,#29292c,#111113);color:#fff;border-color:transparent}.live-metric.accent span,.live-metric.accent small{color:#b9b9bf}.rates-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.rates-grid section{background:rgba(245,245,247,.8);border:1px solid rgba(0,0,0,.045);border-radius:20px;padding:16px}.section-head h2{margin:0 0 11px;font-size:16px}.rate-field{display:grid;grid-template-columns:115px 1fr;gap:9px;align-items:center;margin-top:8px}.rate-field>span{margin:0;font-size:11px;color:#515154}.rate-field .input{padding:11px 12px}.success-notice{display:none;margin-top:11px;padding:12px;border-radius:14px;background:var(--greenSoft);color:var(--green);text-align:center;font-size:12px;font-weight:700}.success-notice.show{display:block}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}.summary-card{position:relative;background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.95);border-radius:20px;padding:15px 16px;box-shadow:0 8px 26px rgba(0,0,0,.045);overflow:hidden}.summary-card:before{content:'';position:absolute;inset-inline-start:0;top:0;bottom:0;width:3px;background:rgba(0,0,0,.08)}.summary-card.primary{background:linear-gradient(145deg,#29292c,#111113);color:#fff}.summary-card.primary:before{background:#fff}.summary-card span{display:block;color:var(--muted2);font-size:10px}.summary-card.primary span{color:#b8b8bd}.summary-card strong{display:block;font-size:30px;margin:3px 0 0;letter-spacing:-1px;font-variant-numeric:tabular-nums}.summary-card small{color:var(--muted2);font-size:9px}.manager-panel{padding:16px}.manager-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.search-box{display:flex;align-items:center;gap:7px;min-width:280px;border:1px solid var(--line);background:rgba(245,245,247,.85);border-radius:13px;padding:0 12px;color:var(--muted2)}.search-box:focus-within{background:#fff;border-color:rgba(0,113,227,.35);box-shadow:0 0 0 4px rgba(0,113,227,.06)}.search-box input{width:100%;border:0;background:transparent;outline:0;padding:11px 0;font-size:12px}.filters{display:flex;gap:4px;background:rgba(118,118,128,.09);padding:3px;border-radius:12px}.filter{border:0;background:transparent;border-radius:9px;padding:8px 11px;font-size:10px;color:var(--muted);cursor:pointer;white-space:nowrap}.filter.active{background:#fff;color:var(--ink);box-shadow:0 2px 7px rgba(0,0,0,.07)}.manager-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.manager-card{border:1px solid rgba(0,0,0,.055);border-radius:19px;background:rgba(255,255,255,.92);padding:14px;transition:.18s var(--ease);cursor:default}.manager-card:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.06)}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.branch-number{font-size:9px;color:var(--muted2)}.manager-card h3{font-size:15px;margin:3px 0 0}.update-badge{font-size:9px;border-radius:999px;padding:5px 8px;white-space:nowrap;font-weight:650}.update-badge.fresh{background:var(--greenSoft);color:var(--green)}.update-badge.late{background:var(--amberSoft);color:var(--amber)}.update-badge.missing{background:var(--redSoft);color:var(--red)}.room-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0}.room-strip>div{background:rgba(245,245,247,.86);border-radius:12px;padding:8px 9px}.room-strip span{display:block;font-size:9px;color:var(--muted2)}.room-strip strong{display:block;font-size:18px;margin-top:1px}.price-list{display:grid;gap:5px}.price-list>div{border-top:1px solid var(--line);padding-top:6px}.price-list span{display:block;font-size:9px;color:var(--muted2)}.price-list p{font-size:10px;line-height:1.55;margin:2px 0 0;color:#515154}.card-foot{border-top:1px solid var(--line);margin-top:7px;padding-top:7px}.card-foot span{font-size:9px;color:var(--muted2)}.users-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.users-toolbar strong{font-size:25px}.users-toolbar span{font-size:11px;color:var(--muted)}.primary-small,.mini-btn{border:0;cursor:pointer}.primary-small{background:#1d1d1f;color:#fff;border-radius:12px;padding:10px 13px;font-size:11px;font-weight:700}.users-list{display:grid;gap:7px}.user-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1px solid var(--line);background:#fff;border-radius:16px;padding:12px 13px}.user-main{display:flex;flex-direction:column}.user-main strong{font-size:12px}.user-main span{font-size:9px;color:var(--muted);margin-top:3px}.account-state{font-size:9px;padding:5px 8px;border-radius:999px}.account-state.on{background:var(--greenSoft);color:var(--green)}.account-state.off{background:var(--redSoft);color:var(--red)}.mini-btn{background:rgba(118,118,128,.1);border-radius:9px;padding:7px 10px;font-size:9px}.modal-back{position:fixed;inset:0;background:rgba(0,0,0,.32);backdrop-filter:blur(14px);z-index:30;display:grid;place-items:center;padding:18px}.user-modal{width:min(610px,100%);max-height:90dvh;overflow:auto;background:rgba(255,255,255,.97);border-radius:26px;padding:20px;box-shadow:0 35px 100px rgba(0,0,0,.2)}.modal-head{display:flex;justify-content:space-between;align-items:start}.modal-head h2{margin:0;font-size:22px}.modal-head button{border:0;background:rgba(118,118,128,.1);width:33px;height:33px;border-radius:10px;font-size:19px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:16px}.form-grid .full{grid-column:1/-1}.toggle-line{display:flex;align-items:center;gap:8px;background:var(--soft);padding:11px;border-radius:13px}.toggle-line span{margin:0}.empty-card{text-align:center;color:var(--muted);padding:36px}@keyframes rise{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@media(max-width:820px){.app-shell{width:min(100% - 20px,1180px);padding-top:max(14px,env(safe-area-inset-top));padding-bottom:calc(86px + env(safe-area-inset-bottom))}.app-head{align-items:flex-start;margin-bottom:12px}.app-head h1{font-size:30px}.app-head p{font-size:11px}.occupancy-grid{grid-template-columns:1fr 1fr}.occupancy-input{grid-column:1/-1}.rates-grid{grid-template-columns:1fr}.summary-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px;margin-inline:-10px;padding:2px 10px 10px;scrollbar-width:none}.summary-grid::-webkit-scrollbar{display:none}.summary-card{min-width:145px;scroll-snap-align:start;padding:14px}.summary-card strong{font-size:27px}.manager-toolbar{align-items:stretch;flex-direction:column}.search-box{min-width:0}.manager-grid{grid-template-columns:1fr}.admin-tabs{position:fixed;z-index:20;bottom:calc(10px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(calc(100% - 28px),420px);margin:0;padding:5px;background:rgba(245,245,247,.82);border:1px solid rgba(255,255,255,.9);box-shadow:0 12px 40px rgba(0,0,0,.14);backdrop-filter:blur(24px) saturate(180%)}.admin-tabs button{flex:1;padding:11px 8px;font-size:11px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.manager-panel{padding:11px;border-radius:22px}.filters{overflow-x:auto;scrollbar-width:none}.manager-card{padding:13px;border-radius:17px}.price-list{display:none}.card-foot{margin-top:5px}.user-modal{align-self:end;border-radius:26px 26px 0 0;padding:20px 18px calc(22px + env(safe-area-inset-bottom));max-height:88dvh}.modal-back{place-items:end center;padding:0}.users-panel{padding:14px}}@media(max-width:560px){body{background:#f5f5f7}.app-shell{width:100%;padding-inline:14px}.app-head{gap:10px}.app-head>div:first-child{min-width:0}.app-head h1{font-size:27px;white-space:normal}.eyebrow{font-size:9px}.user-chip{padding:7px 8px;border-radius:15px;flex-shrink:0}.user-chip div{display:none}.user-chip button{padding:8px 10px}.login-shell{padding:0}.login-card{width:100%;min-height:100dvh;border:0;border-radius:0;box-shadow:none;padding:calc(52px + env(safe-area-inset-top)) 22px calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:center}.login-card .input{font-size:16px;min-height:52px}.login-card .primary-btn{min-height:54px}.occupancy-input,.live-metric{min-height:102px;padding:13px}.occupancy-input input,.live-metric strong{font-size:33px}.rate-field{grid-template-columns:100px 1fr}.rate-field .input{font-size:16px}.branch-card{padding:14px;border-radius:22px}.branch-card>.primary-btn{position:sticky;bottom:calc(10px + env(safe-area-inset-bottom));z-index:10;min-height:54px;box-shadow:0 12px 34px rgba(0,0,0,.2)}.room-strip{margin:9px 0 4px}.room-strip>div{padding:9px}.room-strip strong{font-size:20px}.manager-card h3{font-size:15px}.users-toolbar{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.9);backdrop-filter:blur(20px);margin:-14px -14px 12px;padding:13px 14px;border-radius:22px 22px 0 0}.user-row{grid-template-columns:1fr auto;padding:12px}.user-row .mini-btn{grid-column:1/-1;width:100%;min-height:38px}.primary-small{min-height:40px}.input,select.input{font-size:16px}.summary-grid{margin-top:2px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}