html{font-size:16px}body{background:#f3f5f8;margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}.account{box-sizing:border-box;color:#fff;background:#071e36;min-height:100vh;padding:40px 20px;font-family:Arial,sans-serif}.account-brand{color:#fff;align-items:center;gap:16px;width:min(100%,620px);margin:0 auto 36px;font-weight:700;line-height:1.5;text-decoration:none;display:flex}.account-brand img{width:60px}.account section{box-sizing:border-box;color:#071e36;background:#fff;border-top:4px solid #f59e0b;border-radius:12px;width:min(100%,620px);margin:auto;padding:36px}.account h1{font-size:32px}.account-kicker{letter-spacing:2px;color:#805400;font-size:12px;font-weight:700}.account label{gap:8px;margin:20px 0;font-size:14px;font-weight:600;display:grid}.account input,.account select{border:1px solid #b2c1d0;border-radius:6px;min-width:0;padding:12px}.account button{color:#fff;cursor:pointer;background:#0b2d52;border:0;border-radius:6px;padding:13px 18px;font-weight:700}.account button:disabled{opacity:.5}.account a{color:#0b527e;margin-top:18px;display:block}.account .account-brand{color:#fff;display:flex}.account .help,.account-admin p{color:#506277;font-size:14px;line-height:1.6}.account-admin{border-top:1px solid #d4dde5;margin-top:36px;padding-top:18px}.account .error{color:#9b2626;background:#fff0ee;padding:12px}.account .notice{color:#185638;background:#e7f3ed;padding:12px}.account :focus-visible{outline-offset:3px;outline:3px solid #f59e0b}.staff main,.studio-main{overflow-wrap:anywhere}.staff button,.staff input,.staff select,.staff textarea{font-size:14px}@media (width<=550px){.account{padding:24px 16px}.account section{padding:24px}.account h1{font-size:28px}}.pwa-bar{z-index:1000;padding:8px 12px calc(8px + env(safe-area-inset-bottom));pointer-events:none;gap:6px;font-family:Arial,Helvetica,sans-serif;display:grid;position:fixed;bottom:0;left:0;right:0}.pwa-item{box-sizing:border-box;pointer-events:auto;color:#fff;background:#071e36;border:1px solid #29466a;border-radius:12px;align-items:center;gap:12px;width:100%;max-width:720px;margin:0 auto;padding:10px 14px;font-size:14px;line-height:1.45;display:flex;box-shadow:0 10px 30px #071e3659}.pwa-item img{border-radius:7px;flex-shrink:0}.pwa-item span{flex:1;min-width:0}.pwa-item button{font:inherit;cursor:pointer;color:#071e36;background:#fff;border:1px solid #becbd8;border-radius:8px;flex-shrink:0;padding:8px 14px;font-weight:700}.pwa-item .pwa-primary{background:#f59e0b;border-color:#f59e0b}.pwa-item .pwa-dismiss{color:#dbe7f3;background:0 0;border-color:#0000;padding:6px 8px}.pwa-offline{background:#5a3b00;border-color:#8a5c00}@media (width<=600px){.pwa-item{flex-wrap:wrap;font-size:13px}.pwa-item span{flex-basis:100%}}.app-home{--navy:#071e36;--gold:#f59e0b;min-height:100vh;color:var(--navy);background:#f3f5f8;padding-bottom:84px;font-family:Arial,Helvetica,sans-serif}.app-home *{box-sizing:border-box}.app-home a{color:inherit;text-decoration:none}.app-top{background:var(--navy);color:#fff;border-bottom:3px solid var(--gold);padding:22px 18px 18px}.app-id{align-items:center;gap:14px;max-width:1100px;margin:0 auto;display:flex}.app-id .sd-avatar,.app-id img{object-fit:cover;border-radius:14px;flex-shrink:0;width:56px;height:56px}.app-id .staff-kicker{color:var(--gold);margin:0 0 2px}.app-id h1{margin:0 0 4px;font-size:clamp(22px,4vw,30px);font-weight:750}.app-id .helper{color:#c7d3e0;margin:0}.app-stats{grid-template-columns:repeat(4,1fr);gap:8px;max-width:1100px;margin:16px auto 0;display:grid}.app-stats a{text-align:center;background:#ffffff14;border:1px solid #ffffff24;border-radius:10px;gap:2px;padding:10px 8px;display:grid}.app-stats strong{font-size:22px;font-weight:800}.app-stats span{color:#c7d3e0;letter-spacing:.3px;font-size:11px}.app-home main{max-width:1100px;margin:0 auto;padding:16px 16px 0}.app-home .error,.app-home .notice{color:#185638;background:#e7f3ed;border-radius:8px;margin:0 0 14px;padding:12px 14px}.app-home .error{color:#9b2626;background:#fff0ee}.app-clock{gap:12px;margin-bottom:8px;display:grid}.app-clock .clock-card{background:#fff;border:1px solid #dce2e9;border-radius:14px;padding:18px}.app-clock .clock-card h2{margin:6px 0 4px;font-size:22px}.app-clock .clock-card .actions button{padding:12px 16px}.app-clock .clock-card .actions button.primary{background:var(--gold);color:var(--navy);border-color:var(--gold);font-size:16px}.app-checklist{background:#fff;border:1px solid #dce2e9;border-radius:14px;padding:12px 16px}.app-group{margin-top:20px}.app-group h2{letter-spacing:2px;text-transform:uppercase;color:#806000;margin:0 0 10px;font-size:12px;font-weight:800}.app-tiles{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;display:grid}.app-tile{background:#fff;border:1px solid #dce2e9;border-radius:14px;align-items:center;gap:12px;min-height:76px;padding:14px;transition:transform 80ms;display:flex;position:relative}.app-tile:active{transform:scale(.985)}.app-tile-icon{background:#eef2f7;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.app-tile-body{gap:3px;min-width:0;display:grid}.app-tile-body strong{font-size:15px}.app-tile-body small{color:#506277;font-size:12.5px;line-height:1.4}.app-tile-count{background:var(--gold);color:var(--navy);border-radius:20px;padding:3px 9px;font-size:12px;font-weight:800;position:absolute;top:10px;right:12px}.tile-attendance .app-tile-icon,.tile-calls .app-tile-icon,.tile-chat .app-tile-icon{background:var(--navy);color:#fff}.app-foot{text-align:center;margin:26px 0 8px}.app-foot a{text-decoration:underline}@media (width<=560px){.app-stats{grid-template-columns:repeat(2,1fr)}.app-tiles{grid-template-columns:1fr}}.app-nav{z-index:900;padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:#071e36;border-top:1px solid #29466a;grid-template-columns:repeat(5,1fr);font-family:Arial,Helvetica,sans-serif;display:grid;position:fixed;bottom:0;left:0;right:0}.app-nav a{color:#c7d3e0;border-radius:8px;justify-items:center;gap:2px;padding:4px 0;font-size:11px;text-decoration:none;display:grid}.app-nav a span:first-child{font-size:20px;line-height:1}.app-nav a.current{color:#fff;background:#173953}.app-nav a.current span:first-child{color:#f59e0b}body.has-app-nav{padding-bottom:70px}body.has-app-nav .pwa-bar{bottom:66px}
