:root{--paper:#f1f2f6;--white:#fff;--ink:#20253b;--muted:#7a7c86;--green:#242e62;--deep:#12193e;--lime:#99a7ef;--line:#e4e5eb;--radius:20px;--gold:#dfc788;--red:#b74937}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font:14px/1.65 Noto Sans SC,system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;transition:background .2s,transform .15s,box-shadow .2s;display:inline-flex}button:active{transform:scale(.975)}button:disabled{cursor:wait;opacity:.5}a{color:var(--green);cursor:pointer;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-1px;margin-bottom:12px;font-size:32px;font-weight:700;line-height:1.4}h2{margin-bottom:16px;font-size:20px;font-weight:650;line-height:1.5}h3{margin-bottom:12px;font-size:15px}p{margin-bottom:14px}small{font-size:11px}input,select,textarea{width:100%;color:var(--ink);background:#fbfbfd;border:1px solid #dadbe3;border-radius:9px;outline:none;padding:12px 13px;transition:border .2s,box-shadow .2s}input[type=checkbox]{width:17px;height:17px;accent-color:var(--green)}textarea{resize:vertical}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #99a1c6}.shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:10;background:#fff;flex-direction:column;width:230px;padding:32px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:var(--deep);letter-spacing:3px;align-items:center;gap:12px;font-size:26px;font-weight:750;display:flex}.brand span{letter-spacing:2px;margin-top:-4px;font-size:9px;font-weight:500;display:block}.brandmark{background:var(--deep);color:var(--lime);border-radius:13px 13px 4px;place-items:center;width:44px;height:48px;display:grid}.side-caption{color:#9799a0;letter-spacing:.5px;margin:22px 0 36px;font-size:10px}.sidebar nav{flex-direction:column;gap:10px;display:flex}.sidebar nav button{color:#767883;border:0;justify-content:flex-start;padding:14px 16px;font-size:13px}.sidebar nav button svg:last-child{opacity:0;margin-left:auto}.sidebar nav button.active{color:var(--green);background:#e7e9f2;font-weight:650}.sidebar nav button.active svg:last-child{opacity:1}.side-spacer{flex:1;min-height:60px}.side-note{background:#f0f1f7;border-radius:14px;margin-bottom:26px;padding:18px 15px;position:relative;overflow:hidden}.side-note .tiny{color:#797e99;font-size:9px}.side-note p{color:#4b4f63;margin:10px 0 0;font-size:12px;line-height:1.9}.side-note svg{color:#b9bed6;position:absolute;bottom:-2px;right:-4px;transform:rotate(-20deg)}.admin-link{color:#7e8088;border:0;justify-content:flex-start;padding-left:8px;font-size:12px}.admin-link svg:last-child{margin-left:auto}.side-foot{color:#a7a9b0;text-align:center;margin-top:22px;font-size:9px}.main{width:calc(100% - 230px);margin-left:230px}.topbar{border-bottom:1px solid var(--line);background:#fff9;justify-content:space-between;align-items:center;height:84px;padding:0 44px;display:flex}.breadcrumb{color:#888a91;font-size:11px}.breadcrumb span{color:#c1c2c9;margin:0 15px}.top-right{align-items:center;gap:24px;display:flex}.connection{color:#7f8291;align-items:center;gap:7px;font-size:10px;display:flex}.connection i,.hero-tag span{background:#8590c8;border-radius:50%;width:6px;height:6px}.identity{background:0 0;border:0;padding:0;font-size:12px}.avatar{color:#535870;background:#e5e7f1;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:11px;font-weight:600;display:inline-flex}.avatar.small{width:29px;height:29px;font-size:10px}.avatar.large{background:#cfd4ed;width:72px;height:72px;font-size:21px}.content{max-width:1560px;margin:auto;padding:40px 44px 0}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.eyebrow{letter-spacing:1.6px;color:#7d8091;margin-bottom:10px;font-size:9px;font-weight:600}.muted{color:var(--muted);font-size:12px}.page-heading p:last-child{margin-bottom:0}.date-stamp{color:#5f6271;font-variant-numeric:tabular-nums;align-items:center;gap:12px;font-size:12px;display:flex}.date-stamp small{color:#9295a3;margin-top:4px;font-size:9px;display:block}.hero{background:var(--deep);color:#fff;border-radius:22px;justify-content:space-between;min-height:300px;padding:33px 38px;animation:.65s both appear;display:flex;position:relative;overflow:hidden}.hero-copy{z-index:2;max-width:500px;position:relative}.hero-tag{color:#b6bbd2;letter-spacing:1px;align-items:center;gap:9px;font-size:10px;display:flex}.hero h2{letter-spacing:1px;margin:15px 0 12px;font-size:34px;font-weight:600;line-height:1.45}.hero p{color:#a9acbe;max-width:430px;margin-bottom:20px;font-size:11px;line-height:1.9}.hero-btn{background:var(--lime);color:#252a45;border:0;border-radius:9px;padding:12px 18px;font-size:12px;font-weight:650}.hero-btn:hover{background:#bec9ff}.hero-btn svg:last-child{margin-left:18px}.hero-art{width:340px;height:100%;position:absolute;top:0;right:5%}.orbit{border:1px solid #94a2e528;border-radius:50%;width:280px;height:280px;position:absolute;top:0;left:15px;transform:rotate(-30deg)scaleX(.72)}.orbit2{width:380px;height:380px;top:-48px;left:-25px;transform:rotate(30deg)scaleX(.7)}.big-leaf{color:#8999e8;width:150px;height:150px;position:absolute;top:34px;left:105px;transform:rotate(-22deg)}.big-leaf svg{stroke-width:.6px;filter:drop-shadow(8px 10px 14px #0003);width:100%;height:100%}.floating-ticket{color:#363d5e;background:#fafbece8;border-radius:13px;gap:10px;padding:14px 22px;font-size:11px;display:flex;position:absolute;top:190px;left:35px;transform:rotate(-7deg);box-shadow:0 10px 30px #0002}.floating-ticket small{color:#757990;margin-top:3px;font-size:8px;display:block}.art-word{letter-spacing:2px;color:#8995d440;font-size:23px;font-weight:800;line-height:1.1;position:absolute;bottom:22px;right:0}.stats{grid-template-columns:repeat(4,1fr);gap:15px;margin:24px 0 32px;animation:.65s .1s both appear;display:grid}.stats>div{border:1px solid var(--line);background:#fff;border-radius:14px;padding:18px 22px;position:relative}.stats span{color:#888a96;font-size:10px;display:block}.stats strong{letter-spacing:-.5px;font-variant-numeric:tabular-nums;margin-top:5px;font-size:29px;font-weight:600;line-height:1.5;display:block}.stats small{color:#878a9a;margin-left:8px;font-size:10px;font-weight:400}.stats svg{color:#8388a3;stroke-width:1.4px;width:19px;position:absolute;top:23px;right:20px}.home-grid{grid-template-columns:1.25fr 1fr;align-items:start;gap:24px;display:grid}.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0;padding:26px;animation:.45s .15s both appear}.section-head{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.section-head h2{margin-bottom:0}.section-head .eyebrow{margin-bottom:6px;font-size:8px}.text-btn{color:var(--green);background:0 0;border:0;padding:3px 0;font-size:10px}.text-btn:hover{color:#4252a2;background:0 0}.location-block{margin-top:20px;padding-top:4px}.location-block+.location-block{border-top:1px solid var(--line);padding-top:22px}.location-block h3{align-items:center;gap:10px;margin-bottom:17px;font-size:12px;display:flex}.location-icon{color:#5a6183;background:#e8eaf3;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.loc1{color:#ad9458;background:#f6f0e3}.shift-row{border-top:1px dashed #e8e9ee;align-items:flex-start;gap:20px;padding:14px 0;display:flex}.shift-row .time{color:#505361;font-variant-numeric:tabular-nums;flex:none;width:58px;font-size:12px}.shift-row .time span{color:#9c9ea9;margin-top:3px;font-size:10px;display:block}.shift-people{flex-wrap:wrap;flex:1;gap:10px 20px;display:flex}.shift-people>div{align-items:center;gap:7px;font-size:11px;display:flex}.badge{color:#8e92a4;white-space:nowrap;background:#eeeff4;border-radius:5px;padding:3px 7px;font-size:9px;line-height:1.5;display:inline-block}.badge.credited,.badge.present,.badge.approved{color:#505a89;background:#e7e9f4}.badge.waiting,.badge.pending{color:#ad8a3b;background:#fff3d9}.quiet-empty{color:#9497a4;padding:20px 0;font-size:11px}.chip{color:#757a91;white-space:nowrap;background:#edeef5;border-radius:7px;padding:6px 10px;font-size:9px}.sub{margin-top:-7px}.career-row{color:var(--ink);border-top:1px solid var(--line);align-items:center;gap:16px;padding:22px 0;transition:transform .2s;display:flex}.career-row:hover{transform:translate(4px)}.career-date{text-align:center;background:#eff0f7;border:1px solid #dde0ed;border-radius:10px;min-width:52px;padding:9px 7px;line-height:1.3}.career-date span{color:#8d91a4;font-size:9px}.career-date strong{color:#535b85;font-size:23px;font-weight:600;display:block}.career-row>div:nth-child(2){flex:1;min-width:0}.career-row h3{margin-bottom:9px;font-size:12px;line-height:1.7}.career-row p{color:#878995;align-items:center;gap:6px;margin-bottom:5px;font-size:9px;display:flex}.career-row>svg{color:#878ca7;flex:none}.sync-foot{border-top:1px solid var(--line);color:#a4a7b3;justify-content:space-between;gap:10px;padding-top:15px;font-size:8px;display:flex}.sync-foot a{color:#7a81a4}.empty{text-align:center;color:#989bad;padding:45px 10px}.empty svg{color:#a6abc3;stroke-width:1.3px}.empty p{margin:14px 0 0;font-size:12px}.footer{color:#9ea0ad;justify-content:space-between;gap:15px;padding:30px 0 25px;font-size:9px;display:flex}.footer i{margin:0 7px;font-style:normal}.primary{background:var(--green);color:#fff;border-color:var(--green);font-size:12px}.primary:hover{background:var(--deep)}.centered{margin:0 auto 30px;display:flex}.spaced{margin-top:26px}.toolbar{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px;display:flex}.toolbar input[type=date]{width:auto}.week-strip{flex:1;gap:8px;display:flex}.week-strip button{flex-direction:column;flex:1;gap:4px;min-width:66px;padding:10px 14px;display:flex}.week-strip span{color:var(--muted);font-size:10px}.week-strip strong{font-size:11px}.selected{background:var(--green)!important;color:#fff!important;border-color:var(--green)!important}.selected span{color:#cbcdda!important}.schedule-site{border-top:1px solid var(--line);margin-top:25px;padding-top:25px}.schedule-site h2{align-items:center;gap:10px;font-size:16px;display:flex}.schedule-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.schedule-card{border:1px solid var(--line);background:#f6f7fb;border-radius:12px;padding:20px}.schedule-card h3{margin:10px 0}.schedule-card p{font-size:12px}.schedule-time{color:#666d90;align-items:center;gap:8px;margin-bottom:20px;font-size:12px;display:flex}.person-row{align-items:center;gap:10px;padding:8px 0;font-size:12px;display:flex}.person-row .badge{margin-left:auto}.profile-banner{background:#dcdfef;border:1px solid #d1d5e8;border-radius:18px;align-items:center;gap:20px;padding:28px;display:flex}.profile-banner h2{margin-bottom:2px;font-size:25px}.profile-banner p{color:#747994;margin-bottom:0;font-size:11px}.profile-banner button{background:#fff8;border-color:#cacddf;margin-left:auto;font-size:12px}.profile-stats{grid-template-columns:repeat(3,1fr)}.form-panel{max-width:780px}.form-panel h2{align-items:center;gap:12px;margin-bottom:30px;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field{margin-bottom:20px;display:block}.field>span{color:#6d7081;margin-bottom:8px;font-size:11px;display:block}.field input,.field select,.field textarea{display:block}.form-panel button{margin-top:5px}.inline{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.inline input,.inline select{flex:1;width:auto;min-width:100px}.inline button{flex:none}.login-panel{text-align:center;max-width:430px;margin:35px auto;padding:35px}.login-panel form{text-align:left;margin-top:30px}.login-panel .primary{width:100%}.login-symbol{color:#565e85;background:#e5e7f3;border-radius:20px;place-items:center;width:68px;height:68px;margin:0 auto 20px;display:grid}.tabs{gap:8px;padding-bottom:15px;display:flex;overflow:auto}.tabs button{white-space:nowrap;font-size:11px}.admin-panel{padding:24px}.admin-day-summary{color:#9a8b58;background:#f8f6ed;border:1px solid #ede8d6;border-radius:9px;margin-bottom:20px;padding:12px 16px;font-size:11px}.admin-day-summary span{color:#a7a183}.toolbar select{width:auto;max-width:160px}.search{border:1px solid var(--line);border-radius:9px;flex:1;align-items:center;gap:8px;min-width:170px;padding:0 12px;display:flex}.search input{box-shadow:none;background:0 0;border:none;padding-left:0}.search svg{color:#8287a1}.table-wrap{width:100%;overflow:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%;font-size:11px}th{color:#9497a6;background:#f4f5fa;padding:14px 12px;font-size:10px;font-weight:500}td{color:#5a5e71;border-bottom:1px solid #e9eaf0;padding:17px 12px}td small{color:#989bab;text-overflow:ellipsis;max-width:240px;margin-top:4px;display:block;overflow:hidden}td button{padding:5px 8px;font-size:10px}tbody tr:hover{background:#f9fafd}.settings-grid{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:32px;padding-bottom:30px;display:grid}.settings-grid h2{font-size:17px}.settings-grid input{max-width:100px}.settings-grid small{margin-top:12px;display:block}.audit-list>div{border-bottom:1px solid var(--line);gap:12px;padding:14px 0;display:flex}.audit-list strong{font-size:12px}.audit-list p{color:#9296a7;margin:3px 0;font-size:10px}.audit-dot{background:#868eb6;border-radius:50%;flex:none;width:7px;height:7px;margin-top:9px}.audit-list summary{color:#606687;cursor:pointer;font-size:10px}.audit-list pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f2f8;max-width:700px;padding:15px;font-size:10px}.overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:40;background:#101428c0;justify-content:center;align-items:center;padding:24px;animation:.18s fade;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:20px;width:520px;max-width:100%;max-height:90vh;padding:28px;animation:.25s slide;overflow:auto;box-shadow:0 30px 100px #00041766}.modal>header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px;display:flex}.modal h2{margin:0;font-size:19px}.icon{background:0 0;border:0;padding:5px}.icon svg{color:#888ca0;width:20px}.modal p{font-size:12px}.wide{width:100%}.photo-picker{color:#6a729b;cursor:pointer;background:#edeff8;border:1px dashed #a6acc9;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:210px;margin:20px 0;display:flex;position:relative;overflow:hidden}.photo-picker span{color:#989caf;font-size:10px}.photo-picker strong{font-size:12px;font-weight:500}.photo-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.photo-picker img{object-fit:contain;width:100%;height:100%}.checkbox{align-items:center;gap:10px;margin:10px 0 25px;font-size:12px;display:flex}.modal-actions{justify-content:flex-end;gap:14px;display:flex}.danger-text{color:var(--red);border:0}.record-photo{object-fit:contain;background:#eff0f5;border-radius:9px;width:100%;max-height:230px;margin:10px 0 20px}.leave-info{text-align:center}.wechat{background:#eeeff6;border-radius:10px;margin:25px 0;padding:18px;font-size:12px}.wechat strong{-webkit-user-select:all;user-select:all;margin-left:12px}.detail-list>div{border-bottom:1px solid var(--line);gap:20px;padding:13px 0;font-size:12px;display:flex}.detail-list dt{color:#878ba0;min-width:75px}.detail-list dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.toast{z-index:70;color:#4c5582;background:#fff;border:1px solid #cfd3e5;border-radius:12px;align-items:center;gap:10px;max-width:90vw;padding:15px 23px;font-size:12px;animation:.22s slide;display:flex;position:fixed;bottom:35px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #151a3326}.toast.danger{color:var(--red);border-color:#f1d7d0}.error-banner{color:#b2754b;background:#fff0e7;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 18px;display:flex}.error-text{color:var(--red);font-size:12px}.chat-panel{max-width:800px}.chat{align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.chat p{white-space:pre-wrap;overflow-wrap:anywhere;background:#e8eaf4;border-radius:3px 14px 14px;max-width:85%;margin:0;padding:15px 20px;font-size:13px}.chat.human{justify-content:flex-end}.chat.human p{background:var(--green);color:#fff;border-radius:14px 3px 14px 14px}.chat-input{border-top:1px solid var(--line);align-items:flex-end;gap:14px;margin-top:28px;padding-top:22px;display:flex}.choices{flex-wrap:wrap;gap:10px;display:flex}.choices button{color:#565e89;border-color:#c5c9dd}.mobile-brand{display:none}.content>section,.content>.home-grid{animation:.4s both appear}@keyframes appear{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes slide{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (width>=1500px){.content{padding-left:60px;padding-right:60px}.hero-art{right:10%}.hero{min-height:320px}}@media (width<=1200px){.sidebar{width:200px;padding:28px 18px}.main{width:calc(100% - 200px);margin-left:200px}.content{padding:32px 26px 0}.topbar{padding:0 26px}.hero-art{opacity:.8;right:0}.hero-copy{max-width:60%}.home-grid{grid-template-columns:1fr 1fr;gap:18px}.panel{padding:22px}.shift-people{flex-direction:column;gap:10px}.stats>div{padding:16px}.date-stamp{display:none}.week-strip{flex-basis:100%}.week-strip button{min-width:45px;padding:8px}.week-strip strong{font-size:10px}.stats svg{right:13px}.hero h2{font-size:31px}}@media (width<=900px){.home-grid{grid-template-columns:1fr}.shift-people{flex-direction:row;gap:22px}.connection{display:none}.hero-art{width:280px;right:0}.hero-copy{max-width:62%}.settings-grid{grid-template-columns:1fr}.stats{gap:10px}.stats strong{font-size:25px}.stats svg{display:none}.form-grid{gap:12px}}@media (width<=650px){body{font-size:13px}.sidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);z-index:20;background:#fffffff5;border-right:0;width:100%;height:72px;padding:6px 12px;inset:auto 0 0}.sidebar .brand,.side-caption,.side-spacer,.side-note,.side-foot{display:none}.sidebar nav{flex-direction:row;justify-content:space-around;gap:0;height:100%;padding-right:46px}.sidebar nav button{border-radius:10px;flex-direction:column;flex:1;gap:3px;min-width:55px;padding:8px;font-size:9px}.sidebar nav button svg:last-child{display:none}.sidebar nav button.active{background:#e7e9f3}.sidebar .admin-link{flex-direction:column;gap:4px;width:43px;height:50px;padding:8px;font-size:0;position:absolute;top:10px;right:10px}.admin-link:after{content:"管理";font-size:9px}.admin-link svg:last-child{display:none}.main{width:100%;margin-left:0;padding-bottom:72px}.topbar{height:66px;padding:0 20px}.breadcrumb{display:none}.mobile-brand{letter-spacing:1px;align-items:center;gap:7px;font-size:15px;font-weight:600;display:flex}.top-right{gap:0}.identity{gap:6px;font-size:10px}.identity .avatar{width:29px;height:29px;font-size:9px}.content{padding:26px 18px 0}.page-heading{align-items:flex-start;gap:10px;margin-bottom:23px}.page-heading .eyebrow{letter-spacing:1.2px;font-size:7px}h1{letter-spacing:-.6px;margin-bottom:9px;font-size:24px}.page-heading .muted{font-size:10px;line-height:1.9}.page-heading button{white-space:nowrap;padding:9px 11px;font-size:10px}.hero{border-radius:18px;min-height:295px;padding:27px 25px}.hero-copy{max-width:100%}.hero h2{letter-spacing:1px;font-size:29px;line-height:1.5}.hero p{max-width:215px;font-size:10px}.hero-art{opacity:.45;pointer-events:none;width:140px;top:45px;right:-20px}.hero-art .big-leaf{width:125px;height:125px;top:35px;left:0}.floating-ticket{display:none}.hero-art .orbit{width:240px;height:240px;top:0;left:-45px}.hero-art .orbit2{width:300px;height:300px;top:-25px;left:-60px}.art-word{font-size:14px;bottom:80px;right:20px}.hero-btn{padding:11px 16px;font-size:11px}.hero-btn svg:last-child{margin-left:6px}.stats{grid-template-columns:1fr 1fr;gap:10px;margin:16px 0 24px}.stats>div{padding:14px 16px}.stats span{font-size:9px}.stats strong{font-size:26px}.stats svg{width:15px;display:block;top:18px;right:14px}.stats small{font-size:9px}.panel{border-radius:16px;padding:21px 18px}.section-head{gap:10px;margin-bottom:20px}.section-head h2{font-size:17px}.section-head .eyebrow{letter-spacing:1.2px;font-size:7px}.section-head .text-btn{font-size:9px}.shift-row{gap:12px}.shift-people{flex-direction:column;gap:10px}.shift-people>div{font-size:11px}.location-block h3{font-size:12px}.home-grid{gap:20px}.footer{flex-direction:column;gap:5px;padding:24px 0 20px;font-size:8px}.footer>span:last-child{display:none}.toolbar{gap:10px}.week-strip{gap:3px}.week-strip button{border-radius:7px;min-width:36px;padding:8px 4px}.week-strip span{font-size:9px}.week-strip strong{font-size:8px}.schedule-grid{grid-template-columns:1fr}.schedule-card{padding:17px}.profile-banner{gap:14px;padding:20px}.profile-banner h2{font-size:22px}.profile-banner p{font-size:9px}.avatar.large{width:53px;height:53px;font-size:16px}.profile-banner button{padding:8px 10px;font-size:10px}.profile-stats{grid-template-columns:1fr 1fr}.profile-stats>div:first-child{grid-column:span 2}.form-grid{grid-template-columns:1fr}.form-panel h2{font-size:18px}.field{margin-bottom:18px}.form-panel{padding:24px 20px}.overlay{align-items:center;padding:14px}.modal{border-radius:17px;max-height:88vh;padding:24px 20px}.modal .form-grid{grid-template-columns:1fr 1fr}.modal h2{font-size:18px}.toast{justify-content:center;min-width:230px;font-size:11px;bottom:85px}.tabs{gap:6px}.tabs button{padding:9px 12px;font-size:10px}.admin-panel{padding:20px 14px}.admin-day-summary{padding:10px;font-size:10px}.admin-day-summary span{margin-top:5px;display:block}.settings-grid{gap:22px}.inline{gap:8px}.inline input{max-width:100%}.login-panel{margin:10px auto;padding:28px 23px}.chat-panel{padding:20px 15px}.chat p{padding:13px 15px;font-size:12px}.chat-input{gap:8px}.chat-input button{padding:10px 12px}.chat-input textarea{font-size:12px}.detail-list dt{min-width:65px}.page-heading .inline{justify-content:flex-end}.profile-banner button{flex:none}.connection{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.mobile-hint{display:none}@media (width<=650px){.content:has(.hero){flex-direction:column;display:flex}.content:has(.hero)>.page-heading{order:0}.content:has(.hero)>.hero{order:1}.content:has(.hero)>.home-grid{order:2;margin-top:18px}.content:has(.hero)>.stats{order:3}.content:has(.hero)>.footer{order:4}.hero{min-height:0;padding:20px 22px}.hero-art,.hero-tag{display:none}.hero h2{letter-spacing:.3px;margin:0 0 15px;font-size:20px}.hero h2 br,.hero p{display:none}.hero-btn{padding:10px 16px}.page-heading{margin-bottom:18px}.page-heading .eyebrow{display:none}.page-heading h1{margin-bottom:7px;font-size:23px}.muted{color:#5f6376}.page-heading .muted{font-size:11px}.hero-btn{font-size:12px}.stats span{color:#5e6278;font-size:11px}.stats small{color:#606580;font-size:10px}.home-grid .shift-row{padding:13px 0;display:flex}.home-grid .shift-people{flex-flow:wrap;gap:8px 12px}.home-grid .shift-people .avatar{display:none}.home-grid .shift-people>div{gap:6px;font-size:11px}.home-grid .location-block{margin-top:13px}.home-grid .location-block+.location-block{padding-top:17px}.home-grid .quiet-empty{color:#686d84;padding:9px 0;font-size:11px}.home-grid .panel{padding:20px 18px}.home-grid .section-head{margin-bottom:15px}.mobile-hint{color:#737994;margin-top:3px;font-size:10px;display:block}.home-grid .time{width:48px;font-size:13px}.home-grid .time span{color:#818599;font-size:11px}.home-grid .badge{font-size:9px}.career-row p{color:#6f7385;font-size:11px}.sync-foot{color:#7e8297;font-size:10px}.empty p{color:#70758c}}.mobile-admin-label{display:none}@media (width<=650px){.sidebar{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;height:72px;padding:6px 10px;display:grid}.sidebar nav{display:contents}.sidebar nav button,.sidebar .admin-link{border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:100%;min-width:0;height:60px;padding:7px 2px;font-size:11px;line-height:16px;position:static}.sidebar nav button>svg:first-child,.sidebar .admin-link>svg:first-child{stroke-width:2px;flex:0 0 22px;width:22px;height:22px;margin:0}.sidebar .admin-link:after{content:none}.desktop-admin-label{display:none}.mobile-admin-label{display:block}.sidebar .admin-link.active{color:var(--green);background:#e7e9f3;font-weight:650}}*{scrollbar-width:thin;scrollbar-color:#a7aaba transparent}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#a7aaba padding-box padding-box;border:2px solid #0000;border-radius:20px}::-webkit-scrollbar-thumb:hover{background-color:#686e8c}::-webkit-scrollbar-corner{background:0 0}.table-wrap{padding-bottom:6px}.duty-table{border:1px solid var(--line);border-radius:12px}.duty-table td{padding:12px;font-size:12px}.names-cell{white-space:normal;min-width:140px;max-width:260px}.time-cell{font-variant-numeric:tabular-nums}.table-hint{color:var(--muted);margin:0 0 22px;font-size:12px}.weekly-roster+.weekly-roster{margin-top:26px}.weekly-roster h3{align-items:center;gap:8px;margin-bottom:12px;font-size:14px;display:flex}.weekly-roster h3>span{color:var(--muted);margin-left:auto;font-size:11px;font-weight:400}.roster-scroll{border:1px solid var(--line);scrollbar-gutter:stable;border-radius:12px;max-height:460px}.roster-table{table-layout:fixed;white-space:normal;min-width:660px}.roster-table thead th{z-index:2;color:#505468;text-align:center;background:#eeeff4;padding:12px 8px;font-size:12px;font-weight:600;position:sticky;top:0}.roster-table th:first-child{z-index:3;background:#eeeff4;width:108px;position:sticky;left:0}.roster-table tbody th{color:#505468;text-align:center;border-bottom:1px solid var(--line);padding:10px 6px;font-size:12px;font-weight:600}.roster-table tbody th span{color:#818491;font-size:11px;font-weight:400;display:block}.roster-table td{border-left:1px solid var(--line);vertical-align:middle;padding:5px}.roster-cell{text-align:left;background:0 0;border:0;border-radius:7px;flex-wrap:wrap;justify-content:flex-start;gap:3px;width:100%;min-height:48px;padding:9px 16px 9px 7px;font-size:12px;line-height:1.7;display:flex;position:relative}.roster-cell>span{overflow-wrap:anywhere}.roster-cell>svg{color:#8f93a7;opacity:.65;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.roster-cell:hover{background:#e4e6f0;box-shadow:inset 0 0 0 1px #cdd0e1}.roster-cell small{color:#a37a66;font-size:10px}.disabled-shift{color:#987b6b;background:#f7f3ef}.roster-empty{text-align:center;color:#c0c2cb;display:block}.roster-mobile-hint{display:none}@media (width<=650px){.main{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.sidebar{inset:auto 12px calc(12px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(24px)saturate(180%);background:#f7fbf5d1;border:1px solid #ffffffb8;border-radius:29px;gap:2px;width:calc(100% - 24px);height:74px;padding:6px;box-shadow:0 12px 36px #141b3d26,0 2px 8px #141b3d10,inset 0 1px #fff}.sidebar nav button,.sidebar .admin-link{color:#606374;background:0 0;border-radius:23px;gap:4px;height:60px;font-size:10px;transition:background .25s,box-shadow .25s,transform .18s}.sidebar nav button.active,.sidebar .admin-link.active{color:#242d5b;background:#d7daebb8;box-shadow:inset 0 1px 1px #fff9,0 2px 5px #262c4b20}.sidebar nav button:hover,.sidebar .admin-link:hover{background:#dfe2efb3}.toast{bottom:calc(100px + env(safe-area-inset-bottom))}.weekly-roster h3{font-size:13px}.roster-table{min-width:640px}.roster-table th:first-child{width:87px}.roster-scroll{max-height:400px}.roster-mobile-hint{color:#7a7d8b;margin-top:8px;font-size:10px;display:block}.table-hint{margin-bottom:18px;font-size:11px}.admin-panel .section-head{align-items:flex-start}.admin-panel .section-head .primary{white-space:nowrap;padding:9px 10px}}@media (prefers-reduced-transparency:reduce){.sidebar{background:#f1f2f8}}html,body{scrollbar-width:none;scrollbar-gutter:auto}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}.day-plan-control{background:#edeef6;border:1px solid #d9dce8;border-radius:12px;flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px;padding:18px;display:flex}.day-plan-control>div{flex:1;min-width:160px}.day-plan-control h3{margin-bottom:4px;font-size:13px}.day-plan-control p{color:var(--muted);margin:0;font-size:11px}.day-plan-control label{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.day-plan-control select{width:90px;padding:8px}.day-plan-control button{font-size:12px}.day-plan-preview{border:1px solid var(--line);border-radius:12px;margin:16px 0;padding:16px}.day-plan-preview>div+div{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.day-plan-preview h3{font-size:13px}.day-plan-preview p{gap:12px;margin:7px 0;font-size:11px;display:flex}.day-plan-preview strong{font-variant-numeric:tabular-nums;flex:none}.date-plan-note{color:#505673;background:#e8eaf4;border-radius:9px;padding:10px 14px;font-size:12px}@media (width<=650px){.day-plan-control{gap:10px;padding:14px}.day-plan-control>div{flex-basis:100%}.day-plan-control button{margin-left:auto;padding:9px 10px;font-size:11px}.day-plan-preview p{flex-wrap:wrap;gap:4px 12px}}.home-grid>.panel:first-child .section-head{margin-bottom:12px}.home-grid .location-block{margin-top:12px;padding-top:0}.home-grid .location-block+.location-block{padding-top:12px}.home-grid .location-block h3{margin-bottom:7px;font-size:12px}.home-grid .location-icon{border-radius:7px;width:24px;height:24px}.home-grid .location-icon svg{width:14px;height:14px}.home-grid .shift-row{align-items:center;gap:10px;padding:8px 0}.home-grid .shift-row .time{white-space:nowrap;width:103px;font-size:11px;line-height:1.5}.home-grid .shift-row .time span{color:#787b8a;margin:0;font-size:11px;display:inline}.home-grid .shift-row .time span:before{content:" – "}.home-grid .shift-people{flex-direction:row;align-items:center;gap:5px 10px}.home-grid .shift-people>div{gap:5px;font-size:11px}.home-grid .shift-people .avatar{display:none}.home-grid .badge{padding:2px 5px;font-size:9px}.personal-shifts .section-head,.personal-records .section-head{margin-bottom:13px}.personal-shifts .section-head h2,.personal-records .section-head h2,.full-roster h2{font-size:17px}.compact-empty{color:#7c7f91;margin:0;padding:12px 0;font-size:12px}.personal-shift-list>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.personal-shift-list strong{margin-right:15px;font-size:12px;display:inline-block}.personal-shift-list strong span{color:var(--muted);margin-left:6px;font-size:10px;font-weight:400}.personal-shift-list b{font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.personal-shift-list small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.personal-shift-list .badge{flex:none;font-size:10px}.personal-record-scroll{max-height:290px;overflow:auto}.personal-record-table{white-space:normal;table-layout:fixed}.personal-record-table th{padding:9px 8px;font-size:11px}.personal-record-table th:first-child{width:60%}.personal-record-table th:nth-child(2){width:25%}.personal-record-table td{vertical-align:middle;padding:10px 8px;font-size:12px}.personal-record-table td>strong{color:#505469;font-size:12px;display:block}.personal-record-table td>span{font-variant-numeric:tabular-nums;margin-top:3px;font-size:11px;display:block}.personal-record-table td small{white-space:normal;margin-top:3px;font-size:10px}.personal-record-table .badge{font-size:10px}.full-roster summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;list-style:none;display:flex}.full-roster summary::-webkit-details-marker{display:none}.full-roster summary h2{margin:0 0 4px}.full-roster summary small{color:var(--muted);font-size:11px}.full-roster summary>svg{color:#7a7e92;flex:none;transition:transform .2s}.full-roster[open] summary>svg{transform:rotate(90deg)}.full-roster-body,.daily-roster section+section{margin-top:20px}.daily-roster h3{align-items:center;gap:8px;margin-bottom:8px;font-size:13px;display:flex}.daily-roster-row{border-top:1px solid var(--line);align-items:center;gap:14px;padding:10px 0;display:flex}.daily-roster-row>strong{font-variant-numeric:tabular-nums;flex:none;width:103px;font-size:12px;font-weight:500}.daily-roster-row>strong span{color:var(--muted);margin-left:4px;font-size:11px}.daily-roster-row>div{flex-wrap:wrap;gap:6px 12px;display:flex}.daily-person{align-items:center;gap:5px;font-size:12px;display:inline-flex}@media (width<=650px){.home-grid>.panel:first-child{padding:16px 14px}.home-grid .shift-row{gap:7px;padding:7px 0}.home-grid .shift-row .time{width:99px;font-size:10px}.home-grid .shift-row .time span{font-size:10px}.home-grid .shift-people{gap:4px 8px}.home-grid .shift-people>div{gap:4px;font-size:10px}.home-grid .section-head .eyebrow{display:none}.home-grid .section-head h2{font-size:16px}.personal-shifts,.personal-records,.full-roster{padding:18px 15px}.personal-shifts .section-head h2,.personal-records .section-head h2,.full-roster h2{font-size:16px}.personal-shift-list strong{margin-right:9px}.personal-shift-list b{font-size:12px}.daily-roster-row{gap:8px;padding:9px 0}.daily-roster-row>strong{width:92px;font-size:11px}.daily-roster-row>strong span{margin-left:2px;font-size:10px}.daily-person{gap:4px;font-size:11px}.daily-roster-row>div{gap:5px 8px}.daily-person .badge{padding:2px 5px;font-size:9px}.content:has(.personal-shifts)>.spaced{margin-top:16px}}.leave-contact-card{background:#e7e9f3;border:1px solid #d8dbe8;border-radius:13px;justify-content:space-between;align-items:center;gap:10px;margin-top:16px;padding:14px 16px;display:flex}.leave-contact-card>div{align-items:center;gap:10px;min-width:0;display:flex}.leave-contact-card svg{color:#61688a;flex:none}.leave-contact-card strong{font-size:12px;font-weight:600;display:block}.leave-contact-card small{color:#70758c;margin-top:3px;font-size:10px;display:block}.leave-contact-card button{white-space:nowrap;flex:none}.checkin-match{background:#edeef6;border-radius:10px;margin-top:17px;padding:13px 15px}.checkin-match>strong{font-size:12px}.checkin-match p{margin:7px 0 0;font-size:11px}.checkin-match small{color:#72768b;margin-top:8px;font-size:10px;display:block}@media (width<=650px){.leave-contact-card{gap:8px;padding:12px}.leave-contact-card>div{gap:7px}.leave-contact-card strong{font-size:11px}.leave-contact-card small{font-size:9px}.leave-contact-card .text-btn{gap:2px;font-size:10px}.content:has(.home-grid){flex-direction:column;display:flex}.content:has(.home-grid)>.page-heading{order:0}.content:has(.home-grid)>.home-grid{order:1}.content:has(.home-grid)>.stats{order:2}.content:has(.home-grid)>.footer{order:3}}.attendance-mobile{display:none}@media (width<=650px){.attendance-desktop{display:none}.attendance-mobile{border-top:1px solid var(--line);display:block}.attendance-item{border-bottom:1px solid var(--line);padding:12px 0}.attendance-item-head{align-items:center;gap:8px;display:flex}.attendance-item-head>strong{color:var(--ink);overflow-wrap:anywhere;min-width:0;font-size:13px}.attendance-item-head>.badge{flex:none;font-size:10px}.attendance-hours{white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px;font-weight:600}.attendance-hours small{color:var(--muted);margin-left:3px;font-size:9px;font-weight:400}.attendance-action{min-height:34px;color:var(--green);background:#edeff7;border-color:#d5d8e6;flex:none;gap:2px;padding:6px 8px;font-size:11px}.attendance-item-info{color:#5e6276;flex-wrap:wrap;justify-content:space-between;gap:3px 8px;margin-top:6px;font-size:11px;display:flex}.attendance-item-info b{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}.attendance-item-foot{color:#828596;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:4px;font-size:10px;display:flex}.attendance-photo{color:#676e92;align-items:center;gap:3px;display:inline-flex}}.member-list{border-top:1px solid var(--line)}.member-list>div{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:11px 0;display:flex}.member-list strong{overflow-wrap:anywhere;min-width:0;font-size:13px}.member-credit{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:11px}.member-tag-toggle{color:#73778d;background:#f3f4f9;min-width:94px;min-height:35px;padding:7px 10px;font-size:11px}.member-tag-toggle.is-freshman{color:var(--green);background:#dcdff0;border-color:#c1c6df}.freshman-label{white-space:nowrap;background:#e4e7f5;border-radius:5px;padding:2px 5px;line-height:1.5;color:#475184!important;margin:0!important;font-size:9px!important;display:inline-block!important}@media (width<=650px){.member-list>div{gap:7px}.member-list .avatar{width:25px;height:25px;font-size:9px}.member-list strong{font-size:12px}.member-credit{font-size:10px}.member-tag-toggle{min-width:83px;padding:7px 8px;font-size:10px}.attendance-item-head:has(.freshman-label){gap:5px}}.semester-card{background:var(--deep);color:#fff;border-radius:20px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;padding:24px 30px;display:flex;box-shadow:inset 0 1px #ffffff10}.semester-today{color:#b6bace;align-items:center;gap:7px;margin-bottom:6px;font-size:11px;display:flex}.semester-date>div{align-items:center;gap:18px;display:flex}.semester-date strong{font-variant-numeric:tabular-nums;letter-spacing:.3px;font-size:34px;font-weight:650;line-height:1.4}.semester-date strong small{color:#cdd0e0;margin:0 7px;font-size:16px;font-weight:400}.semester-weekday{color:#cdd0e0;font-size:14px}.semester-week{text-align:right;border-left:1px solid #ffffff24;padding-left:26px}.semester-week>span{color:#b6bace;font-size:11px;display:block}.semester-week strong{color:var(--lime);font-variant-numeric:tabular-nums;font-size:38px;font-weight:600;line-height:1.4;display:block}.semester-week strong small{margin:0 5px;font-size:13px;font-weight:400}@media (width<=650px){.semester-card{border-radius:18px;gap:12px;margin-bottom:18px;padding:19px 20px}.semester-date strong{font-size:27px}.semester-date strong small{margin:0 4px;font-size:13px}.semester-date>div{gap:9px}.semester-weekday{font-size:12px}.semester-week{padding-left:16px}.semester-week strong{font-size:32px}.semester-week strong small{margin:0 3px;font-size:11px}.content:has(.home-grid)>.semester-card{order:1}.content:has(.home-grid)>.home-grid{order:2}.content:has(.home-grid)>.stats{order:3}.content:has(.home-grid)>.footer{order:4}}.semester-card{background:radial-gradient(at 92% 0,#545c8645,#0000 55%),linear-gradient(115deg,#12193e,#20284e);border:1px solid #4f567b45;padding:20px 28px;box-shadow:0 6px 18px #151c3c10,inset 0 1px #ffffff12}.semester-date>div{gap:14px}.semester-date strong{letter-spacing:-.7px;white-space:nowrap;font-size:30px;line-height:1.35}.semester-today{color:#afb3c8;margin-bottom:7px;font-size:10px}.semester-weekday{color:#d9dcec;white-space:nowrap;background:#ffffff0b;border:1px solid #ffffff20;border-radius:20px;align-items:center;padding:3px 10px;font-size:11px;display:inline-flex}.semester-week{border:0;flex-direction:column;flex:none;align-items:flex-end;gap:6px;padding-left:12px;display:flex}.semester-week>span{color:#b6bad0;font-size:10px}.semester-week strong{color:#242a4a;white-space:nowrap;background:#99a7efe8;border:1px solid #b4bff84d;border-radius:12px;align-items:baseline;gap:5px;padding:4px 11px;font-size:11px;font-weight:500;line-height:1.4;display:inline-flex;box-shadow:inset 0 1px #ffffff70,0 2px 6px #080e2915}.semester-week strong b{font-variant-numeric:tabular-nums;font-size:25px;font-weight:700;line-height:1.2}@media (width<=650px){.semester-card{border-radius:18px;gap:8px;min-height:100px;padding:17px 18px}.semester-date strong{letter-spacing:-.6px;font-size:25px}.semester-date>div{gap:8px}.semester-weekday{padding:2px 7px;font-size:10px}.semester-week{gap:5px;padding-left:0}.semester-week strong{border-radius:10px;gap:3px;padding:4px 8px;font-size:10px}.semester-week strong b{font-size:23px}}@media (width<=360px){.semester-date strong{font-size:22px}.semester-date>div{gap:5px}.semester-card{padding:16px 14px}}.volunteer-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.volunteer-entry h2,.volunteer-ranking h2{align-items:center;gap:10px;display:flex}.volunteer-entry textarea{resize:vertical;width:100%;min-height:128px}.recognize-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.entry-error{color:#bc5548;background:#fff3ef;border-radius:12px;padding:12px;font-size:14px}.recognition-preview{border-top:1px solid #e4e5eb;margin-top:24px;padding-top:20px;animation:.2s recognition-in}.recognition-record{background:#f4f5f9;border-radius:14px;margin-bottom:12px;padding:14px}.recognition-fields{grid-template-columns:minmax(0,1fr) 100px 30px;align-items:center;gap:10px;display:grid}.recognition-record .field{margin-bottom:12px}.recognition-record .field:last-child{margin-bottom:0}.my-ranking{background:#e8eaf5;border-radius:14px;justify-content:space-between;align-items:center;margin:18px 0;padding:15px;display:flex}.my-ranking span b{margin-left:12px}.my-ranking strong{font-size:24px}.my-ranking small{font-size:12px;font-weight:400}.ranking-search{border:1px solid #dfe0e7;border-radius:12px;align-items:center;gap:8px;margin:18px 0 8px;padding:0 12px;display:flex}.ranking-search input{background:0 0;border:0;width:100%;min-width:0;padding:11px 0}.ranking-row{border-bottom:1px solid #ebecf1;align-items:center;gap:14px;padding:14px 4px;display:flex}.rank-number{text-align:center;color:#9396a3;width:28px;font-weight:700}.rank-1{color:#ab833a}.rank-2{color:#74788d}.rank-3{color:#a87e64}.ranking-row>div{flex:1;min-width:0}.ranking-row p{color:#8d90a0;margin:5px 0 0;font-size:12px}.ranking-row strong small{color:#3b4470;margin-left:6px;font-size:10px}.ranking-row>b{color:#31385d;white-space:nowrap;font-size:20px}.ranking-row>b small{margin-left:5px;font-size:11px;font-weight:400}.primary:active{transform:scale(.98)}@keyframes recognition-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.volunteer-layout{grid-template-columns:1fr;gap:18px}.recognize-footer{align-items:flex-start}.recognize-footer small{max-width:52%;line-height:1.6}.recognize-footer .primary{white-space:nowrap}.recognition-fields{grid-template-columns:minmax(0,1fr) 85px 25px;gap:8px}.volunteer-ranking .section-head{gap:10px}.ranking-row{padding:12px 0}.volunteer-ranking h2,.volunteer-entry h2{font-size:20px}.volunteer-ranking .section-head small{font-size:11px}}@media (prefers-reduced-motion:reduce){.recognition-preview{animation:none}}.door-contact{color:#484d66;background:#ebedf6;border:1px solid #dcdfed;border-radius:12px;margin:0 0 12px}.door-contact summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;font-size:13px;list-style:none;display:flex}.door-contact summary::-webkit-details-marker{display:none}.door-contact summary>div{align-items:center;gap:8px;display:flex}.door-contact summary strong{color:#31385b;margin-left:8px}.door-contact-action{white-space:nowrap;align-items:center;gap:3px;font-size:12px;display:flex}.door-contact[open] summary .door-contact-action svg{transform:rotate(90deg)}.door-contact-body{padding:0 13px 11px;animation:.2s recognition-in}.door-contact-body p{color:#787c92;margin:0 0 10px;font-size:12px;line-height:1.6}.door-contact-method{justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:13px;display:flex}.door-contact-method span{align-items:center;gap:10px;min-width:0;display:flex}.door-contact-method a,.door-contact-method strong{color:#373e63;overflow-wrap:anywhere;font-weight:600}.door-contact-method button,.door-call{white-space:nowrap;background:#fff;border:1px solid #d2d5e4;border-radius:8px;align-items:center;gap:4px;padding:6px 10px;font-size:12px;text-decoration:none;display:flex}.door-contact-method button:active{transform:scale(.97)}@media (width<=600px){.door-contact{margin:0 0 8px}.door-contact summary{padding:9px 10px;font-size:12px}.door-contact-action{font-size:11px}.door-contact-method{font-size:12px}}@media (prefers-reduced-motion:reduce){.door-contact-body{animation:none}}.topbar{z-index:20;-webkit-backdrop-filter:blur(20px)saturate(145%);background:#f9fbf6b8;border-bottom:1px solid #fff9;height:64px;transition:background .22s,box-shadow .22s;position:sticky;top:0;box-shadow:0 2px 12px #1f3d2e06}.topbar.is-scrolled{background:#eef5eae0;box-shadow:0 3px 16px #1f3d2e12}.topbar .identity{color:#474b61;background:#ffffff8f;border:1px solid #dee7d8a6;border-radius:999px;gap:8px;min-height:38px;padding:4px 12px 4px 5px;font-size:12px;line-height:1.2;box-shadow:0 1px 3px #26453006}.topbar .identity:hover{background:#edf5e5e6;border-color:#d0d3e4}.topbar .identity .avatar{color:#606683;background:#dfe2ee;width:27px;height:27px;font-size:10px;font-weight:600}.identity-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}@media (width<=760px){.topbar{height:calc(56px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 18px 0}.topbar .mobile-brand{letter-spacing:.25px;color:#3b4057;white-space:nowrap;gap:7px;font-size:14px;font-weight:550}.mobile-brand svg{stroke-width:1.8px;width:18px;height:18px}.topbar .top-right{gap:0}.topbar .identity{gap:7px;min-height:36px;padding:4px 10px 4px 4px;font-size:11px}.topbar .identity .avatar{width:26px;height:26px;font-size:9px}.identity-name{max-width:90px}}@media (prefers-reduced-motion:reduce){.topbar{transition:none}}.topbar,.topbar.is-scrolled{box-shadow:none;-webkit-backdrop-filter:none;pointer-events:none;background:0 0;border:0}.topbar .mobile-brand,.topbar .identity,.topbar .breadcrumb{pointer-events:auto;-webkit-backdrop-filter:blur(18px)saturate(135%);background:#fbfdf8e0;border:1px solid #fffffff0;border-radius:999px;transition:background .2s,box-shadow .2s;box-shadow:0 4px 16px #24412e14,inset 0 0 0 1px #dbe6d340}.topbar .breadcrumb{color:#636673;padding:9px 15px}.topbar .connection{display:none}.topbar .identity{border-color:#fffffff0;min-height:38px;padding:4px 12px 4px 5px}@media (width<=760px){.topbar{height:calc(62px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 16px 0}.topbar .mobile-brand{letter-spacing:.15px;gap:6px;min-height:38px;padding:0 13px;font-size:13px}.topbar .identity{min-height:38px;padding:4px 11px 4px 5px;font-size:11px}.topbar .identity .avatar{width:27px;height:27px}.topbar .breadcrumb{display:none}}@media (prefers-reduced-motion:reduce){.topbar .mobile-brand,.topbar .identity,.topbar .breadcrumb{transition:none}}.topbar .mobile-brand,.topbar .identity,.topbar .breadcrumb{-webkit-backdrop-filter:blur(16px);background:#f7f9ffcc;border:1px solid #bec9e98c;box-shadow:0 2px 8px #1e2d5b09}.topbar.is-scrolled .mobile-brand,.topbar.is-scrolled .identity,.topbar.is-scrolled .breadcrumb{background:#f7f9fff0;box-shadow:0 3px 12px #1e2d5b12}.topbar .identity{color:#4f5366;border-color:#bec9e98c;gap:7px}.topbar .identity .avatar{color:#6a6f88;background:#e1e3f0}.topbar .identity .avatar svg{stroke-width:1.7px}@media (width<=760px){.topbar{height:calc(56px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 18px 0}.topbar .mobile-brand{letter-spacing:.15px;color:#4c5065;gap:6px;min-height:34px;padding:0 11px;font-size:12px;font-weight:500}.topbar .mobile-brand svg{stroke-width:1.7px;width:16px;height:16px}.topbar .identity{gap:6px;min-height:34px;padding:3px 11px 3px 4px;font-size:11px}.topbar .identity .avatar{width:26px;height:26px}.topbar .identity .avatar svg{width:13px;height:13px}}.content{padding-top:20px}@media (width<=760px){.content{padding-top:8px}}@media (width<=900px),(hover:none) and (pointer:coarse){input:not([type=checkbox]):not([type=radio]),select,textarea{line-height:1.5;font-size:16px!important}}.legacy-attachments{flex-wrap:wrap;gap:12px;margin:16px 0;display:flex}.legacy-attachments a{overflow-wrap:anywhere;width:130px;font-size:11px}.legacy-attachments img{object-fit:cover;border-radius:10px;width:130px;height:100px;margin-bottom:5px;display:block}.profile-duty-note{margin:-4px 0 20px;font-size:12px;line-height:1.8}@media (width<=760px){.profile-duty-note{margin:0 0 16px;font-size:11px}}.applications-manager .section-head p{margin:6px 0 0;font-size:13px}.application-counts{color:var(--muted);gap:22px;margin:20px 0;font-size:13px;display:flex}.application-counts strong{color:var(--ink);margin-left:5px;font-size:20px}.application-filters{grid-template-columns:minmax(200px,2fr) repeat(3,minmax(120px,1fr));gap:10px;display:grid}.application-filters .search{min-width:0;margin:0}.application-filters input,.application-filters select{width:100%;min-width:0}.application-results{color:var(--muted);justify-content:space-between;align-items:center;margin:16px 0;font-size:13px;display:flex}.application-results button{padding:5px 10px;font-size:12px}.application-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.application-card{background:#fff;border:1px solid #e1e2ea;border-radius:18px;min-width:0;padding:18px}.application-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.application-card-head h3{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:18px;display:flex}.application-card-head h3 span{color:#737684;background:#edeef4;border-radius:6px;padding:3px 7px;font-size:12px;font-weight:400}.application-card-head p{color:#7e8191;overflow-wrap:anywhere;margin:7px 0 0;font-size:13px}.application-contact-toggle{white-space:nowrap;color:#565b74;cursor:pointer;align-items:center;gap:6px;padding-top:3px;font-size:12px;display:flex}.application-contact-toggle input{accent-color:#394375;width:16px;height:16px;min-height:0;margin:0;padding:0}.application-status{color:#957945;white-space:nowrap;font-size:12px}.application-status.done{color:#394375}.application-interests{color:#7e8293;flex-wrap:wrap;gap:6px 16px;margin:16px 0 12px;font-size:12px;display:flex}.application-interests b{color:#444962;margin-left:3px;font-weight:500}.application-contact{border-top:1px solid #e9eaf0;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:14px;display:flex}.application-contact>span{overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;min-width:0}.application-contact button{background:#f3f4f8;border:0;flex-shrink:0;padding:6px 9px;font-size:12px}.application-card details{border-top:1px solid #e9eaf0;padding-top:10px;font-size:13px}.application-card summary{cursor:pointer;color:#737685}.application-card details>div{padding-top:4px}.application-card details p{white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0 0;line-height:1.7}.application-pagination{color:#7e8191;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;font-size:12px;display:flex}.application-pagination>div{gap:8px;display:flex}.application-pagination button{padding:8px 12px;font-size:13px}.application-pagination button:disabled{opacity:.4;cursor:default}@media (width<=700px){.applications-manager .section-head{align-items:flex-start;gap:12px}.applications-manager .section-head h2{font-size:20px}.applications-manager .section-head>button{flex-shrink:0;padding:9px;font-size:12px}.application-counts{gap:18px;margin:18px 0}.application-filters{grid-template-columns:1fr 1fr;gap:8px}.application-filters .search,.application-filters select:last-child{grid-column:1/-1}.application-cards{grid-template-columns:1fr;gap:12px}.application-card{padding:16px}.application-pagination{flex-wrap:wrap}.application-pagination>div{margin-left:auto}.applications-manager .section-head{grid-template-columns:1fr auto;align-items:center;display:grid}.applications-manager .section-head>div{display:contents}.applications-manager .section-head h2{grid-column:1}.applications-manager .section-head p{grid-area:2/1/auto/-1;margin:0;font-size:12px}.applications-manager .section-head>button{grid-area:1/2}.application-card-head h3{font-size:17px}}.application-results{scroll-margin-top:100px}@media (prefers-reduced-motion:reduce){.applications-manager{scroll-behavior:auto}}.page-jump{align-items:center;gap:8px;display:flex}.page-jump label{white-space:nowrap;align-items:center;gap:6px;display:flex}.page-jump input{text-align:center;width:62px;min-height:36px;padding:6px}.page-jump button{padding:8px 12px}.record-filters{grid-template-columns:minmax(200px,2fr) 1fr 1fr;gap:10px;display:grid}.record-filters.is-volunteer{grid-template-columns:minmax(200px,2fr) 1fr}.record-filters .search{min-width:0;margin:0}.record-filters input,.record-filters select{width:100%;min-width:0}.admin-records .application-counts{flex-wrap:wrap;align-items:center;gap:10px 18px}.application-counts>button{background:#f0f1f7;border:0;padding:5px 9px;font-size:12px}.application-counts>button strong{font-size:16px}.record-event{justify-content:space-between;align-items:flex-start;gap:16px;margin:16px 0 10px;display:flex}.record-event>strong{overflow-wrap:anywhere;font-size:14px;line-height:1.6}.record-event>b{white-space:nowrap;color:#394375;font-size:20px}.record-event small{font-size:12px;font-weight:400}.record-excerpt{color:#6e7181;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:10px 0;font-size:13px;line-height:1.7;display:-webkit-box;overflow:hidden}.record-meta{font-size:12px}.record-card details{margin-top:12px}.record-card summary{align-items:center;line-height:1.8}.record-card summary svg{vertical-align:middle;margin-right:5px}.survey-brief{color:#6e7181;overflow-wrap:anywhere;flex-wrap:wrap;gap:7px 18px;margin-top:16px;font-size:13px;display:flex}.survey-brief span:last-child{flex-basis:100%}.record-card .detail-list{margin-top:15px}.record-card .detail-list>div{min-width:0}.record-card .detail-list dd{overflow-wrap:anywhere;white-space:pre-wrap}.inline-review{padding-top:8px}.inline-review .field{margin:14px 0}.inline-review .field span{font-size:13px}.inline-review .legacy-attachments{margin-top:16px}.inline-review .record-full-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7}.review-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.review-actions button{padding:9px 14px;font-size:13px}.application-cards{align-items:start}@media (width<=700px){.record-filters{grid-template-columns:1fr 1fr}.record-filters .search{grid-column:1/-1}.record-filters.is-volunteer{grid-template-columns:1fr}.application-pagination .page-jump{flex-basis:100%;justify-content:flex-end}.admin-records .application-counts{gap:8px}.admin-records .application-counts>span{flex-basis:100%;margin-bottom:2px}.record-card .detail-list>div{grid-template-columns:85px minmax(0,1fr)}.admin-records:not(:has(.is-volunteer)) .application-counts>span{flex-basis:auto;margin-bottom:0}}:root{--paper:#eef1f8;--ink:#17233e;--muted:#62708a;--green:#4059e8;--deep:#111b3f;--lime:#a9baff;--line:#dce2ef;--gold:#d9b360}body{background:radial-gradient(ellipse at 90% 0%,#dce0ff 0,transparent 40%),var(--paper);background-attachment:fixed}h1,h2,h3{color:var(--ink)}.eyebrow{color:#6576a2}.primary{color:#fff;background:linear-gradient(120deg,#3c56ec,#6e45dc);border-color:#0000;box-shadow:0 4px 12px #4059e828}.primary:hover{background:linear-gradient(120deg,#2944db,#5d34d0);box-shadow:0 6px 18px #4059e840}button:hover{background:#eaf0ff}input:focus,select:focus,textarea:focus{border-color:#4059e8;box-shadow:0 0 0 3px #4059e81a}input[type=checkbox]{accent-color:#4059e8}button:focus-visible,a:focus-visible{outline-color:#7b8cff}.panel,.schedule-card,.stats>div{border-color:#dce2ef;box-shadow:0 5px 18px #17233e06}.panel h2 svg{color:#5168ef}.page-heading h1{letter-spacing:-.7px}.semester-card{background:radial-gradient(at 90% 10%,#754cf080,#0000 55%),linear-gradient(115deg,#101932,#243f91);border-color:#738dff55;box-shadow:0 10px 24px #18276620,inset 0 1px #ffffff20}.semester-today,.semester-week>span{color:#c0ccf2}.semester-weekday{color:#e5ebff;background:#ffffff0d;border-color:#ffffff30}.semester-week strong{color:#122e77;background:#bed0ff;border-color:#d5e1ff;box-shadow:0 0 22px #85a5ff30}.topbar .mobile-brand,.topbar .identity,.topbar .breadcrumb,.topbar.is-scrolled .mobile-brand,.topbar.is-scrolled .identity,.topbar.is-scrolled .breadcrumb{color:#334879;background:#f9faffe6;border-color:#cbd5ef;box-shadow:0 4px 14px #2437710a}.topbar .identity .avatar,.avatar{color:#4258b5;background:#e3e9ff}.topbar .mobile-brand svg{color:#4965e9}.sidebar{background:#111a33;border-color:#202e4a}.brand{color:#f2f5ff}.brandmark{color:#fff;background:linear-gradient(140deg,#4363ef,#7548df);box-shadow:0 4px 16px #4257ff30}.side-caption,.side-foot{color:#a6b5d6}.sidebar nav button,.sidebar .admin-link{color:#afbcdb;background:0 0}.sidebar nav button:hover,.sidebar .admin-link:hover{background:#253455}.sidebar nav button.active,.sidebar .admin-link.active{color:#fff;background:linear-gradient(110deg,#3b56d8,#6651c9);box-shadow:0 4px 16px #0a102b40}.side-note{background:#1d2a46}.side-note p,.side-note .tiny{color:#b5c5e8}.side-note svg{color:#546da4}.tabs button.selected,.choices button:hover{color:#fff;background:#4059e8;border-color:#4059e8}.chip{color:#495dab;background:#e9edff}.application-card{background:#fff;border-color:#d9e1f1}.application-card.is-contacted{background:#f9faff;border-color:#d8e0f4}.application-card-head p,.application-interests,.record-excerpt,.survey-brief{color:#65728a}.application-card-head h3 span{color:#596b9a;background:#edf0ff}.application-interests b{color:#324c91}.application-contact-toggle,.application-card summary,.record-event>b{color:#4059bf}.application-contact-toggle input{accent-color:#4059e8}.application-counts>button.selected{color:#3047b1;background:#dde5ff}.application-counts>button{background:#edf1fb}.record-submitted{color:#74819d;margin-top:4px;font-size:11px;line-height:1.5;display:block}.door-contact{color:#425b9b;background:#edf1ff;border-color:#d5defa}.door-contact summary strong,.door-contact-method a,.door-contact-method strong{color:#324fac}.door-contact-body p{color:#65799c}.door-contact-method button,.door-call{border-color:#d5dff8}.my-ranking{color:#2f4399;background:linear-gradient(115deg,#e0e8ff,#ece5ff)}.ranking-row>b{color:#4059bf}.ranking-row.is-me{background:#edf1ff}.ranking-row strong small{color:#5168d1}.photo-picker{color:#6376b0;background:#f0f3ff;border-color:#aabbed}.checkin-match{background:#eef2ff}.footer{color:#7c88a2}.badge.present,.badge.credited,.badge.approved{color:#21644d;background:#e4f4ef}.badge.late,.badge.absent,.badge.rejected{color:#b54a36;background:#fff0eb}.badge.pending{color:#8e621b;background:#fff2d9}.badge.upcoming,.badge.waiting{color:#5b6c91;background:#edf0fa}@media (width<=760px){.sidebar{background:#0f1830f0;border:1px solid #6c7fa84d;box-shadow:0 10px 30px #121b3c30,inset 0 1px #ffffff16}.sidebar nav button,.sidebar .admin-link{color:#b9c5e2;background:0 0}.sidebar nav button.active,.sidebar .admin-link.active{color:#fff;background:linear-gradient(125deg,#476af2,#7557e8);border:0;outline:none;box-shadow:inset 0 1px #ffffff30,0 4px 12px #090f2c40}.sidebar nav button:hover,.sidebar .admin-link:hover{background:#2a3d64}.sidebar nav button.active:hover,.sidebar .admin-link.active:hover{background:linear-gradient(125deg,#476af2,#7557e8)}}:root{--muted:#566580}.stats span,.stats small,.quiet-empty,.career-row p,.career-date span,.mobile-hint{color:#586780}.career-row p{font-size:11px}.quiet-empty{opacity:1}.rank-number,.record-submitted{color:#63718c}@media (width<=760px){.sidebar{-webkit-backdrop-filter:blur(24px)saturate(170%);background:#f5f8ffa8;border:1px solid #ffffffd1;box-shadow:0 8px 28px #1b2b6020,inset 0 1px #ffffffb3}.sidebar nav button,.sidebar .admin-link{color:#596987;background:0 0}.sidebar nav button:hover,.sidebar .admin-link:hover{background:#dfe7ff80}.sidebar nav button.active,.sidebar .admin-link.active{color:#fff;background:linear-gradient(125deg,#476af2e8,#7557e8e8);box-shadow:inset 0 1px #ffffff40,0 3px 12px #4059e830}}.select-control{width:100%;min-width:0;position:relative}.select-native{display:none!important}.select-trigger{text-align:left;width:100%;min-height:46px;font-size:inherit;color:var(--ink);background:#fcfdff;border:1px solid #dbe1f0;border-radius:9px;justify-content:space-between;gap:12px;padding:12px 13px;font-weight:400;display:flex}.select-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.select-trigger>svg{color:#7484a6;flex-shrink:0;transition:transform .18s}.select-trigger[aria-expanded=true]{background:#fff;border-color:#536aed;box-shadow:0 0 0 3px #4059e817}.select-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.select-menu{z-index:1000;overscroll-behavior:contain;-webkit-backdrop-filter:blur(18px);scrollbar-width:thin;scrollbar-color:#aab9df transparent;background:#fafcfffa;border:1px solid #cdd7f1;border-radius:12px;padding:5px;animation:.12s recognition-in;position:fixed;overflow-y:auto;box-shadow:0 12px 32px #17274926}.select-menu>button{text-align:left;width:100%;box-shadow:none;background:0 0;border:0;border-radius:7px;justify-content:space-between;min-height:42px;padding:10px 12px;font-size:14px;line-height:1.45;display:flex}.select-menu>button span{overflow-wrap:anywhere}.select-menu>button[aria-selected=true]{color:#344dd0;background:#e7edff;font-weight:600}.select-menu>button[data-active=true]{background:#edf1ff}.select-menu>button:hover{background:#e5ebff}.select-menu>button svg{flex-shrink:0}.record-filters .select-control,.application-filters .select-control{min-width:0}.toolbar>.select-control,.inline>.select-control{width:auto;min-width:140px}.day-plan-control .select-control{min-width:120px}@media (width<=700px){.application-filters>.select-control:last-child,.record-filters.is-volunteer>.select-control{grid-column:1/-1}}@media (width<=900px),(hover:none) and (pointer:coarse){.select-trigger,.select-menu>button{font-size:16px!important}}@keyframes select-fade{0%{opacity:0}to{opacity:1}}.select-menu{animation:.12s select-fade}.checkin-action{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;max-width:270px;display:flex}.checkin-action>.primary{white-space:nowrap}.checkin-reason{text-align:right;color:#566580;font-size:12px;line-height:1.6;margin:0!important}.checkin-action button:disabled{cursor:default}.admin-section-switch{display:none}@media (width<=760px){.admin-desktop-tabs{display:none!important}.admin-section-switch{background:#ffffffb8;border:1px solid #dce2ef;border-radius:14px;align-items:center;gap:14px;margin:0 0 18px;padding:12px 14px;display:flex}.admin-section-switch>span{white-space:nowrap;color:#62708a;font-size:13px}.admin-section-switch .select-control{flex:1;min-width:0}.admin-section-switch .select-trigger{background:#fff;min-height:43px;padding:9px 12px}.checkin-action{align-items:flex-start;max-width:100%}.checkin-reason{text-align:left;max-width:100%}.page-heading:has(.checkin-action){grid-template-columns:1fr;gap:14px;display:grid}.checkin-action .primary{font-size:13px}}.home-grid>.duty-today{padding:16px 18px}.duty-today .section-head{gap:12px;margin-bottom:8px!important}.duty-today .section-head>div{flex-wrap:wrap;align-items:baseline;gap:6px 10px;display:flex}.duty-today .section-head .eyebrow{display:none}.duty-today .section-head h2{margin:0;font-size:18px}.duty-today .mobile-hint{white-space:nowrap;font-size:10px}.duty-today .section-head .text-btn{white-space:nowrap;padding:5px 0}.home-grid .duty-today .location-block{margin-top:8px}.home-grid .duty-today .location-block+.location-block{margin-top:9px;padding-top:9px}.home-grid .duty-today .location-block h3{gap:8px;margin-bottom:5px}.home-grid .duty-today .location-icon{border-radius:6px;width:21px;height:21px}.home-grid .duty-today .shift-row{gap:8px;min-height:30px;padding:5px 0}.home-grid .duty-today .shift-people{gap:4px 10px}.duty-today .door-contact{border-radius:9px;margin:0 0 6px}.duty-today .door-contact summary{padding:6px 10px;font-size:12px}.duty-today .door-contact-action{font-size:11px}.duty-today .quiet-empty{margin:0;padding:6px 0!important}@media (width<=760px){.home-grid>.duty-today{padding:13px 14px}.duty-today .section-head h2{font-size:16px}.duty-today .section-head>div{gap:5px 7px}.duty-today .mobile-hint{font-size:9px}.home-grid .duty-today .shift-row .time{width:90px}.home-grid .duty-today .shift-people>div{font-size:11px}.duty-today .door-contact summary{padding:6px 9px;font-size:11px}.duty-today .door-contact summary strong{margin-left:5px}}.ranking-row{grid-template-columns:28px minmax(68px,100px) minmax(24px,1fr) max-content;column-gap:14px;display:grid}.ranking-name strong{overflow-wrap:anywhere}.ranking-bar{background:#edf0fa;border-radius:999px;height:7px;overflow:hidden}.ranking-bar>span{border-radius:inherit;background:linear-gradient(90deg,#8ca4ff,#6269ee 65%,#8362e6);height:100%;display:block}.ranking-row.is-me .ranking-bar>span{background:linear-gradient(90deg,#536cee,#8252df)}@media (width<=480px){.ranking-row{grid-template-columns:24px minmax(60px,76px) minmax(24px,1fr) max-content;column-gap:9px}.ranking-bar{height:6px}.ranking-row>b{font-size:19px}}.recognition-reminder{color:#586780;margin-top:12px;font-size:12px;line-height:1.7;display:block}.recognition-submit{scroll-margin-top:100px;scroll-margin-bottom:calc(130px + env(safe-area-inset-bottom));padding-top:4px}.recognition-submit p{color:#394d99;background:#eef1ff;border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:12px;line-height:1.7}.recognition-submit .primary{justify-content:center;width:100%}.recognition-preview{scroll-margin-top:90px}.quick-review{padding:12px 0 4px}.quick-review button{flex:1;justify-content:center;min-height:42px}.inline-review button:disabled{opacity:.5;cursor:not-allowed}.duty-overview-controls{background:#fff;gap:8px;padding:0 0 12px;display:grid}.duty-date-line{align-items:center;gap:6px;min-width:0;display:flex}.duty-date-line>button{border-radius:9px;min-height:34px;padding:7px}.duty-date-line>input{flex:1;width:150px;min-width:0;max-width:220px;min-height:36px;padding:7px 10px;font-size:14px}.duty-today-button{white-space:nowrap;font-size:12px}.duty-more{margin-left:auto;position:relative}.duty-more>summary{cursor:pointer;border:1px solid #dae0ed;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;list-style:none;display:flex}.duty-more>summary::-webkit-details-marker{display:none}.duty-more>div{z-index:26;background:#fff;border:1px solid #d9dfed;border-radius:12px;gap:10px;width:230px;padding:12px;display:grid;position:absolute;top:40px;right:0;box-shadow:0 8px 26px #25365d24}.duty-more>div>button{font-size:13px}.duty-more small{color:#61718c;font-size:11px}.duty-search{color:#75849b;border:1px solid #dbe1ef;border-radius:9px;align-items:center;gap:8px;padding:0 10px;display:flex}.duty-search input{width:100%;min-width:0;min-height:34px;box-shadow:none;background:0 0;border:0;padding:8px 0;font-size:13px}.duty-site-tabs,.duty-mode-tabs{flex-wrap:wrap;gap:6px;display:flex}.duty-site-tabs button,.duty-mode-tabs button{color:#52617d;min-height:32px;box-shadow:none;background:#f9faff;border-color:#dce2f0;border-radius:9px;padding:7px 10px;font-size:12px}.duty-site-tabs button.selected{color:#324eae;background:#e8edff;border-color:#b9c6f6;font-weight:600}.duty-mode-tabs button{background:0 0;border-color:#0000}.duty-mode-tabs button.selected{color:#fff;background:#435ee8}.duty-mode-tabs b{background:#ffffff26;border-radius:5px;margin-left:5px;padding:1px 4px;font-size:10px}.duty-mode-tabs button:disabled{opacity:.45}.duty-overview-summary{color:#5a6a84;border-top:1px solid #e4e8f0;border-bottom:1px solid #e4e8f0;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 0;font-size:12px;display:flex}.duty-overview-summary b{color:#25344f;font-size:14px}.duty-overview-summary button{box-shadow:none;background:0 0;border:0;padding:0;font-size:12px}.duty-overview-summary button.has-abnormal,.duty-overview-summary button.has-abnormal b{color:#b44739}.duty-list-options{color:#64748b;align-items:center;gap:10px;padding:10px 0;font-size:11px;display:flex}.duty-list-options label{cursor:pointer;align-items:center;gap:6px;display:flex}.duty-list-options input{accent-color:#435ee8;width:14px;height:14px;min-height:0;margin:0}.duty-list-options>span{white-space:nowrap;margin-left:auto}.duty-list-options>button{color:#435ca8;box-shadow:none;background:0 0;border:0;padding:0;font-size:11px}.duty-site-group{margin-top:10px}.duty-site-group>h3{color:#2c3e63;margin:0;padding:9px 0;font-size:14px;line-height:1.5}.duty-time-group{border:1px solid #e1e6f0;border-radius:11px;margin-bottom:10px;overflow:hidden}.duty-time-head{color:#556887;background:#f0f3fa;justify-content:space-between;align-items:center;padding:7px 12px;font-size:12px;display:flex}.duty-time-head strong{font-variant-numeric:tabular-nums;font-size:12px}.duty-time-head span{font-size:11px}.duty-person{text-align:left;width:100%;min-height:42px;box-shadow:none;background:#fff;border:0;border-top:1px solid #edf0f6;border-radius:0;justify-content:flex-start;align-items:center;gap:8px;padding:10px 12px;line-height:1.4;display:flex}.duty-person:hover{background:#f5f7fd}.duty-person.is-abnormal{background:#fff7f4}.duty-person-name{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.duty-person-name strong{overflow-wrap:anywhere;font-size:13px}.duty-person-name small{color:#647493;background:#e9eef8;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:9px;font-weight:400}.duty-person .badge{flex-shrink:0;padding:3px 6px;font-size:10px}.duty-person-action{color:#5c70a1;white-space:nowrap;align-items:center;gap:2px;font-size:10px;display:flex}.duty-person.is-abnormal .duty-person-action{color:#b44739}.duty-overview-empty{text-align:center;color:#64748b;gap:12px;padding:28px 10px;font-size:13px;display:grid}.duty-overview-empty>button{justify-self:center;font-size:12px}.duty-adjustments{border-top:1px solid #e1e6f0;margin-top:18px;padding-top:12px}.duty-adjustments>summary{cursor:pointer;color:#4c638c;align-items:center;gap:7px;font-size:13px;display:flex}.duty-adjustments[open]>summary{margin-bottom:16px}@media (width<=760px){.duty-overview-controls{padding-top:8px;position:static}.duty-site-tabs button{padding:6px 9px;font-size:11px}.duty-person{min-height:40px;padding:9px 10px}.duty-overview-summary{gap:8px 11px;font-size:11px}.duty-date-line>input{max-width:none}.duty-site-group>h3{font-size:13px}.duty-time-head{padding:7px 10px}.duty-person-name{gap:5px}.duty-person-name strong{font-size:13px}}.duty-overview-controls{gap:6px;padding-bottom:8px}.duty-overview .duty-date-line{gap:5px}.duty-overview .duty-date-line>button{flex-shrink:0;height:34px;min-height:34px;padding:6px}.duty-overview .duty-date-line>input{max-width:190px;height:34px;min-height:34px;padding:5px 7px;font-size:13px;line-height:1.4}.duty-date-line>button.selected{color:#435ee8;background:#e8edff}.duty-filter-line{align-items:center;gap:8px;min-width:0;display:flex}.duty-filter-line>.select-control{flex:1;min-width:0;max-width:190px}.duty-filter-line .select-trigger{border-radius:8px;height:34px;min-height:34px;padding:5px 8px;font-size:12px;line-height:1.4}.duty-filter-line .duty-mode-tabs{flex-wrap:nowrap;gap:2px;margin-left:auto}.duty-filter-line .duty-mode-tabs button{white-space:nowrap;height:34px;min-height:34px;padding:5px 9px;font-size:12px}.duty-search>button{min-height:30px;box-shadow:none;background:0 0;border:0;padding:5px}.duty-overview .duty-search input{height:34px;min-height:34px;padding:5px 0}.duty-overview .duty-more{margin-left:0}.duty-overview .duty-more>summary{width:34px;height:34px}.admin-panel:has(.duty-overview){padding-top:16px}@media (width<=760px){.duty-overview-controls{padding-top:4px}.duty-overview .duty-date-line>input{max-width:none}.admin-panel:has(.duty-overview){padding:14px}.duty-filter-line{gap:6px}.duty-filter-line .duty-mode-tabs button{padding:5px 8px}}.duty-time-head{gap:8px}.duty-time-head>span{margin-left:auto}.duty-time-head>button{color:#435c92;min-height:28px;box-shadow:none;background:#e3e9fa;border:0;border-radius:6px;align-items:center;gap:3px;padding:3px 6px;font-size:10px;display:flex}.modal .form-grid,.modal .form-grid>label{min-width:0}.modal input[type=time]{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.shift-editor{gap:14px;display:grid}.shift-context{background:#f2f4fa;border-radius:10px;gap:2px;padding:10px 12px;display:grid}.shift-context strong{font-size:14px}.shift-context span{color:#718099;font-size:12px}.shift-time-fields{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);align-items:end;gap:8px;display:grid}.shift-time-fields label{color:#718099;gap:5px;min-width:0;font-size:12px;display:grid}.shift-time-fields input{text-align:center;font-variant-numeric:tabular-nums;width:100%;min-width:0;height:44px;padding:8px;font-size:18px}.shift-time-divider{text-align:center;color:#98a3b6;align-self:end;line-height:44px}.shift-members-heading{justify-content:space-between;align-items:center;font-size:13px;display:flex}.shift-members-heading span{color:#718099;font-size:12px}.shift-members{border:1px solid #e2e6ef;border-radius:10px;overflow:hidden}.shift-members>div{align-items:center;gap:8px;min-height:48px;padding:10px 12px;display:flex}.shift-members>div+div{border-top:1px solid #edf0f6}.shift-members strong{font-size:14px}.shift-person-status{color:#61718c;background:#f0f3fb;border:0;gap:7px;min-height:28px;margin-left:auto;padding:4px 7px;font-size:11px}.shift-person-status span{color:#435ee8}.shift-person-status.leave{background:#efedf9}.shift-remove{color:#929db0;background:0 0;border:0;padding:5px}.shift-members>p{color:#718099;margin:0;padding:12px;font-size:12px}.shift-add{gap:8px;display:flex}.shift-add input{min-width:0;height:40px;padding:8px 10px;font-size:13px}.shift-add>button{padding:8px 10px}.shift-help{color:#718099;margin:0;font-size:12px;line-height:1.6}.shift-enabled{border-top:1px solid #edf0f6;justify-content:space-between;align-items:center;padding-top:12px;display:flex}.shift-enabled>div{gap:2px;display:grid}.shift-enabled strong{font-size:13px}.shift-enabled small{color:#718099;font-size:11px}.shift-enabled>button{background:#dbe0eb;border:0;border-radius:20px;justify-content:flex-start;width:44px;height:26px;min-height:0;padding:3px}.shift-enabled>button[aria-checked=true]{background:#5263ed;justify-content:flex-end}.shift-enabled i{background:#fff;border-radius:50%;width:20px;height:20px}.shift-save{justify-content:center;width:100%;min-height:44px}.shift-error{color:#b44739;margin:0;font-size:12px}.modal:has(.shift-editor){max-width:440px;max-height:calc(100dvh - 32px);padding:22px;overflow:auto}.modal:has(.shift-editor)>header{margin-bottom:16px}.modal:has(.shift-editor)>header h2{font-size:19px}@media (width<=480px){.modal:has(.shift-editor){width:calc(100% - 24px);padding:18px}.shift-editor{gap:12px}}.modal{border-radius:18px;max-height:calc(100dvh - 32px);padding:22px;overflow:hidden auto}.modal>header{align-items:center;gap:12px;margin-bottom:16px}.modal>header h2{margin:0;font-size:19px}.modal>header>.icon{background:#f3f5fa;border:0;border-radius:9px;width:32px;height:32px;min-height:0;padding:5px}.modal .field{gap:6px;margin-bottom:12px;font-size:12px}.modal .field>input,.modal .select-trigger{min-height:42px;padding:9px 11px;font-size:14px}.modal .field>textarea{min-height:72px;padding:9px 11px;font-size:14px}.modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.modal .form-grid .field{min-width:0}.modal .wide{min-height:44px;padding:10px 12px}.modal .detail-list>div{padding:9px 0}.attendance-editor{gap:14px;display:grid}.attendance-context-date{float:right;color:#718099;font-size:11px;font-weight:400}.attendance-status{border:0;min-width:0;margin:0;padding:0}.attendance-status legend,.attendance-hours-field>span,.attendance-reason>span{color:#718099;margin-bottom:6px;font-size:12px}.attendance-status>div{flex-wrap:wrap;gap:6px;display:flex}.attendance-status button{min-height:34px;box-shadow:none;background:#f7f8fc;border-radius:8px;padding:6px 11px;font-size:12px}.attendance-status button[aria-pressed=true]{color:#425ad5;background:#e9edff;border-color:#9eadee;font-weight:600}.attendance-hours-field,.attendance-reason{min-width:0;display:grid}.attendance-hours-field>div{background:#f8f9fc;border:1px solid #dfe4ef;border-radius:9px;align-items:center;gap:10px;padding:0 12px;display:flex}.attendance-hours-field input{min-width:0;height:42px;box-shadow:none;background:0 0;border:0;padding:8px 0;font-size:18px}.attendance-hours-field>div>span{color:#718099;white-space:nowrap;font-size:12px}.attendance-reason textarea{min-height:76px;padding:10px 12px;font-size:13px}.attendance-hint{color:#718099;margin-top:-7px;font-size:11px}.attendance-photo-link{color:#435ee8;font-size:12px}.attendance-editor .shift-save{margin-top:2px}@media (width<=480px){.modal{width:calc(100% - 24px);padding:18px}.attendance-editor{gap:12px}.modal .detail-list dt{font-size:12px}.modal .detail-list dd{font-size:13px}}.template-location{gap:12px;display:grid}.template-location>label{gap:5px;min-width:0;display:grid}.template-location>label>span,.template-location legend{color:#718099;font-size:12px}.template-location .select-trigger{width:100%;min-width:0;height:42px}.template-location .select-trigger>span{white-space:normal;text-overflow:clip}.template-location fieldset{border:0;min-width:0;margin:0;padding:0}.template-location fieldset>div{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:6px;display:grid}.template-location fieldset button{background:#f7f8fc;border-radius:7px;min-height:34px;padding:5px 0;font-size:11px}.template-location fieldset button[aria-pressed=true]{color:#425ad5;background:#e9edff;border-color:#9eadee;font-weight:600}.shift-members .shift-remove{margin-left:auto}.shift-members .shift-person-status+.shift-remove{margin-left:0}.template-remove{background:0 0;border:0;width:100%;min-height:32px;padding:4px;font-size:12px}.panel{border-radius:16px;box-shadow:0 3px 16px #29395905}.panel .section-head h2{font-size:18px}.toolbar{gap:8px}.toolbar input,.toolbar .select-trigger{min-height:40px;padding:8px 11px;font-size:13px}.toolbar button{min-height:38px;padding:8px 12px;font-size:12px}.field{min-width:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid>*{min-width:0}input,textarea,.select-control,.select-trigger{max-width:100%}input[type=time],input[type=date]{box-sizing:border-box;min-width:0}input[type=checkbox]{border-radius:4px;flex-shrink:0;appearance:auto!important;width:17px!important;height:17px!important;min-height:0!important;padding:0!important}.checkbox{gap:8px;font-size:13px}.detail-list dd{overflow-wrap:anywhere}.detail-list dt{color:#718099}.table-wrap table th{font-size:11px;font-weight:500}.table-wrap table td{font-size:13px}.day-plan-control{border-radius:12px;gap:10px;padding:14px}.day-plan-control h3{font-size:14px}.day-plan-control p{font-size:12px}.day-plan-preview>div{border-radius:10px;padding:12px}.login-panel form .field{margin-bottom:12px}.login-panel input{min-height:44px;padding:9px 12px}.login-panel h2{font-size:22px}.legacy-attachments img{border-radius:8px}.modal .record-photo{object-fit:contain;max-height:180px}.modal .modal-actions{gap:8px;margin-top:12px}.modal .modal-actions button{min-height:40px;font-size:13px}@media (width<=760px){.panel{padding:18px}.page-heading{margin-bottom:16px}.page-heading h1{margin-bottom:6px;font-size:25px}.page-heading p{font-size:12px;line-height:1.6}.panel .section-head h2{font-size:17px}.admin-section-switch{border-radius:14px;gap:10px;padding:12px 14px}.admin-section-switch>span{font-size:12px}.admin-section-switch .select-trigger{min-height:40px;padding:8px 11px;font-size:14px}.day-plan-control{grid-template-columns:1fr;display:grid}.day-plan-control>label{grid-template-columns:70px minmax(0,1fr);align-items:center;display:grid}.day-plan-control>button{min-height:40px}.form-grid{gap:10px}.panel .toolbar{gap:8px}.panel .toolbar input,.panel .toolbar .select-trigger{min-height:40px;font-size:13px}.leave-contact-card{border-radius:12px}.personal-shifts .section-head{gap:8px}.personal-shift-list>div{border-radius:10px}.record-pagination button{min-height:34px}.modal{max-width:440px}.modal .select-trigger{font-size:13px}}.applications-manager .application-filters{gap:8px}.applications-manager .application-filters .select-trigger,.applications-manager .search input{min-height:40px;padding:8px 11px;font-size:13px}.application-card{border-radius:12px;padding:14px}.application-card-head strong{font-size:15px}.application-counts{gap:12px;font-size:12px}.application-counts strong{font-size:22px}.inline-review .field{margin-bottom:10px}.inline-review .field input,.inline-review .field textarea{padding:9px 11px;font-size:13px}.inline-review .field textarea{min-height:70px}.application-contact button{min-height:32px;padding:5px 9px;font-size:12px}.application-pagination button{min-height:34px;padding:6px 10px;font-size:12px}.application-results,.application-contact-toggle{font-size:12px}.review-actions button{min-height:38px;padding:7px 12px;font-size:12px}.application-card details>summary{padding:9px 0;font-size:12px}.application-card .detail-list{font-size:13px}.applications-manager .section-head{align-items:center;gap:10px;margin-bottom:12px}.applications-manager .section-head h2{margin-bottom:0;font-size:18px}.applications-manager .section-head .muted{margin:4px 0 0;font-size:11px}.applications-manager .section-head>button{white-space:nowrap;min-height:34px;padding:7px 10px;font-size:12px}.application-status-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0;display:grid}.application-status-tabs>button{background:#f5f7fc;border-radius:9px;gap:7px;min-height:42px;padding:8px;font-size:12px}.application-status-tabs>button b{font-size:16px}.application-status-tabs>button[aria-pressed=true]{color:#435ad6;background:#e9edff;border-color:#a8b6f2}.applications-manager .application-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.applications-manager .application-filters>.search{grid-column:1/-1;min-height:38px;padding:0 10px}.applications-manager .application-filters .search input{height:38px;min-height:38px;padding:7px 0;font-size:12px}.applications-manager .application-filters .select-trigger{height:38px;min-height:38px;padding:7px 10px;font-size:12px}.applications-manager .application-results{margin:12px 0;font-size:11px}.application-card .inline-review{background:#f6f8fc;border-radius:10px;gap:12px;margin-top:6px;padding:12px;display:grid}.application-card .inline-review .field{gap:5px;margin:0;display:grid}.application-card .inline-review .field>span{font-size:12px}.application-card .inline-review input{height:40px;min-height:40px;padding:8px 10px;font-size:15px}.application-card .inline-review textarea{height:70px;min-height:70px;padding:9px 10px;font-size:13px}.application-card .inline-review .record-full-note{color:#718099;margin:0;font-size:12px}.application-card .inline-review .review-actions{margin:0;padding:0}.application-card .inline-review .review-actions>button{width:100%;min-height:40px;margin:0}.application-card .inline-review .attendance-status button{min-height:34px;font-size:12px}.application-card.record-card .record-event{margin:12px 0}.application-card.record-card details>summary{padding:10px 0}.application-card.record-card{padding:14px}.review-status-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:12px 0;display:grid}.review-status-tabs>button{min-height:48px;box-shadow:none;background:#f5f7fc;border-radius:9px;gap:2px;padding:7px 4px;font-size:11px;display:grid}.review-status-tabs b{font-size:16px;line-height:1.3}.review-status-tabs>button[aria-pressed=true]{color:#435ad6;background:#e9edff;border-color:#a8b6f2}.admin-records .record-filters.is-volunteer{display:block}.admin-records .record-filters.is-volunteer .search{min-height:38px}.admin-records .record-filters.is-volunteer .search input{min-height:38px;padding:7px 0;font-size:12px}:root{--ui-radius:12px;--ui-accent:#4b5de5;--ui-border:#e1e6f0;--ui-text:#24304a;--ui-secondary:#69768c}button,input,textarea,.select-trigger{border-radius:9px}button:disabled{cursor:not-allowed}.primary{background:var(--ui-accent);border-color:var(--ui-accent);color:#fff;box-shadow:0 3px 10px #4b5de51a}.primary:hover{background:#3f50cf;border-color:#3f50cf}.primary:disabled{box-shadow:none;opacity:1;background:#a1aceb;border-color:#a1aceb}.admin-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.admin-heading .eyebrow{display:none}.admin-heading h1{letter-spacing:0;margin-bottom:3px;font-size:26px}.admin-heading .muted{margin:0;font-size:12px}.admin-heading>.inline{flex-shrink:0;gap:7px}.admin-heading>.inline>.chip{color:#64738c;background:#edf0f8;padding:3px 7px;font-size:10px}.admin-heading>.inline>button{min-height:34px;padding:7px 9px;font-size:12px}.admin-heading>.inline>button svg{width:14px;height:14px}.admin-section-switch{border:1px solid var(--ui-border);box-shadow:none;background:#ffffffc9;border-radius:12px;margin-bottom:14px;padding:10px 12px}.admin-section-switch>span{color:var(--ui-secondary);font-size:11px}.admin-section-switch .select-trigger{height:38px;min-height:38px;padding:7px 10px;font-size:13px}.applications-manager .application-cards{gap:10px}.applications-manager .application-card{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:#fff;padding:14px;box-shadow:0 2px 8px #23345103}.applications-manager .application-card.is-contacted{background:#fcfdff}.application-card .application-card-head{align-items:flex-start;gap:10px}.application-card .application-card-head h3{color:var(--ui-text);margin:0;font-size:16px;font-weight:650;line-height:1.5}.application-card .application-card-head h3>span{color:#66758f;vertical-align:middle;background:#eef1f8;border-radius:5px;margin-left:6px;padding:2px 5px;font-size:10px}.application-card .application-card-head p{color:var(--ui-secondary);margin:4px 0 0;font-size:12px;line-height:1.5}.application-card .record-submitted{color:#768398;margin-top:3px;font-size:10px}.application-card .application-contact-toggle{color:#5d6d8c;gap:5px;margin-top:2px;font-size:11px}.application-card .application-interests{gap:5px 12px;margin:10px 0 8px;font-size:11px;line-height:1.7}.application-card .application-interests b{font-weight:600}.application-card .application-contact{border-top:0;padding:8px 0;font-size:13px}.application-card details{border-top:1px solid #edf0f5;padding-top:0}.application-card details>summary{color:#5e7099;padding:9px 0;font-size:11px;line-height:1.5}.application-card .record-event{align-items:center;margin:10px 0!important}.application-card .record-event>strong{font-size:14px;line-height:1.5}.application-card .record-event>b{color:#4354ba;font-size:20px}.application-card .record-event>b small{font-size:10px;font-weight:400}.application-card .record-excerpt{color:var(--ui-secondary);margin:6px 0;font-size:12px;line-height:1.6}.badge{white-space:nowrap;border-radius:6px;padding:3px 7px;font-size:10px;font-weight:500;line-height:1.5}.badge.approved,.badge.credited,.badge.present{color:#36755d;background:#e9f5ef}.badge.pending,.badge.waiting{color:#8b6824;background:#fff4dc}.badge.rejected,.badge.absent,.badge.late{color:#a35349;background:#fcece9}.badge.leave{color:#746898;background:#eeecf8}.badge.upcoming,.badge.cancelled{color:#6b7890;background:#eef1f6}.modal:has(.detail-list){max-width:460px}.modal>.detail-list{background:#f6f8fc;border:1px solid #e7ebf3;border-radius:12px;margin:0 0 14px;padding:3px 12px}.modal .detail-list>div{border-bottom:1px solid #e7ebf2;grid-template-columns:90px minmax(0,1fr);align-items:baseline;gap:12px;padding:10px 0;display:grid}.modal .detail-list>div:last-child{border-bottom:0}.modal .detail-list dt{color:#748099;font-size:11px;line-height:1.6}.modal .detail-list dd{color:var(--ui-text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.7}.modal .detail-action,.modal>.primary.wide{width:100%;min-height:42px;margin-top:4px;font-size:13px}.modal>header{border-bottom:1px solid #edf0f5;padding-bottom:12px}.modal>header h2{color:var(--ui-text);font-weight:650}.modal .record-photo{border-radius:10px;margin-bottom:12px}.application-card .detail-list{background:#f7f9fc;border-radius:9px;padding:8px 10px}.application-card .detail-list>div{gap:10px;padding:7px 0}.application-card .detail-list dd{overflow-wrap:anywhere;font-size:12px;line-height:1.6}@media (width<=760px){.admin-heading{gap:8px;margin-bottom:12px}.admin-heading h1{font-size:23px}.admin-heading .muted{font-size:11px}.admin-heading>.inline{flex-direction:column;align-items:flex-end;gap:4px}.admin-heading>.inline>button{min-height:30px;padding:5px 8px;font-size:11px}.admin-heading>.inline>.chip{padding:2px 5px;font-size:9px}.admin-section-switch{gap:8px;margin-bottom:12px;padding:8px 10px}.modal .detail-list>div{grid-template-columns:76px minmax(0,1fr);gap:8px}.application-card .application-card-head h3{font-size:15px}}.applications-manager .application-filters>.select-control{grid-column:auto;width:100%;min-width:0}.applications-manager .application-filters>.search{grid-column:1/-1}.recruit-public{max-width:620px;margin:0 auto;padding:24px 18px 60px}.recruit-brand{color:#4354b8;margin-bottom:16px;font-weight:600;display:block}.recruit-public h1{letter-spacing:0;font-size:25px}.recruit-description{white-space:pre-wrap;color:#69768c;overflow-wrap:anywhere;font-size:13px}.recruit-public-field{border:0;min-width:0;margin:0 0 18px;padding:0}.recruit-public-field legend{margin-bottom:7px;font-size:13px;font-weight:600}.recruit-public-field legend span{color:#ac5149}.recruit-public-field input,.recruit-public-field textarea{font-size:14px}.recruit-choices{gap:7px;display:grid}.recruit-choices label{background:#f7f9fc;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;font-size:13px;display:flex}.recruit-choices input{width:17px;min-height:0;margin:0}.recruit-success{text-align:center;color:#36755d;padding:28px 8px}.recruit-tabs{gap:6px;margin-bottom:16px;display:flex}.recruit-tabs button{flex:1;min-height:36px;padding:6px;font-size:12px}.recruit-tabs button[aria-pressed=true]{color:#435ad6;background:#e9edff;border-color:#a8b6f2}.recruit-route-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.recruit-route,.recruit-field,.recruit-response{background:#fff;border:1px solid #e1e6f0;border-radius:12px;min-width:0;padding:14px}.recruit-route h3{font-size:15px}.recruit-route a{align-items:center;gap:6px;margin-bottom:14px;font-size:12px;display:flex}.recruit-route .field{margin-top:10px}.recruit-route button{margin:4px 5px 0 0;font-size:12px}.recruit-editor-top,.recruit-results-filter{gap:8px;margin-bottom:14px;display:flex}.recruit-editor-top>.select-control,.recruit-results-filter>.select-control{flex:1;min-width:0}.recruit-fields{gap:12px;margin:12px 0;display:grid}.recruit-field-head{justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;display:flex}.recruit-field-head>div{gap:4px;display:flex}.recruit-field-head button{min-height:28px;padding:6px}.recruit-field .select-control,.recruit-field .field{margin-bottom:10px}.recruit-publish{border-top:1px solid #edf0f5;gap:10px;margin-top:16px;padding-top:14px;display:grid}.recruit-publish form{gap:8px;display:flex}.recruit-publish form>.select-control{flex:1;min-width:0}.recruit-publish small{color:#718099}.recruit-preview{background:#f7f9fc;border:1px solid #e1e6f0;border-radius:12px;padding:16px}.recruit-preview small{color:#718099}.recruit-response{margin-bottom:10px}.recruit-response>small{color:#718099;margin:5px 0;display:block}.recruit-response summary{color:#4354b8;cursor:pointer;font-size:12px}.recruit-response dd{white-space:pre-wrap;overflow-wrap:anywhere}.recruit-message{color:#36755d;background:#e9f5ef;border-radius:8px;padding:8px;font-size:12px}.recruit-manager .field input,.recruit-manager .field textarea{font-size:13px}.recruit-public .wide{justify-content:center;width:100%}@media (width<=760px){.recruit-route-grid{grid-template-columns:1fr}.recruit-results-filter{flex-wrap:wrap}.recruit-results-filter>input{width:100%}.recruit-results-filter>.select-control{flex-basis:100%}.recruit-public{padding-top:18px}.recruit-public .panel{padding:20px}.recruit-manager .select-trigger{font-size:12px}.recruit-publish form button{padding:8px;font-size:12px}.recruit-route .field input{width:100%;min-width:0}}.recruit-start-time{background:#f4f6fd;border:1px solid #e1e6f0;border-radius:12px;gap:6px;margin:16px 0;padding:14px 16px;display:grid}.recruit-start-time>span{color:#69768c;font-size:12px}.recruit-start-time>strong{color:#4354b8;font-variant-numeric:tabular-nums;font-size:22px;line-height:1.5}.recruit-start-time>small{color:#718099;font-size:11px}.recruit-route{padding:14px;overflow:hidden}.recruit-route .section-head{margin-bottom:10px}.recruit-route h3{overflow-wrap:anywhere;margin:0 0 7px;font-size:14px;line-height:1.6}.recruit-route>p{margin:0 0 9px;font-size:12px}.recruit-route>a{margin-bottom:10px}.recruit-route form{border-top:1px solid #edf0f5;gap:12px;min-width:0;padding-top:10px;display:grid}.recruit-route form>.field{gap:5px;min-width:0;margin:0;font-size:11px;display:grid}.recruit-route .recruit-datetime{grid-template-columns:minmax(0,1fr) 88px;gap:7px;min-width:0;display:grid}.recruit-route .recruit-datetime>input{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:40px;min-height:40px;padding:7px 8px;font-size:13px;line-height:1.4;display:block}.recruit-route .recruit-datetime>input[type=text]{text-align:center;font-variant-numeric:tabular-nums}.recruit-route input[name=maxResponses]{height:40px;min-height:40px;padding:7px 10px;font-size:14px}.recruit-route-actions{grid-template-columns:1fr 1fr;gap:7px;display:grid}.recruit-route .recruit-route-actions>button{min-height:38px;margin:0;padding:7px 10px;font-size:12px}.recruit-route .checkbox{margin:0;font-size:12px}.recruit-route .chip{padding:3px 7px;font-size:10px}.recruit-results-heading{justify-content:space-between;align-items:center;gap:10px;margin:14px 0 10px;display:flex}.recruit-results-heading>strong{overflow-wrap:anywhere;font-size:14px;line-height:1.6}.recruit-results-heading>span{color:#718099;white-space:nowrap;font-size:11px}.recruit-result-list{border:1px solid #e1e6f0;border-radius:12px;margin-bottom:12px;overflow:hidden}.recruit-result-list:empty{display:none}.recruit-result-row{text-align:left;width:100%;box-shadow:none;background:#fff;border:0;border-radius:0;align-items:center;gap:9px;padding:12px;display:flex}.recruit-result-row+.recruit-result-row{border-top:1px solid #edf0f5}.recruit-result-row>div{flex:1;gap:4px;min-width:0;display:grid}.recruit-result-row strong{color:#24304a;font-size:15px;line-height:1.4}.recruit-result-row span{color:#69768c;overflow-wrap:anywhere;font-size:11px;line-height:1.5}.recruit-result-row small{color:#768398;font-size:10px;line-height:1.5}.recruit-result-row time{color:#768398;white-space:nowrap;align-self:flex-start;font-size:10px;line-height:21px}.recruit-result-row>svg{color:#8794aa;flex-shrink:0}.recruit-detail-context{background:#eef2fc;border-radius:10px;gap:5px;margin-bottom:12px;padding:10px 12px;display:grid}.recruit-detail-context strong{font-size:13px;line-height:1.6}.recruit-detail-context span{color:#718099;font-size:11px}.shift-members>div>.select-control{flex-shrink:0;width:104px;margin-left:auto}.shift-members>div>.select-control .select-trigger{height:32px;min-height:32px;padding:4px 8px;font-size:11px}.shift-members>div>.select-control+.shift-remove{margin-left:0}.duty-week-label{background:#eef1fc;border-radius:5px;padding:2px 6px;font-size:10px;color:#4354b8!important}.roster-tools{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.roster-tools button{min-height:36px;padding:7px 10px;font-size:12px}.modal.roster-image-dialog{width:calc(100% - 24px);max-width:640px}.roster-image-preview{background:#edf1f8;border:1px solid #e1e6f0;border-radius:10px;max-height:52dvh;margin-top:14px;display:block;overflow:auto}.roster-image-preview img{width:100%;height:auto;display:block}.roster-image-note{color:#718099;margin:10px 0;font-size:11px}.roster-image-download{border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:11px;font-size:13px;display:flex}.roster-image-download.disabled{opacity:.5;cursor:not-allowed}@media (width<=760px){.admin-panel:has(.weekly-roster)>.section-head{align-items:flex-start;gap:10px}.roster-tools{max-width:150px}.roster-tools button{min-height:33px;padding:6px 9px;font-size:11px}.roster-image-preview{max-height:50dvh}}.roster-export-overlay{z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);isolation:isolate;background:#19233b99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.roster-export-dialog{background:#fff;border-radius:20px;flex-direction:column;width:min(640px,100%);min-height:0;max-height:calc(100dvh - 32px);display:flex;overflow:hidden;box-shadow:0 24px 80px #14203d40}.roster-export-dialog>header{border-bottom:1px solid #e5e9f2;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.roster-export-dialog>header h2{margin:0;font-size:19px}.roster-export-dialog>header .icon{background:#f3f5fa;border:0;width:36px;height:36px;padding:6px}.roster-export-sites{flex-wrap:wrap;flex-shrink:0;gap:6px;padding:12px 18px;display:flex}.roster-export-sites button{flex:auto;min-height:36px;padding:7px 10px;font-size:12px}.roster-export-sites button[aria-pressed=true]{color:#4255cf;background:#edf0ff;border-color:#a9b3f3}.roster-export-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding:0 18px 12px;overflow:auto}.roster-export-body .roster-image-preview{max-height:none;margin:0;display:block;overflow:visible}.roster-export-body .roster-image-preview img{width:100%;height:auto;display:block}.roster-export-dialog>footer{padding:10px 18px max(16px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e5e9f2;flex-shrink:0}.roster-export-dialog .roster-image-note{text-align:center;color:#71809a;margin:0 0 8px;font-size:12px}.roster-export-dialog .roster-image-download{border-radius:10px;justify-content:center;align-items:center;width:100%;min-height:44px;padding:10px;display:flex}.roster-export-dialog .disabled{pointer-events:none;opacity:.45}.weekly-roster-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.weekly-roster-heading h3{flex-wrap:wrap;flex:1;min-width:0;margin:0}.weekly-roster-heading .roster-export-button{flex-shrink:0;min-height:36px;padding:7px 9px;font-size:12px}.weekly-roster-heading h3>span{font-size:11px}@media (width<=600px){.roster-export-overlay{padding:12px}.roster-export-dialog{border-radius:16px;max-height:calc(100dvh - 24px)}.roster-export-dialog>header{padding:14px 16px}.roster-export-sites{padding:10px 14px}.roster-export-body{padding:0 14px 10px}.weekly-roster-heading h3{font-size:13px}.weekly-roster-heading h3>span{display:none}}
