.hkr-user-avatar{-webkit-user-select:none;user-select:none;border:1px solid var(--border-color,#ffffff26);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0003}.hkr-user-avatar-img{object-fit:cover;width:100%;height:100%;display:block}.hkr-user-avatar-initials{color:var(--color-on-accent);font-weight:var(--weight-bold);letter-spacing:.5px;text-shadow:0 1px 2px #0000004d;line-height:1}.overlay-scrim{z-index:var(--z-modal);-webkit-backdrop-filter:var(--scrim-blur);padding:env(safe-area-inset-top,16px) 16px env(safe-area-inset-bottom,16px);box-sizing:border-box;touch-action:none;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.overlay-scrim.scrim-mobile{align-items:flex-end;padding:0}.overlay-card{background:var(--bg-card);border:1px solid var(--border-color);width:100%;box-shadow:var(--shadow-modal);box-sizing:border-box;touch-action:auto;flex-direction:column;display:flex;position:relative;overflow:hidden}.overlay-card.overlay-dialog{border-radius:var(--radius-modal);max-height:calc(100vh - 48px);margin:auto}.overlay-size-sm{max-width:440px}.overlay-size-md{max-width:540px}.overlay-size-lg{max-width:680px}.overlay-size-full{max-width:900px}.overlay-card.overlay-sheet{border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;width:100vw;max-width:100vw;max-height:90dvh;box-shadow:var(--shadow-sheet);border-bottom:none;border-left:none;border-right:none;padding-bottom:0}.overlay-drag-handle-zone{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;width:100%;padding:10px 0 6px;display:flex}.overlay-drag-handle-zone:active{cursor:grabbing}.overlay-drag-handle-bar{border-radius:var(--radius-full);background:var(--border-hover);width:36px;height:5px;transition:background .2s,transform .2s}.overlay-drag-handle-zone:active .overlay-drag-handle-bar{background:var(--text-subtle);transform:scaleX(1.15)}.overlay-header{border-bottom:.5px solid var(--border-color);background:var(--bg-elevated);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px 14px;display:flex}.overlay-sheet .overlay-header{background:0 0;padding:8px 20px 14px}.overlay-title-group{flex-direction:column;gap:2px;min-width:0;display:flex}.overlay-title{font-family:var(--font-family);font-size:var(--type-callout);font-weight:var(--weight-bold);color:var(--text-main);letter-spacing:-.015em;line-height:var(--leading-tight);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.overlay-subtitle{font-family:var(--font-family);font-size:var(--type-caption-1);color:var(--text-muted);line-height:var(--leading-normal);margin:0}.overlay-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.overlay-close-btn{cursor:pointer;width:44px;min-width:44px;height:44px;min-height:44px;color:var(--text-muted);border-radius:var(--radius-full);-webkit-tap-highlight-color:transparent;background:0 0;border:none;outline:none;justify-content:center;align-items:center;margin:-6px -6px -6px 0;padding:0;display:flex;position:relative}.overlay-close-btn:before{content:"";border-radius:var(--radius-full);background:var(--bg-hover);border:1px solid var(--border-color);width:30px;height:30px;transition:all .2s cubic-bezier(.16,1,.3,1);position:absolute}.overlay-close-btn svg{z-index:1;transition:transform .2s,color .2s;position:relative}.overlay-close-btn:hover{color:var(--text-main)}.overlay-close-btn:hover:before{background:var(--border-color);border-color:var(--border-hover);transform:scale(1.05)}.overlay-close-btn:active:before{transform:scale(.92)}.overlay-body{-webkit-overflow-scrolling:touch;z-index:1;flex:auto;min-height:0;padding:20px 24px;position:relative;overflow-y:auto}.overlay-sheet .overlay-body{padding:16px 20px}.overlay-sheet .overlay-body:last-child{padding-bottom:calc(20px + env(safe-area-inset-bottom,16px))}.overlay-footer{z-index:100;border-top:.5px solid var(--border-color);background:var(--bg-card);-webkit-backdrop-filter:var(--glass-blur);box-sizing:border-box;flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;width:100%;margin-top:auto;padding:12px 20px;display:flex;position:sticky;bottom:0;box-shadow:0 -4px 16px #00000014}.overlay-footer>div{grid-auto-columns:minmax(110px,1fr);grid-auto-flow:column;align-items:stretch;gap:10px;display:grid}.overlay-footer .intervention-modal-footer{box-shadow:none!important;z-index:auto!important;background:0 0!important;border:none!important;grid-auto-columns:minmax(110px,1fr)!important;grid-auto-flow:column!important;align-items:stretch!important;gap:10px!important;width:100%!important;margin:0!important;padding:0!important;display:grid!important;position:static!important}.overlay-sheet .overlay-footer .intervention-modal-footer{grid-auto-columns:1fr!important}.overlay-footer button,.overlay-footer .overlay-btn,.overlay-footer .btn{min-height:var(--btn-height-lg,38px);height:var(--btn-height-lg,38px);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--type-footnote);font-weight:var(--weight-semibold);letter-spacing:-.01em;box-sizing:border-box;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:none;justify-content:center;align-items:center;gap:6px;width:100%;min-width:110px;padding:0 16px;transition:transform .15s cubic-bezier(.16,1,.3,1),background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.overlay-footer button:active,.overlay-footer .overlay-btn:active,.overlay-footer .btn:active{transform:scale(.97)}.overlay-footer .btn-secondary,.overlay-footer button.btn-secondary,.overlay-footer button:not(.btn-primary):not(.btn-danger):not(.demo-btn-primary):not(.demo-btn-danger){background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-main)}.overlay-footer .btn-secondary:hover,.overlay-footer button.btn-secondary:hover,.overlay-footer button:not(.btn-primary):not(.btn-danger):not(.demo-btn-primary):not(.demo-btn-danger):hover{background:var(--bg-hover);border-color:var(--border-hover)}.overlay-footer .btn-primary,.overlay-footer button.btn-primary{background:var(--color-accent);color:var(--color-on-accent);box-shadow:none}.overlay-footer .btn-primary:hover,.overlay-footer button.btn-primary:hover{background:var(--color-accent-hover);box-shadow:none}.overlay-footer .btn-danger,.overlay-footer button.btn-danger{background:var(--color-danger);color:var(--color-on-accent);box-shadow:none}.overlay-footer .btn-danger:hover,.overlay-footer button.btn-danger:hover{background:var(--color-danger-hover);box-shadow:none}.overlay-sheet .overlay-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom,12px));width:100%;padding:12px 16px calc(12px + env(safe-area-inset-bottom,16px));justify-content:stretch}.overlay-sheet .overlay-footer>div{grid-auto-columns:1fr;grid-auto-flow:column;align-items:stretch;gap:10px;width:100%;display:grid}.overlay-sheet .overlay-footer button,.overlay-sheet .overlay-footer .overlay-btn,.overlay-sheet .overlay-footer .btn{width:100%;min-width:0;min-height:var(--btn-height-touch,42px);height:var(--btn-height-touch,42px);font-size:var(--type-subhead);padding:0 14px}@media (max-width:380px){.overlay-sheet .overlay-footer>div{grid-template-columns:1fr;grid-auto-flow:row;gap:8px}.overlay-sheet .overlay-footer button,.overlay-sheet .overlay-footer .overlay-btn,.overlay-sheet .overlay-footer .btn{width:100%;min-height:var(--btn-height-touch,42px);height:var(--btn-height-touch,42px)}}.notif-center-wrapper{align-items:center;display:inline-flex;position:relative}.notif-bell-btn{border:1px solid var(--border-color,#ffffff1f);background:var(--bg-elevated,#ffffff0d);width:38px;height:38px;color:var(--text-muted,#94a3b8);cursor:pointer;border-radius:50%;outline:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.notif-bell-btn:hover{color:var(--text-main,var(--color-on-accent));background:#ffffff1f;border-color:#ffffff40;transform:translateY(-1px)}.notif-bell-btn:active{background:#ffffff2e;border-color:#ffffff59;transform:scale(.94)translateY(0)}.notif-bell-btn.active{color:#38bdf8;background:#0084ff2e;border-color:#0084ff73}.notif-bell-icon{transition:transform .2s}.notif-bell-btn:hover .notif-bell-icon{transform:rotate(12deg)}.notif-badge{background:var(--color-danger);color:var(--color-on-accent);font-size:var(--type-caption-2);font-weight:var(--weight-bold);border-radius:var(--radius-full);text-align:center;box-sizing:border-box;border:1.5px solid var(--bg-main);font-variant-numeric:tabular-nums;letter-spacing:-.02em;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4.5px;line-height:1;display:inline-flex;position:absolute;top:-2px;right:-2px;box-shadow:0 1px 2px #00000040}@keyframes badgePop{0%{transform:scale(.5)}50%{transform:scale(1.2)}to{transform:scale(1)}}.animate-badge-pop{animation:.3s cubic-bezier(.16,1,.3,1) badgePop}.notif-dropdown-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(25px)saturate(180%);border:1px solid var(--border-color);border-radius:var(--radius-lg,16px);width:360px;max-width:calc(100vw - 20px);box-shadow:0 16px 40px #00000059, 0 0 0 1px var(--border-color);z-index:var(--z-dropdown,100);flex-direction:column;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.notif-sheet-handle-bar{display:none}.notif-panel-header{border-bottom:1px solid var(--border-color);background:var(--bg-elevated);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.notif-header-title{font-size:var(--type-footnote);font-weight:var(--weight-bold);color:var(--text-main);letter-spacing:-.01em;margin:0}.notif-close-btn{background:var(--bg-hover,#ffffff0f);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;border-radius:50%;outline:none;justify-content:center;align-items:center;width:26px;height:26px;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex}.notif-close-btn:hover{background:var(--border-hover);color:var(--text-main);transform:translateY(-1px)}.notif-close-btn:active{transform:scale(.92)translateY(0)}.notif-panel-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:440px;overflow-y:auto}.notif-panel-body::-webkit-scrollbar{width:5px}.notif-panel-body::-webkit-scrollbar-thumb{background:var(--border-hover,#00000026);border-radius:var(--radius-full)}.notif-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:44px 20px;display:flex}.notif-empty-icon-wrap{background:var(--bg-hover,#0000000a);border:1px solid var(--border-color);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:12px;display:flex}.notif-empty-state h4{font-size:15px;font-weight:var(--weight-semibold);color:var(--text-main);margin:0 0 6px}.notif-empty-state p{font-size:var(--type-footnote);color:var(--text-muted);max-width:240px;margin:0;line-height:1.4}.notif-list,.notif-group-block{flex-direction:column;display:flex}.notif-group-header{font-size:var(--type-micro);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);background:0 0;padding:10px 16px 4px}.notif-item-wrapper{border-bottom:1px solid var(--border-color);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.notif-group-block:last-child .notif-item-wrapper:last-child{border-bottom:none}.notif-swipe-actions{background:var(--color-red);z-index:1;opacity:0;pointer-events:none;justify-content:flex-end;align-items:center;width:100%;padding-right:20px;transition:opacity .15s;display:flex;position:absolute;top:0;bottom:0;right:0}.notif-swipe-actions.active{opacity:1;pointer-events:auto}.notif-swipe-delete-btn{color:var(--color-on-accent);font-size:var(--type-caption-2);font-weight:var(--weight-bold);cursor:pointer;background:0 0;border:none;outline:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:8px;display:flex}.notif-item{z-index:2;background:var(--bg-card);cursor:pointer;border:none;outline:none;align-items:center;gap:12px;padding:11px 16px;text-decoration:none;transition:background-color .15s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.notif-item.is-swiping{transition:none!important}.notif-item:hover{background:var(--bg-hover,#0000000a)}.notif-item:active{background:var(--bg-hover,#00000014)}.notif-item.unread{background:var(--color-accent-light,#007aff0d)}.notif-item.unread:hover{background:var(--color-accent-light,#007aff1a)}.notif-type-badge{border-radius:var(--radius-sm,10px);background:var(--bg-hover,#78788014);border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.notif-item-content{flex:1;min-width:0}.notif-item-top{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.notif-item-title{font-size:var(--type-footnote);font-weight:var(--weight-semibold);color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.notif-item-time{font-size:var(--type-caption-2);color:var(--text-subtle);flex-shrink:0}.notif-item-body{font-size:var(--type-caption-1);color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.35;display:-webkit-box;overflow:hidden}.notif-item-right{flex-shrink:0;align-self:center;align-items:center;gap:6px;display:flex}.notif-unread-dot{background:var(--color-accent);border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 6px #0084ffcc}.notif-desktop-delete-btn{color:var(--text-subtle);border-radius:var(--radius-xs,6px);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:none;outline:none;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:opacity .15s,background-color .15s,color .15s;display:flex}.notif-item:hover .notif-desktop-delete-btn{opacity:.6;pointer-events:auto}.notif-desktop-delete-btn:hover{opacity:1;color:var(--color-red);background:var(--color-red-bg,#ff3b301f)}.notif-desktop-delete-btn:active{transform:scale(.92)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scaleInDropdown{0%{opacity:0;transform:scale(.95)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}.animate-sheet-in{animation:.2s cubic-bezier(.16,1,.3,1) forwards scaleInDropdown}.notif-overlay-modal{touch-action:auto}.notif-overlay-body{padding:0 0 calc(20px + env(safe-area-inset-bottom,16px)) 0!important}@media (max-width:640px){.notif-desktop-delete-btn{display:none}.notif-bell-btn{width:38px;height:38px}}.tooltip-trigger-wrap{justify-content:center;align-items:center;display:inline-flex;position:relative}.tooltip-bubble{z-index:var(--z-modal);pointer-events:none;font-family:var(--font-family);font-size:var(--type-caption-2);font-weight:var(--weight-medium);color:var(--color-on-accent);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-xs);box-shadow:var(--shadow-dropdown);white-space:nowrap;-webkit-user-select:none;user-select:none;background:#1e1e20eb;border:.5px solid #ffffff26;padding:5px 9px;line-height:1.2;animation:.16s cubic-bezier(.16,1,.3,1) forwards tooltipFadeIn;position:absolute;transform:translate(-50%)}[data-theme=light] .tooltip-bubble{color:var(--color-on-accent);background:#28282ae6}.tooltip-top{transform:translate(-50%,-100%)}.tooltip-bottom{transform:translate(-50%)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%,-92%)scale(.96)}to{opacity:1;transform:translate(-50%,-100%)scale(1)}}.tooltip-bottom{animation-name:tooltipFadeInBottom}@keyframes tooltipFadeInBottom{0%{opacity:0;transform:translate(-50%,-8%)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}.navbar{width:100%;z-index:var(--z-navbar);background:var(--bg-nav);border-bottom:.5px solid var(--border-color);-webkit-backdrop-filter:blur(20px)saturate(180%);padding-top:env(safe-area-inset-top,0px);transition:background .3s,border-color .3s;position:fixed;top:0;left:0;right:0}.admin-user-mode-banner{background:linear-gradient(90deg, var(--color-orange), #ff5e3a);color:var(--color-on-accent);box-sizing:border-box;width:100%;max-width:900px;font-size:var(--type-caption-1);font-weight:var(--weight-medium);z-index:10;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:6px 20px;display:flex;box-shadow:0 2px 8px #ff5e3a40}.admin-user-mode-content{align-items:center;gap:8px;min-width:0;display:flex}.admin-user-mode-icon{flex-shrink:0}.admin-user-mode-content span{font-size:var(--type-caption-1);color:var(--color-on-accent);font-weight:var(--weight-semibold);letter-spacing:.01em}.admin-user-mode-btn{color:var(--color-on-accent);border-radius:var(--radius-xs);font-size:var(--type-caption-2);font-weight:var(--weight-bold);cursor:pointer;white-space:nowrap;background:#00000040;border:1px solid #fff6;justify-content:center;align-items:center;padding:3px 10px;transition:all .2s;display:inline-flex}.admin-user-mode-btn:hover{background:#0006;border-color:#fffc}.notif-banner-desktop{background:var(--color-accent);color:var(--color-on-accent);box-sizing:border-box;width:100%;max-width:900px;font-weight:var(--weight-medium);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:8px 20px;display:flex}.notif-banner-content{align-items:center;gap:10px;min-width:0;display:flex}.notif-banner-content span{font-size:var(--type-footnote);color:var(--color-on-accent)}.notif-banner-bell{flex-shrink:0}.notif-banner-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.notif-banner-btn-enable{background:var(--color-on-accent);color:var(--color-accent);border-radius:var(--radius-input);font-size:var(--type-footnote);font-weight:var(--weight-semibold);cursor:pointer;border:none;padding:5px 14px;transition:opacity .2s}.notif-banner-btn-enable:hover{opacity:.9}.notif-banner-btn-enable:active{opacity:.8}.notif-banner-btn-close{color:var(--color-on-accent);cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;transition:background .2s;display:flex}.notif-banner-btn-close:hover{background:#ffffff59}.notif-mobile-pill{bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:99999;background:var(--color-accent);max-width:420px;color:var(--color-on-accent);box-sizing:border-box;border-radius:18px;justify-content:space-between;align-items:center;gap:10px;margin:0 auto;padding:10px 12px 10px 14px;display:flex;position:fixed;left:12px;right:12px;box-shadow:0 10px 30px #007aff80,0 2px 10px #0000004d}.notif-mobile-pill-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.notif-mobile-bell-box{border-radius:var(--radius-input);width:32px;height:32px;color:var(--color-on-accent);background:#fff3;flex-shrink:0;justify-content:center;align-items:center;display:flex}.notif-mobile-pill-text{flex-direction:column;gap:1px;min-width:0;display:flex}.notif-mobile-pill-title{font-size:.8125rem;font-weight:var(--weight-bold);color:var(--color-on-accent);line-height:1.2}.notif-mobile-pill-desc{color:#ffffffe6;white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;line-height:1.2;overflow:hidden}.notif-mobile-pill-right{flex-shrink:0;align-items:center;gap:6px;display:flex}.notif-mobile-btn-enable{background:var(--color-on-accent);color:var(--color-accent);border-radius:var(--radius-sm);font-size:.75rem;font-weight:var(--weight-bold);cursor:pointer;border:none;padding:6px 14px;transition:opacity .2s,transform .1s}.notif-mobile-btn-enable:active{opacity:.9;transform:scale(.96)}.notif-mobile-btn-close{color:var(--color-on-accent);cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;transition:background .2s;display:flex}.notif-mobile-btn-close:hover{background:#ffffff59}.navbar-inner{box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;max-width:900px;height:52px;margin:0 auto;padding:0 20px;display:flex}@media (max-width:640px){.navbar-inner{height:50px;padding:0 16px}.brand-logo{max-width:80px;height:24px}.brand-name{font-size:var(--type-footnote)}.logout-btn span{display:none}.logout-btn{border-radius:50%;justify-content:center;min-width:44px;min-height:44px;padding:8px}}@media (max-width:440px){.navbar-inner{padding:0 10px}.brand-name{font-size:var(--type-caption-1)}}@media (max-width:360px){.brand-name{display:none}}.navbar-brand{color:var(--text-main);align-items:center;gap:10px;text-decoration:none;transition:opacity .2s;display:flex}.navbar-brand:hover{opacity:.85}.navbar-brand:active{opacity:.7}.brand-logo{object-fit:contain;flex-shrink:0;width:auto;max-width:140px;height:32px}.brand-name{font-size:var(--type-callout);font-weight:var(--weight-bold);color:var(--text-main);letter-spacing:-.01em}.navbar-actions{align-items:center;gap:8px;display:flex}.logout-btn{background:var(--color-red-bg);border:1px solid var(--color-red-border);color:var(--color-red);font-family:var(--font-family);font-size:var(--type-footnote);font-weight:var(--weight-semibold);cursor:pointer;border-radius:20px;align-items:center;gap:6px;padding:7px 14px;transition:background-color .2s,opacity .2s;display:flex}.logout-btn:hover{background:var(--color-red);color:var(--color-on-accent);border-color:var(--color-red)}.logout-btn:active{opacity:.8}.theme-toggle{background:var(--bg-elevated,#ffffff0d);border:1px solid var(--border-color,#ffffff1f);width:38px;height:38px;color:var(--text-muted,#94a3b8);cursor:pointer;border-radius:50%;outline:none;flex-shrink:0;justify-content:center;align-items:center;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex}.theme-toggle:hover{color:var(--text-main,var(--color-on-accent));background:#ffffff1f;border-color:#ffffff40;transform:translateY(-1px)}.theme-toggle:active{background:#ffffff2e;border-color:#ffffff59;transform:scale(.94)translateY(0)}.theme-toggle.active{color:#38bdf8;background:#0084ff2e;border-color:#0084ff73}.nav-tutorial-btn{background:var(--bg-elevated,#ffffff0d);border:1px solid var(--border-color,#ffffff1f);height:38px;color:var(--text-main,var(--color-on-accent));font-family:var(--font-family);font-size:var(--type-footnote);font-weight:var(--weight-medium,500);cursor:pointer;border-radius:20px;outline:none;flex-shrink:0;align-items:center;gap:7px;padding:0 13px;transition:all .18s cubic-bezier(.16,1,.3,1);display:inline-flex}.nav-tutorial-btn:hover{color:var(--color-orange);background:#ff950024;border-color:#ff950061;transform:translateY(-1px)}.nav-tutorial-btn:active{border-color:var(--color-orange);background:#ff950038;transform:scale(.96)translateY(0)}@media (max-width:600px){.nav-tutorial-btn{border-radius:50%;justify-content:center;width:38px;height:38px;padding:0}.nav-tutorial-btn span{display:none}}.nav-user-badge{box-sizing:border-box;background:var(--bg-elevated,#ffffff0d);border:1px solid var(--border-color,#ffffff1f);height:38px;color:var(--text-main,var(--color-on-accent));font-family:var(--font-family);font-size:var(--type-footnote);font-weight:var(--weight-semibold);cursor:pointer;border-radius:20px;outline:none;flex-shrink:0;align-items:center;gap:8px;max-width:240px;padding:0 10px 0 4px;transition:all .18s cubic-bezier(.16,1,.3,1);display:inline-flex}.nav-user-badge:hover{color:var(--text-main,var(--color-on-accent));background:#ffffff1f;border-color:#ffffff40;transform:translateY(-1px)}.nav-user-badge:active{background:#ffffff2e;border-color:#ffffff59;transform:scale(.96)translateY(0)}.nav-role-tag{background:var(--bg-card);height:18px;color:var(--text-muted);font-size:var(--type-caption-2);font-weight:var(--weight-bold);letter-spacing:.04em;text-align:center;box-sizing:border-box;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0 6px;line-height:1;display:inline-flex}.nav-role-tag.role-admin{background:var(--color-orange-bg);color:var(--color-orange);border:none}.nav-role-tag.role-coordinator{color:#00c7be;background:#00c7be26;border:none}[data-theme=dark] .nav-role-tag.role-coordinator{color:#30d1c8;background:#00c7be2e;border:none}.nav-role-tag.role-dispatcher{color:#bf5af2;background:#af52de29;border:none}.nav-role-tag.role-rescuer,.nav-role-tag.role-med-kpp{background:var(--color-accent-light);color:var(--color-accent);border:none}.nav-role-tag.role-med-paramedic,.nav-role-tag.role-med-doctor{background:var(--color-red-bg);color:var(--color-red);border:none}.nav-role-tag.role-med-nurse{color:#ffd60a;background:#ffcc0026;border:none}.nav-role-tag.role-team{color:var(--color-accent);background:#2563eb1f;border:none}.ios-menu-name-row{align-items:center;gap:6px;min-width:0;display:flex}.menu-role-tag{height:16px;font-size:var(--type-caption-2);padding:0 5px}.nav-user-avatar{background:var(--color-accent-light);width:26px;height:26px;color:var(--color-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.nav-user-initials{color:var(--color-on-accent);font-size:var(--type-caption-2);font-weight:var(--weight-bold);letter-spacing:.02em;line-height:1}.menu-user-initials{color:var(--color-on-accent);font-size:var(--type-footnote);font-weight:var(--weight-bold);letter-spacing:.02em;line-height:1}.nav-user-photo{object-fit:cover;width:100%;height:100%}.nav-user-name{white-space:nowrap;text-overflow:ellipsis;max-width:140px;display:inline-block;overflow:hidden}@media (max-width:640px){.navbar-actions{gap:8px}.nav-user-badge{background:var(--bg-elevated);border:1px solid var(--border-color);width:38px;height:38px;box-shadow:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;max-width:none;padding:0;display:inline-flex;overflow:hidden}.nav-user-badge:hover{background:#ffffff1f;border-color:#ffffff40;transform:translateY(-1px)}.nav-user-badge:active{transform:scale(.94)translateY(0)}.nav-user-name,.nav-user-badge .nav-role-tag{display:none!important}.nav-user-avatar{width:38px;height:38px;box-shadow:none;border:none}.nav-user-initials{font-size:var(--type-caption-1)}.theme-toggle{width:38px;height:38px}.nav-tutorial-btn{border-radius:50%;justify-content:center;width:38px;height:38px;padding:0}}.ios-menu-user-card{background:var(--bg-elevated);border-radius:var(--radius-sm);border:1px solid var(--border-color);align-items:center;gap:10px;margin-bottom:6px;padding:10px 12px;display:flex}.ios-menu-user-avatar{background:var(--color-accent-light);width:32px;height:32px;color:var(--color-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.ios-menu-user-avatar img{object-fit:cover;width:100%;height:100%}.ios-menu-user-details{flex-direction:column;min-width:0;display:flex}.ios-menu-user-name{font-size:var(--type-footnote);font-weight:var(--weight-bold);color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ios-menu-user-email{font-size:var(--type-caption-2);color:var(--text-subtle);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nav-header-search-wrap{transform-origin:100%;align-items:center;gap:10px;width:100%;height:100%;animation:.35s cubic-bezier(.34,1.56,.64,1) forwards searchExpandSpring;display:flex;position:relative}@keyframes searchExpandSpring{0%{opacity:0;transform:scaleX(.85)}to{opacity:1;transform:scaleX(1)}}.nav-header-search-input{background:var(--bg-elevated);border:1px solid var(--color-accent);border-radius:var(--radius-sm);width:100%;height:38px;font-family:var(--font-family);font-size:var(--type-subhead);color:var(--text-main);box-shadow:var(--shadow-focus);transition:var(--transition);padding:0 40px 0 38px}.nav-header-search-input:focus{background:var(--bg-card);outline:none}.nav-header-search-wrap .nav-search-icon{color:var(--color-accent);pointer-events:none;position:absolute;left:12px}.nav-header-search-wrap .nav-search-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:46px;transform:translateY(-50%)}.nav-header-search-wrap .nav-search-clear:hover{color:var(--text-main)}.nav-search-close-btn{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text-muted);cursor:pointer;transition:var(--transition);flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-search-close-btn:hover{background:var(--color-red-bg);border-color:var(--color-red-border);color:var(--color-red)}.nav-search-dropdown{background:var(--bg-card);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-lg);z-index:1000;max-height:380px;padding:12px 0;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.nav-search-results{box-sizing:border-box;flex-direction:column;gap:4px;width:100%;margin:0 auto;padding:0 24px;display:flex}@media (max-width:640px){.nav-search-results{padding:0 12px}}.nav-search-empty{width:100%;font-size:var(--type-subhead);color:var(--text-muted);text-align:center;box-sizing:border-box;margin:0 auto;padding:16px 24px}.nav-search-item{border-radius:var(--radius-sm);color:inherit;transition:var(--transition);border:1px solid #0000;justify-content:space-between;align-items:center;padding:10px 12px;text-decoration:none;display:flex}.nav-search-item:hover{background:var(--bg-elevated);border-color:var(--border-color)}.nav-search-item-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.icon-blue{color:var(--color-accent);flex-shrink:0}.icon-red{color:var(--color-red);flex-shrink:0}.nav-search-item-text{flex-direction:column;gap:2px;min-width:0;display:flex}.nav-search-item-name{font-size:var(--type-subhead);font-weight:var(--weight-bold);color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nav-search-item-meta{font-size:var(--type-footnote);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nav-search-item-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.nav-qty-badge{font-size:var(--type-caption-1);font-weight:var(--weight-bold);border-radius:var(--radius-sm);padding:3px 8px}.ios-menu-wrap{position:relative}.ios-pull-down-menu{background:var(--bg-card);border:1px solid var(--border-color);width:255px;max-width:calc(100vw - 20px);z-index:var(--z-mobile-menu);-webkit-backdrop-filter:blur(24px)saturate(180%);transform-origin:100% 0;border-radius:16px;padding:6px;animation:.22s cubic-bezier(.175,.885,.32,1.2) forwards iosMenuPop;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 14px 34px #00000038,0 2px 8px #00000014}@keyframes iosMenuPop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.ios-menu-item{border-radius:var(--radius-input);width:100%;min-width:0;min-height:42px;color:var(--text-main);font-family:var(--font-family);font-size:var(--type-footnote);font-weight:var(--weight-medium);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;outline:none;justify-content:space-between;align-items:center;padding:10px 12px;text-decoration:none;transition:all .15s cubic-bezier(.16,1,.3,1);display:flex}.ios-menu-item:hover{background:#ffffff1a;border-color:#ffffff26;transform:translate(2px)}.ios-menu-item:active{background:#ffffff29;border-color:#ffffff40;transform:scale(.98)translate(0)}.ios-menu-item-left{white-space:nowrap;align-items:center;gap:10px;display:flex}.ios-menu-item-left svg{color:var(--color-accent)}.ios-menu-item.destructive,.ios-menu-item.destructive .ios-menu-item-left svg{color:var(--color-red)}.ios-menu-divider{background:var(--border-color);height:.5px;margin:4px 6px}.nav-qty-badge.qty-green{background:var(--color-green-bg);color:var(--color-green);border:1px solid var(--color-green-border)}.nav-qty-badge.qty-red{background:var(--color-red-bg);color:var(--color-red);border:1px solid var(--color-red-border)}.nav-arrow{color:var(--text-subtle)}.ios-menu-item-left{min-width:0}.ios-menu-item-left span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.role-preview-card{border-radius:var(--radius-lg);background:var(--bg-elevated);border:1px solid var(--border-color);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-family:inherit;transition:all .2s;display:flex}.role-preview-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover)}.role-preview-card.active{border-color:var(--color-accent);background:var(--color-accent-light)}.role-preview-card-left{align-items:center;gap:12px;min-width:0;display:flex}.role-preview-icon{border-radius:var(--radius-input);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.role-preview-icon.role-admin{background:var(--color-accent-light);color:var(--color-accent)}.role-preview-icon.role-coordinator{color:#00c7be;background:#00c7be26}.role-preview-icon.role-dispatcher{color:var(--color-orange);background:#ff95002e}.role-preview-icon.role-rescuer{background:var(--color-green-bg);color:var(--color-green)}.role-preview-icon.role-youth{background:var(--color-blue-bg);color:var(--color-blue)}.role-preview-info{flex-direction:column;gap:2px;min-width:0;display:flex}.role-preview-name{font-size:14px;font-weight:var(--weight-bold);color:var(--text-main)}.role-preview-desc{font-size:var(--type-caption-1);color:var(--text-muted);line-height:1.3}.role-check-icon.blue{color:var(--color-accent)}.role-check-icon.orange{color:var(--color-orange)}.role-check-icon.green{color:var(--color-green)}.nav-role-tag.role-team{color:#7d7aff;text-overflow:ellipsis;white-space:nowrap;background:#5856d626;border:none;max-width:110px;overflow:hidden}.nav-role-tag.role-youth{background:var(--color-blue-bg);color:var(--color-blue);border:none}.app-footer{text-align:center;padding:16px 20px max(24px, env(safe-area-inset-bottom));border-top:.5px solid var(--border-color);background:var(--bg-card);margin-top:auto}.footer-flat-container{flex-direction:column;align-items:center;gap:8px;max-width:960px;margin:0 auto;display:flex}.footer-meta-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.footer-dot{color:var(--text-subtle);font-size:var(--type-caption-2);opacity:.5}.footer-link{color:var(--text-muted);font-size:var(--type-footnote);font-weight:var(--weight-medium);cursor:pointer;font-family:var(--font-family);background:0 0;border:none;align-items:center;gap:5px;padding:4px 6px;text-decoration:none;transition:color .15s,opacity .15s;display:inline-flex}.footer-link:hover{color:var(--color-accent,var(--color-accent))}.footer-credits{font-size:var(--type-caption-2);color:var(--text-subtle);font-weight:var(--weight-medium);letter-spacing:.01em;opacity:.75;margin:0}@media (max-width:640px){.app-footer{padding:14px 16px max(18px, env(safe-area-inset-bottom))}.footer-meta-row{gap:8px}}.device-gate-overlay{background:var(--bg-main);z-index:99999;box-sizing:border-box;flex-direction:column;justify-content:space-between;align-items:center;width:100vw;height:100vh;min-height:100dvh;padding:20px 16px 0;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto}.gate-auth-card{text-align:center;border:1px solid var(--border-color);background:var(--bg-card);width:100%;max-width:400px;box-shadow:var(--shadow-lg);box-sizing:border-box;border-radius:26px;flex-direction:column;align-items:center;margin:auto auto 16px;padding:36px 28px 32px;display:flex}.gate-logo-img{object-fit:contain;width:76px;height:76px;margin-bottom:18px}.gate-header-text{margin-bottom:24px}.gate-header-text h1{font-size:var(--type-title-2);font-weight:var(--weight-bold);letter-spacing:-.025em;color:var(--text-main);margin-bottom:6px}.gate-header-text p{font-size:var(--type-footnote);color:var(--text-muted);font-weight:var(--weight-medium);line-height:var(--leading-loose)}.gate-auth-options{flex-direction:column;gap:12px;width:100%;display:flex}.microsoft-login-btn{border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--bg-elevated);width:100%;height:52px;color:var(--text-main);font-family:var(--font-family);font-size:var(--type-subhead);font-weight:var(--weight-bold);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:12px;transition:background-color .2s,border-color .2s,transform .15s,box-shadow .2s;display:flex}.microsoft-login-btn:hover{background:var(--bg-card);border-color:var(--border-hover);box-shadow:var(--shadow-md)}.microsoft-login-btn:active{transform:scale(.98)}.microsoft-login-btn:disabled{opacity:.6;cursor:not-allowed}.ms-icon{flex-shrink:0}.gate-error-banner{border-radius:var(--radius-sm);background:var(--color-red-bg);border:1px solid var(--color-red-border);color:var(--color-red);font-size:var(--type-footnote);font-weight:var(--weight-semibold);text-align:left;align-items:center;gap:8px;margin-top:8px;padding:10px 14px;display:flex}.gate-footer-links{justify-content:center;align-items:center;margin-top:14px;display:flex}.gate-privacy-link{color:var(--text-muted,#94a3b8);font-size:var(--type-caption-1,.75rem);text-decoration:none;transition:color .2s}.gate-privacy-link:hover{color:var(--accent-color,#26b4e6);text-decoration:underline}@media (max-width:480px){.gate-auth-card{border-radius:22px;padding:28px 20px 24px}.gate-logo-img{width:64px;height:64px;margin-bottom:14px}.gate-header-text h1{font-size:var(--type-title-3)}.microsoft-login-btn{height:48px;font-size:var(--type-subhead)}.gate-domain-info{font-size:var(--type-caption-2);padding:8px 10px}}.scanned-bag-badge{background:var(--surface-secondary);border:1px solid var(--border-color);font-size:var(--type-footnote);color:var(--text-main);border-radius:20px;align-items:center;gap:8px;margin-bottom:14px;padding:6px 14px;display:inline-flex}.pwa-instruction-box{background:var(--surface-secondary,#ffffff0d);border:1px solid var(--border-color);text-align:left;border-radius:16px;align-items:flex-start;gap:12px;margin:14px 0 10px;padding:16px;display:flex}.pwa-instruction-icon{flex-shrink:0;padding-top:2px}.pwa-instruction-box p{font-size:var(--type-footnote);color:var(--text-main);margin:0;line-height:1.5}.pwa-or-divider{text-align:center;align-items:center;width:100%;margin:16px 0 6px;display:flex;position:relative}.pwa-or-divider:before,.pwa-or-divider:after{content:"";border-bottom:1px solid var(--border-color);flex:1}.pwa-or-divider span{font-size:var(--type-caption-2);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:0 10px}.mobile-pwa-overlay{background:var(--bg-main);z-index:999999;box-sizing:border-box;flex-direction:column;justify-content:space-between;align-items:center;width:100vw;height:100vh;min-height:100dvh;padding:16px 16px 0;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto}.mobile-pwa-card{text-align:center;border:1px solid var(--border-color);background:var(--bg-card);width:100%;max-width:380px;box-shadow:var(--shadow-lg);box-sizing:border-box;border-radius:26px;flex-direction:column;align-items:center;margin:auto auto 16px;padding:32px 24px 24px;display:flex}.mobile-pwa-icon-wrap{margin-bottom:16px}.mobile-pwa-logo{object-fit:contain;width:72px;height:72px}.mobile-pwa-header{margin-bottom:20px}.mobile-pwa-header h1{font-size:var(--type-title-2);font-weight:var(--weight-bold);color:var(--text-main);letter-spacing:-.02em;margin-bottom:6px}.mobile-pwa-header p{font-size:var(--type-footnote);color:var(--text-muted);font-weight:var(--weight-medium);line-height:var(--leading-relaxed)}.mobile-pwa-steps{text-align:left;flex-direction:column;gap:10px;width:100%;margin-bottom:20px;display:flex}.pwa-step-item{border-radius:var(--radius-lg);background:var(--bg-elevated);border:1px solid var(--border-color);align-items:center;gap:12px;padding:10px 14px;display:flex}.pwa-step-item.highlight{background:var(--color-accent-light);border-color:#007aff40}.pwa-step-num{background:var(--border-color);width:26px;height:26px;color:var(--text-main);font-size:var(--type-caption-1);font-weight:var(--weight-bold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pwa-step-num.accent{background:var(--color-accent);color:var(--color-on-accent)}.pwa-step-text{font-size:var(--type-footnote);color:var(--text-main);font-weight:var(--weight-medium);line-height:var(--leading-snug)}.mobile-pwa-skip-btn{border-radius:var(--radius-sm);width:100%;color:var(--color-accent);font-family:var(--font-family);font-size:var(--type-footnote);font-weight:var(--weight-semibold);line-height:var(--leading-snug);cursor:pointer;background:0 0;border:none;margin-bottom:14px;padding:12px 14px}.mobile-pwa-skip-btn:hover{text-decoration:underline}.mobile-pwa-skip-btn:focus-visible{text-decoration:underline}.mobile-pwa-bypass-btn{color:var(--text-muted);font-size:var(--type-caption-1);cursor:pointer;background:0 0;border:none;margin-top:12px;padding:6px;font-family:inherit;text-decoration:underline}.mobile-pwa-privacy-link{color:var(--text-subtle,#64748b);font-size:var(--type-caption-2,.72rem);opacity:.8;margin-top:8px;text-decoration:none;transition:opacity .2s,color .2s}.mobile-pwa-privacy-link:hover{color:var(--accent-color,#26b4e6);opacity:1;text-decoration:underline}.pwa-browser-icon-badge{background:var(--color-accent-light);width:72px;height:72px;color:var(--color-accent);border:1px solid #007aff40;border-radius:20px;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 16px #007aff33}.pwa-benefit-tags{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-full);align-items:center;gap:6px;margin-bottom:12px;padding:4px 10px;display:inline-flex}.pwa-tag{font-size:var(--type-caption-2);font-weight:var(--weight-semibold);color:var(--text-muted)}.pwa-tag-dot{color:var(--text-subtle);opacity:.6;font-size:8px}.pwa-copy-link-btn{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px dashed var(--border-color);width:100%;color:var(--text-main);font-family:var(--font-family);font-size:var(--type-footnote);font-weight:var(--weight-semibold);cursor:pointer;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:12px 14px;transition:all .2s;display:flex}.pwa-copy-link-btn:hover{background:var(--bg-hover,#ffffff0f);border-color:var(--color-accent);color:var(--color-accent)}.pwa-copy-link-btn.copied{background:var(--color-green-bg);border-color:var(--color-green-border);color:var(--color-green);border-style:solid}.pwa-native-install-btn{border-radius:var(--radius-lg);width:100%;margin-bottom:4px;padding:14px 18px}.gate-bottom-footer-wrap{width:100%;margin-top:auto}.gate-bottom-footer-wrap .app-footer{padding:12px 16px max(20px, env(safe-area-inset-bottom));background:0 0;border-top:none}.dashboard-skeleton{width:100%}.skeleton-card{pointer-events:none;position:relative;overflow:hidden}.skeleton-card .skeleton-title{background:var(--bg-elevated);border-radius:4px;width:110px;height:20px}.skeleton-card .skeleton-badge{border-radius:var(--radius-sm);background:var(--bg-elevated);width:85px;height:22px}.skeleton-card .skeleton-meta{background:var(--bg-elevated);border-radius:4px;width:110px;height:12px}.skeleton-card .skeleton-open{background:var(--bg-elevated);border-radius:4px;width:50px;height:12px}.skeleton-line:after,.skeleton-card:after{content:"";background-image:linear-gradient(90deg,#fff0 0,#ffffff14 20%,#ffffff38 60%,#fff0);animation:1.4s infinite skeletonShimmer;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-100%)}[data-theme=light] .skeleton-line:after,[data-theme=light] .skeleton-card:after{background-image:linear-gradient(90deg,#0000 0,#0000000a 20%,#00000014 60%,#0000)}@keyframes skeletonShimmer{to{transform:translate(100%)}}.error-boundary-overlay{box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-height:60vh;padding:24px 16px;display:flex}.error-boundary-card{text-align:center;border-radius:18px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:480px;padding:32px 24px;display:flex}.error-boundary-icon-wrapper{width:60px;height:60px;color:var(--color-danger);background:#ef444424;border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.error-boundary-card h2{font-size:1.25rem;font-weight:var(--weight-heavy);color:var(--text-main,var(--color-on-accent));margin:0}.error-boundary-card p{color:var(--text-muted,#94a3b8);margin:0 0 10px;font-size:.88rem;line-height:1.5}.error-boundary-actions{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;display:flex}.error-boundary-btn{font-size:.88rem;font-weight:var(--weight-bold);border-radius:var(--radius-input);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-width:140px;padding:10px 18px;display:inline-flex}.changelog-modal-overlay{-webkit-backdrop-filter:blur(12px);z-index:var(--z-modal);background:#000000bf;justify-content:center;align-items:center;padding:16px;animation:.25s ease-out fadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.changelog-modal-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-2xl);flex-direction:column;width:100%;max-width:580px;max-height:88vh;animation:.3s cubic-bezier(.16,1,.3,1) forwards modalScaleUp;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 70px #0009,0 0 0 1px #ffffff0d}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.93)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.changelog-modal-header{border-bottom:1px solid var(--border-color);background:var(--bg-elevated);justify-content:space-between;align-items:center;padding:18px 22px 14px;display:flex}.changelog-header-badge-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.changelog-date-badge{background:var(--color-accent-light);color:var(--color-accent);font-size:12.5px;font-weight:var(--weight-bold);border:none;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;display:inline-flex}.changelog-version-tag{font-size:var(--type-caption-1);font-weight:var(--weight-semibold);color:var(--text-muted)}.changelog-close-btn{background:var(--bg-card);border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-muted);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.changelog-close-btn:hover{background:var(--bg-hover);color:var(--text-main);border-color:var(--border-hover)}.changelog-author-strip{background:var(--bg-card);border-bottom:1px solid var(--border-color);flex-direction:column;gap:10px;padding:14px 22px 16px;display:flex}.changelog-author-pill{border-radius:var(--radius-full);background:var(--bg-elevated,#ffffff0f);border:1px solid var(--border-color,#ffffff1f);align-items:center;gap:10px;width:-moz-fit-content;width:fit-content;padding:4px 14px 4px 4px;display:inline-flex;box-shadow:0 2px 8px #00000026}[data-theme=light] .changelog-author-pill{background:var(--bg-main);border-color:var(--color-gray-bg);box-shadow:0 2px 6px #0000000f}.changelog-author-info{flex-direction:column;line-height:1.15;display:flex}.changelog-author-name{font-size:var(--type-footnote);font-weight:var(--weight-semibold);color:var(--text-main);letter-spacing:-.1px}.changelog-author-role{font-size:var(--type-micro);font-weight:var(--weight-semibold);color:var(--color-accent)}.changelog-greeting{font-size:14px;font-weight:var(--weight-semibold);color:var(--text-main);line-height:1.4}.changelog-modal-body{flex-direction:column;gap:10px;max-height:calc(88vh - 220px);padding:16px 20px;display:flex;overflow-y:auto}.changelog-items-list{flex-direction:column;gap:10px;display:flex}.changelog-item-card{border-radius:var(--radius-lg);background:var(--bg-elevated);border:1px solid var(--border-color);align-items:flex-start;gap:12px;padding:12px 14px;transition:all .15s;display:flex}.changelog-item-card:hover{border-color:var(--border-hover);background:var(--bg-hover)}.changelog-item-icon-col{flex-shrink:0;padding-top:2px;font-size:20px;line-height:1}.changelog-item-content{flex-direction:column;gap:4px;display:flex}.changelog-item-title{font-size:14.5px;font-weight:var(--weight-bold);color:var(--text-main);margin:0;line-height:1.25}.changelog-item-text{font-size:var(--type-footnote);color:var(--text-muted);margin:0;line-height:1.45}.changelog-modal-footer{border-top:1px solid var(--border-color);background:var(--bg-elevated);justify-content:flex-end;padding:14px 22px;display:flex}.changelog-btn-primary{border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-on-accent);font-size:14px;font-weight:var(--weight-bold);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 20px;transition:all .2s;display:inline-flex}.changelog-btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.changelog-btn-primary:active{transform:translateY(0)}@media (max-width:600px){.changelog-modal-card{border-radius:20px}.changelog-modal-header,.changelog-author-strip,.changelog-modal-footer{padding-left:16px;padding-right:16px}.changelog-modal-body{padding:12px 14px}.changelog-item-card{gap:10px;padding:10px 12px}.changelog-btn-primary{justify-content:center;width:100%}}.toast-portal-viewport{top:calc(16px + env(safe-area-inset-top,0px));z-index:var(--z-toast);pointer-events:none;box-sizing:border-box;flex-direction:column;align-items:center;gap:8px;padding:0 16px;display:flex;position:fixed;left:0;right:0}.toast-capsule{pointer-events:auto;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-full);max-width:min(440px,92vw);box-shadow:var(--shadow-toast);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:var(--scrim-blur-subtle);align-items:center;gap:10px;padding:10px 14px;transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s;display:inline-flex}.toast-capsule:hover{transform:translateY(-1px)}.toast-capsule:active{transform:scale(.96)}.toast-icon-col{flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast-success .toast-icon-col{color:var(--color-green)}.toast-error .toast-icon-col{color:var(--color-red)}.toast-warning .toast-icon-col{color:var(--color-orange)}.toast-info .toast-icon-col{color:var(--color-accent)}.toast-content-col{flex-direction:column;gap:1px;min-width:0;display:flex}.toast-title{font-family:var(--font-family);font-size:var(--type-caption-1);font-weight:var(--weight-bold);color:var(--text-main);line-height:var(--leading-tight)}.toast-message{font-family:var(--font-family);font-size:var(--type-footnote);font-weight:var(--weight-medium);color:var(--text-main);line-height:var(--leading-normal);word-break:break-word}.toast-dismiss-btn{border-radius:var(--radius-full);background:var(--bg-hover);width:22px;height:22px;color:var(--text-subtle);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;padding:0;transition:all .15s;display:flex}.toast-dismiss-btn:hover{color:var(--text-main);background:var(--border-color)}.confirm-content-center{text-align:center;flex-direction:column;align-items:center;padding:8px 4px 4px;display:flex}.confirm-icon-bubble{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:14px;display:flex}.confirm-icon-bubble.bubble-destructive{background:var(--color-red-bg);color:var(--color-red);border:1px solid var(--color-red-border)}.confirm-icon-bubble.bubble-warning{background:var(--color-orange-bg);color:var(--color-orange);border:1px solid var(--color-orange-border)}.confirm-icon-bubble.bubble-info,.confirm-icon-bubble.bubble-help{background:var(--color-accent-light);color:var(--color-accent);border:1px solid #007aff4d}.confirm-title{font-family:var(--font-family);font-size:var(--type-headline);font-weight:var(--weight-bold);color:var(--text-main);line-height:var(--leading-snug);margin:0 0 6px}.confirm-desc{font-family:var(--font-family);font-size:var(--type-subhead);color:var(--text-muted);line-height:var(--leading-normal);max-width:360px;margin:0 0 20px}.confirm-actions-row{align-items:center;gap:10px;width:100%;display:flex}.overlay-footer .confirm-actions-row{grid-auto-columns:minmax(110px,1fr);grid-auto-flow:column;align-items:stretch;gap:10px;width:100%;display:grid}.confirm-btn{border-radius:var(--radius-sm);min-height:44px;font-family:var(--font-family);font-size:var(--type-footnote);font-weight:var(--weight-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;outline:none;flex:1;justify-content:center;align-items:center;padding:10px 16px;transition:transform .15s cubic-bezier(.16,1,.3,1),background .15s,box-shadow .15s;display:inline-flex}.confirm-btn:active{transform:scale(.97)}.confirm-btn-cancel{background:var(--bg-elevated);border:1px solid var(--border-color);color:var(--text-main)}.confirm-btn-cancel:hover{background:var(--bg-hover);border-color:var(--border-hover)}.confirm-btn-primary{background:var(--color-accent);color:var(--color-on-accent);box-shadow:none}.confirm-btn-primary:hover{background:var(--color-accent-hover);box-shadow:none}.confirm-btn-destructive{background:var(--color-danger);color:var(--color-on-accent);box-shadow:none}.confirm-btn-destructive:hover{background:var(--color-danger-hover);box-shadow:none}:root{--material-ultra-thin:#ffffffa6;--material-thin:#ffffffc7;--material-regular:#ffffffe0;--material-thick:#fffffff2;--scrim-backdrop:#00000073;--scrim-blur:blur(20px) saturate(180%);--scrim-blur-subtle:blur(12px) saturate(160%);--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-modal:24px;--radius-sheet:28px;--radius-full:9999px;--btn-height-sm:28px;--btn-height-md:34px;--btn-height-lg:38px;--btn-height-touch:42px;--shadow-subtle:0 1px 3px #0000000a, 0 1px 2px #00000005;--shadow-card:0 4px 16px #0000000f, 0 1px 3px #00000008;--shadow-dropdown:0 14px 36px #00000024, 0 2px 6px #0000000a;--shadow-modal:0 24px 64px -12px #00000047, 0 0 0 1px #0000000f;--shadow-sheet:0 -12px 40px #00000029, 0 -1px 0 #0000000a;--shadow-toast:0 12px 32px -4px #0000002e, 0 4px 12px #0000000f;--ease-spring:cubic-bezier(.175, .885, .32, 1.1);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s;--duration-normal:.26s;--duration-spring:.34s}[data-theme=dark]{--material-ultra-thin:#1c1c1ea6;--material-thin:#1c1c1ec7;--material-regular:#1c1c1ee0;--material-thick:#1c1c1ef2;--scrim-backdrop:#000000a6;--scrim-blur:blur(24px) saturate(190%);--scrim-blur-subtle:blur(14px) saturate(160%);--shadow-subtle:inset 0 1px 0 0 #ffffff14, 0 1px 3px #0000004d;--shadow-card:inset 0 1px 0 0 #ffffff14, 0 4px 16px #0006;--shadow-dropdown:inset 0 1px 0 0 #ffffff14, 0 16px 40px #0009;--shadow-modal:inset 0 1px 0 0 #ffffff14, 0 28px 72px -12px #000000b3, 0 0 0 1px #ffffff1a;--shadow-sheet:inset 0 1px 0 0 #ffffff14, 0 -16px 48px #0009, 0 -1px 0 #ffffff14;--shadow-toast:inset 0 1px 0 0 #ffffff14, 0 14px 36px -4px #000000a6, 0 0 0 1px #ffffff1f}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:more){:root{--border-color:#76767a;--border-hover:#48484a}[data-theme=dark]{--border-color:#8e8e93;--border-hover:#c6c6c8}}:root{--bg-main:#f2f2f7;--bg-card:#fff;--bg-elevated:#fff;--bg-nav:#ffffffd9;--text-main:#000;--text-muted:#3c3c43;--text-subtle:#8e8e93;--border-color:#c6c6c8;--border-hover:#aeaeb2;--color-green:#34c759;--color-green-bg:#34c7591f;--color-green-border:#34c75959;--color-orange:#ff9500;--color-orange-bg:#ff95001f;--color-orange-border:#ff950059;--color-red:#ff3b30;--color-red-bg:#ff3b301a;--color-red-border:#ff3b3059;--color-gray:#8e8e93;--color-gray-bg:#e5e5ea;--color-accent:#007aff;--color-accent-hover:#0062cc;--color-accent-light:#007aff1a;--font-family:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Inter", sans-serif;--type-large-title:2.125rem;--type-title-1:1.75rem;--type-title-2:1.375rem;--type-title-3:1.25rem;--type-headline:1.0625rem;--type-body:1.0625rem;--type-callout:1rem;--type-subhead:.9375rem;--type-footnote:.8125rem;--type-caption-1:.75rem;--type-caption-2:.6875rem;--type-micro:.625rem;--type-input:.84375rem;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-heavy:800;--leading-tight:1.2;--leading-snug:1.25;--leading-normal:1.29;--leading-relaxed:1.33;--leading-loose:1.38;--tracking-tight:-.024em;--tracking-normal:-.016em;--tracking-wide:.011em;--radius:18px;--radius-sm:12px;--radius-xs:8px;--radius-input:10px;--radius-md:10px;--radius-lg:14px;--radius-2xl:24px;--radius-full:999px;--transition:all .25s cubic-bezier(.25, 1, .5, 1);--shadow-sm:0 1px 3px #0000000a, 0 1px 2px #00000005;--shadow-md:0 4px 12px #0000000f, 0 2px 4px #0000000a;--shadow-lg:0 10px 30px #00000014;--shadow-focus:0 0 0 3px #007aff2e;--shadow-modal:0 20px 50px -10px #00000059, 0 0 0 1px #ffffff14;--shadow-dropdown:0 16px 40px #0000002e, 0 0 0 1px #0000000d;--shadow-footer:0 -4px 16px #0000000d;--shadow-toast:0 12px 34px -4px #00000038, 0 4px 12px #00000014;--color-on-accent:#fff;--color-danger:#ef4444;--color-danger-hover:#dc2626;--color-purple:#a855f7;--color-purple-bg:#a855f71f;--color-purple-border:#a855f759;--color-yellow:#fc0;--color-yellow-bg:#ffcc001f;--color-yellow-border:#ffcc0059;--color-blue:#3b82f6;--color-blue-bg:#3b82f61f;--color-blue-border:#3b82f659;--z-base:1;--z-dropdown:100;--z-sticky:200;--z-navbar:1000;--z-mobile-menu:1100;--z-overlay:5000;--z-modal:5100;--z-notification:6000;--z-toast:7000;--z-splash:8000;--z-tutorial:9000;--accent-color:var(--color-accent);--bg-hover:#0000000a;--text-primary:var(--text-main);--text-secondary:var(--text-muted);--scrollbar-thumb:#0003;--scrollbar-thumb-hover:#00000059}[data-theme=dark]{--bg-main:#000;--bg-card:#1c1c1e;--bg-elevated:#2c2c2e;--bg-nav:#1c1c1ee0;--text-main:#fff;--text-muted:#ebebf5;--text-subtle:#8e8e93;--border-color:#38383a;--border-hover:#48484a;--color-green:#30d158;--color-green-bg:#30d15826;--color-green-border:#30d15866;--color-orange:#ff9f0a;--color-orange-bg:#ff9f0a26;--color-orange-border:#ff9f0a66;--color-red:#ff453a;--color-red-bg:#ff453a26;--color-red-border:#ff453a66;--color-gray:#8e8e93;--color-gray-bg:#2c2c2e;--color-accent:#0a84ff;--color-accent-hover:#409cff;--color-accent-light:#0a84ff26;--shadow-sm:inset 0 1px 0 0 #ffffff14, 0 1px 3px #0006;--shadow-md:inset 0 1px 0 0 #ffffff14, 0 4px 12px #00000080;--shadow-lg:inset 0 1px 0 0 #ffffff14, 0 10px 30px #0009;--shadow-focus:0 0 0 3px #0a84ff47;--shadow-modal:inset 0 1px 0 0 #ffffff14, 0 20px 50px -10px #000000b3, 0 0 0 1px #ffffff14;--shadow-dropdown:inset 0 1px 0 0 #ffffff14, 0 16px 40px #0009, 0 0 0 1px #ffffff14;--shadow-footer:0 -4px 16px #0006;--shadow-toast:inset 0 1px 0 0 #ffffff14, 0 12px 34px -4px #0009, 0 4px 12px #0006;--color-purple:#c084fc;--color-purple-bg:#c084fc26;--color-purple-border:#c084fc66;--color-yellow:#ffd60a;--color-yellow-bg:#ffd60a26;--color-yellow-border:#ffd60a66;--color-blue:#64a6ff;--color-blue-bg:#64a6ff26;--color-blue-border:#64a6ff66;--accent-color:var(--color-accent);--bg-hover:#ffffff0f;--text-primary:var(--text-main);--text-secondary:var(--text-muted);--scrollbar-thumb:#fff3;--scrollbar-thumb-hover:#ffffff61}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full);transition:background .2s}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-corner{background:0 0}.no-scrollbar{scrollbar-width:none!important;-ms-overflow-style:none!important}.no-scrollbar::-webkit-scrollbar{display:none!important}html{scroll-behavior:smooth;touch-action:pan-x pan-y;width:100%;max-width:100%;position:relative;overflow-x:hidden!important}body{font-family:var(--font-family);font-size:var(--type-body);line-height:var(--leading-normal);letter-spacing:var(--tracking-tight);font-optical-sizing:auto;background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-wrap:break-word;touch-action:pan-x pan-y;width:100%;max-width:100%;transition:background-color .3s,color .3s;position:relative;overflow-x:hidden!important}#root{touch-action:pan-x pan-y;flex-direction:column;width:100%;max-width:100%;min-height:100dvh;display:flex;position:relative;overflow-x:hidden!important}input,textarea,select,button{font-family:var(--font-family)}@media screen and (max-width:768px){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:var(--type-callout)}}input:-webkit-autofill{caret-color:var(--text-main);transition:background-color 5000s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--bg-elevated) inset!important;-webkit-text-fill-color:var(--text-main)!important}input:-webkit-autofill:hover{caret-color:var(--text-main);transition:background-color 5000s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--bg-elevated) inset!important;-webkit-text-fill-color:var(--text-main)!important}input:-webkit-autofill:focus{caret-color:var(--text-main);transition:background-color 5000s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--bg-elevated) inset!important;-webkit-text-fill-color:var(--text-main)!important}input:-webkit-autofill:active{caret-color:var(--text-main);transition:background-color 5000s ease-in-out;-webkit-box-shadow:0 0 0 1000px var(--bg-elevated) inset!important;-webkit-text-fill-color:var(--text-main)!important}.clean-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:box-shadow .2s,background-color .3s,border-color .3s}.primary-button{background:var(--color-accent);color:var(--color-on-accent);border-radius:var(--radius-input);font-weight:var(--weight-semibold);font-family:var(--font-family);font-size:var(--type-footnote);line-height:var(--leading-loose);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:8px 16px;transition:background-color .2s,opacity .2s,transform .15s;display:inline-flex}.primary-button:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-sm)}.primary-button:active{opacity:.85;transform:scale(.98)}.primary-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.dashboard-top-nav{align-items:center;width:100%;margin-bottom:8px;display:flex}.back-link{color:var(--color-accent);font-family:inherit;font-weight:var(--weight-semibold);font-size:var(--type-subhead);letter-spacing:var(--tracking-normal);line-height:var(--leading-relaxed);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;gap:4px;width:-moz-fit-content;width:fit-content;padding:4px 0;text-decoration:none;transition:opacity .2s cubic-bezier(.25,1,.5,1),transform .2s cubic-bezier(.25,1,.5,1),color .2s;display:inline-flex}.back-link:hover{opacity:.75;color:var(--color-accent-hover);transform:translate(-3px)}.back-link:active{opacity:.5;transform:scale(.97)translate(-5px)}.back-link svg{flex-shrink:0;transition:transform .2s cubic-bezier(.25,1,.5,1)}.back-link:hover svg{transform:translate(-2px)}.unstyled-link{color:inherit;text-decoration:none}.page-header,.events-header,.dashboard-header,.bag-details-header,.report-header,.adminbag-header{flex-direction:column;gap:4px;margin-bottom:24px;display:flex}.events-header-top,.dashboard-header-top,.adminbag-header-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.page-header h1,.events-header h1,.dashboard-header h1,.bag-details-header h1,.report-header h1,.adminbag-header h1{font-size:var(--type-title-1);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);color:var(--text-main);line-height:var(--leading-tight);margin:0 0 4px}.page-header p,.events-header p,.dashboard-header p,.bag-details-header p,.report-header p,.adminbag-header p{color:var(--text-muted);font-size:var(--type-subhead);font-weight:var(--weight-medium);line-height:var(--leading-relaxed);margin:0}.app-container{max-width:900px;padding:calc(76px + env(safe-area-inset-top,0px)) 20px calc(64px + env(safe-area-inset-bottom,0px));box-sizing:border-box;flex:1;width:100%;margin:0 auto}.app-container-tracker{box-sizing:border-box;flex-direction:column;flex:1;width:100%;max-width:100%;margin:0;padding:0;display:flex}@media (max-width:640px){.app-container{padding:calc(64px + env(safe-area-inset-top,0px)) 16px calc(64px + env(safe-area-inset-bottom,0px))}}.status-text-green{color:var(--color-green)}.status-text-red{color:var(--color-red)}.status-text-gray{color:var(--color-gray)}body,.navbar,.app-footer,.clean-card,.status-badge,button,input,textarea{transition:background-color .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1),color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}@keyframes iosSlideIn{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{animation:.3s cubic-bezier(.25,1,.5,1) iosSlideIn}.loading{text-align:center;color:var(--text-muted);font-weight:var(--weight-medium);font-size:var(--type-callout);padding:80px 24px}.toast{top:calc(76px + env(safe-area-inset-top,0px));border-radius:var(--radius-full);font-weight:var(--weight-semibold);font-size:var(--type-subhead);letter-spacing:-.01em;z-index:var(--z-toast);background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-main);-webkit-backdrop-filter:blur(28px)saturate(190%);box-shadow:var(--shadow-toast);box-sizing:border-box;word-break:break-word;text-align:center;pointer-events:auto;justify-content:center;align-items:center;gap:10px;width:max-content;max-width:calc(100vw - 28px);padding:10px 20px;animation:.38s cubic-bezier(.175,.885,.32,1.275) forwards dynamicIslandDrop;display:inline-flex;position:fixed;left:50%;transform:translate(-50%)}.toast svg{color:var(--color-accent);flex-shrink:0}.toast-success{border-color:var(--color-green-border);background:var(--bg-card);color:var(--text-main)}.toast-success svg{color:var(--color-green)}.toast-warning{border-color:var(--color-orange-border);background:var(--bg-card);color:var(--text-main)}.toast-warning svg{color:var(--color-orange)}.toast-error{border-color:var(--color-red-border);background:var(--bg-card);color:var(--text-main)}.toast-error svg{color:var(--color-red)}@keyframes dynamicIslandDrop{0%{opacity:0;filter:blur(4px);transform:translate(-50%,-24px)scale(.85)}60%{filter:blur();transform:translate(-50%,3px)scale(1.02)}to{opacity:1;filter:blur();transform:translate(-50%)scale(1)}}.gate-modal-overlay,.admin-modal-backdrop,.pdf-modal-overlay{-webkit-backdrop-filter:blur(14px)saturate(150%);width:100vw;height:100vh;min-height:100dvh;z-index:var(--z-overlay);padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));box-sizing:border-box;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto}.gate-modal-overlay>*,.admin-modal-backdrop>*,.pdf-modal-overlay>*{max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);box-sizing:border-box}@keyframes iosScaleUp{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.animate-scale-up{animation:.25s cubic-bezier(.34,1.56,.64,1) iosScaleUp}@media (max-width:640px){.toast{top:calc(72px + env(safe-area-inset-top,0px));font-size:var(--type-input);border-radius:var(--radius-full);gap:8px;padding:9px 16px}}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.admin-modal-card,.admin-patrol-modal,.intervention-modal-card,.event-modal-card,.note-modal-card,.time-modal-card,.admin-modal-box{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow-modal);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 32px);box-sizing:border-box;width:100%;position:relative;flex-direction:column!important;display:flex!important;overflow:hidden!important}.admin-modal-form-wrap,.intervention-modal-form,.event-modal-form,.dispatch-modal-form,.time-modal-form-wrap{box-sizing:border-box!important;flex-direction:column!important;flex:auto!important;width:100%!important;min-height:0!important;display:flex!important;overflow:hidden!important}.admin-modal-header,.dispatch-modal-header,.intervention-modal-header,.event-modal-header,.admin-modal-head{z-index:25;background:var(--bg-card);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex;position:sticky;top:0}.admin-modal-title-group h3,.dispatch-modal-title,.event-modal-title,.admin-modal-head h3{font-size:var(--type-headline,17px);font-weight:var(--weight-bold,700);color:var(--text-main);line-height:var(--leading-tight,1.25);margin:0}.admin-modal-sub{font-size:var(--type-caption-1,12px);color:var(--text-muted);margin:2px 0 0}.admin-modal-close,.modal-close-btn,.ios-modal-close{background:var(--bg-elevated);border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-muted);cursor:pointer;font-size:var(--type-callout);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .2s cubic-bezier(.25,1,.5,1);display:flex}.admin-modal-close:hover,.modal-close-btn:hover,.ios-modal-close:hover{color:var(--text-main);border-color:var(--border-hover);background:var(--bg-hover);transform:scale(1.06)}.admin-modal-form,.dispatch-modal-scroll-body,.intervention-modal-body,.event-modal-body,.note-modal-body,.time-modal-body{-webkit-overflow-scrolling:touch;flex:auto!important;min-height:0!important;padding:20px!important;overflow-y:auto!important}.overlay-footer,.admin-modal-footer,.dispatch-modal-footer,.intervention-modal-footer,.event-modal-footer,.fb-modal-footer,.multiday-modal-footer,.admin-modal-actions,.time-modal-actions{-webkit-backdrop-filter:var(--glass-blur);z-index:100!important;background:var(--bg-card)!important;border-top:1px solid var(--border-color)!important;box-sizing:border-box!important;flex-shrink:0!important;justify-content:flex-end!important;align-items:center!important;gap:10px!important;width:100%!important;margin-top:auto!important;padding:12px 20px!important;display:flex!important;position:sticky!important;bottom:0!important;box-shadow:0 -4px 16px #00000014!important}.admin-modal-form>.admin-modal-footer,.admin-modal-form-wrap>.admin-modal-footer,.admin-modal-form>.admin-modal-actions,.intervention-modal-form>.intervention-modal-footer,.intervention-modal-body>.intervention-modal-footer,.event-modal-body>.event-modal-footer,.dispatch-modal-scroll-body>.dispatch-modal-footer{z-index:100!important;position:sticky!important;bottom:0!important}.overlay-footer .admin-modal-footer,.overlay-footer .dispatch-modal-footer,.overlay-footer .intervention-modal-footer,.overlay-footer .event-modal-footer,.overlay-footer .fb-modal-footer,.overlay-footer .multiday-modal-footer,.overlay-footer .confirm-actions-row{z-index:auto!important;box-shadow:none!important;background:0 0!important;border:none!important;margin:0!important;padding:0!important;position:static!important}.form-group,.event-field-group,.form-input-group{box-sizing:border-box;flex-direction:column;gap:6px;width:100%;display:flex}.form-group label,.event-field-group label,.form-label,.admin-field-label{font-size:12.5px;font-weight:var(--weight-semibold);color:var(--text-main);letter-spacing:-.01em;align-items:center;gap:6px;display:flex}.req-star{color:var(--color-red);font-weight:var(--weight-bold);margin-left:2px}.optional-tag{font-size:var(--type-caption-2);color:var(--text-subtle);font-weight:var(--weight-regular);margin-left:auto}.form-input,.form-input-styled,.event-input,.dispatch-input,.admin-input,.time-picker-field,.note-text-input{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-input);width:100%;height:42px;min-height:42px;color:var(--text-main);font-family:var(--font-family);font-size:var(--type-input);font-weight:var(--weight-medium);box-sizing:border-box;outline:none;padding:10px 14px;transition:border-color .2s,box-shadow .2s,background-color .2s}.form-textarea,.event-textarea,.dispatch-textarea{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-input);width:100%;min-height:80px;color:var(--text-main);font-family:var(--font-family);font-size:var(--type-input);font-weight:var(--weight-medium);box-sizing:border-box;resize:vertical;outline:none;padding:10px 14px;line-height:1.45;transition:border-color .2s,box-shadow .2s,background-color .2s}.form-input:focus,.form-input-styled:focus,.event-input:focus,.dispatch-input:focus,.admin-input:focus,.time-picker-field:focus,.note-text-input:focus,.form-textarea:focus,.event-textarea:focus,.dispatch-textarea:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus);background:var(--bg-card)}.form-input::placeholder,.form-input-styled::placeholder,.event-input::placeholder,.dispatch-input::placeholder,.admin-input::placeholder,.form-textarea::placeholder,.event-textarea::placeholder,.dispatch-textarea::placeholder{color:var(--text-subtle);opacity:.75}select.form-input-styled,select.dispatch-select{background-color:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-input);width:100%;height:42px;min-height:42px;color:var(--text-main);font-family:var(--font-family);font-size:var(--type-input);font-weight:var(--weight-medium);cursor:pointer;box-sizing:border-box;outline:none;padding:10px 38px 10px 14px;transition:border-color .2s,box-shadow .2s,background-color .2s;-webkit-appearance:none!important;appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238e8e93' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;background-position:right 14px center!important;background-repeat:no-repeat!important}select.form-input-styled:focus,select.dispatch-select:focus{border-color:var(--color-accent);box-shadow:var(--shadow-focus);background-color:var(--bg-card)}select option{background-color:var(--bg-elevated);color:var(--text-main);padding:8px}.team-member-picker-wrap{width:100%;position:relative}.team-member-picker-trigger{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-input);width:100%;height:42px;min-height:42px;color:var(--text-main);font-family:inherit;font-size:var(--type-input);text-align:left;cursor:pointer;box-sizing:border-box;-webkit-tap-highlight-color:transparent;outline:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;transition:all .2s;display:flex}.team-member-picker-trigger:hover{border-color:var(--border-hover);background:var(--bg-card)}.team-member-picker-trigger.open{border-color:var(--color-accent);box-shadow:var(--shadow-focus);background:var(--bg-card)}.team-member-picker-trigger:focus-visible{border-color:var(--color-accent);box-shadow:var(--shadow-focus);background:var(--bg-card)}.team-member-picker-trigger-left{align-items:center;gap:9px;min-width:0;display:flex;overflow:hidden}.team-member-picker-icon{color:var(--color-accent);flex-shrink:0}.team-member-picker-trigger-text{color:var(--text-muted);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-member-picker-trigger-text.selected,.team-member-picker-trigger.open .team-member-picker-trigger-text{color:var(--text-main);font-weight:var(--weight-semibold)}.team-member-picker-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.team-member-picker-trigger.open .team-member-picker-chevron{transform:rotate(180deg)}.team-member-picker-dropdown{z-index:var(--z-dropdown);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-dropdown);-webkit-backdrop-filter:blur(24px);flex-direction:column;gap:6px;padding:8px;animation:.18s cubic-bezier(.34,1.56,.64,1) iosScaleUp;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}.team-member-search-box{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-input);align-items:center;padding:0 10px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.team-member-search-box:focus-within{border-color:var(--color-accent);box-shadow:var(--shadow-focus);background:var(--bg-card)}.team-member-search-icon{color:var(--text-muted);flex-shrink:0;margin-right:8px}.team-member-picker-search{width:100%;font-family:inherit;font-size:var(--type-footnote);color:var(--text-main);background:0 0;border:none;outline:none;padding:8px 0}.team-member-picker-search::placeholder{color:var(--text-subtle);opacity:.75}.team-member-search-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.team-member-search-clear:hover{color:var(--text-main);background:var(--bg-hover)}.team-member-picker-options{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;gap:3px;max-height:220px;padding-right:2px;display:flex;overflow-y:auto}.team-member-picker-empty{text-align:center;color:var(--text-muted);padding:16px 12px;font-size:12.5px}.team-member-picker-option{border-radius:var(--radius-xs);color:var(--text-main);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:8px 10px;font-family:inherit;transition:background .15s;display:flex}.team-member-picker-option:hover{background:var(--bg-hover)}.team-member-picker-option.selected{background:var(--color-accent-light);color:var(--color-accent)}.admin-btn-primary,.btn-primary{border-radius:var(--radius-input);background:var(--color-accent);min-height:42px;color:var(--color-on-accent);font-family:var(--font-family);font-size:var(--type-subhead,14px);font-weight:var(--weight-semibold);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:0 18px;transition:background-color .2s,opacity .2s,transform .15s;display:inline-flex}.admin-btn-primary:hover,.btn-primary:hover{background:var(--color-accent-hover)}.admin-btn-primary:active,.btn-primary:active{transform:scale(.98)}.btn-danger{border-radius:var(--radius-input);background:var(--color-danger);min-height:42px;color:var(--color-on-accent);font-family:var(--font-family);font-size:var(--type-subhead,14px);font-weight:var(--weight-semibold);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:0 18px;transition:background-color .2s,opacity .2s,transform .15s;display:inline-flex}.btn-danger:hover:not(:disabled){background:var(--color-danger-hover)}.btn-danger:active:not(:disabled){transform:scale(.98)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.admin-btn-secondary,.modal-cancel-btn,.btn-secondary,.cancel-btn{border-radius:var(--radius-input);background:var(--bg-elevated);border:1px solid var(--border-color);min-height:42px;color:var(--text-main);font-family:var(--font-family);font-size:var(--type-subhead,14px);font-weight:var(--weight-medium);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 16px;transition:all .2s;display:inline-flex}.admin-btn-secondary:hover,.modal-cancel-btn:hover,.btn-secondary:hover,.cancel-btn:hover{background:var(--bg-card);border-color:var(--border-hover)}.type-select-pill-btn,.preset-chip-btn{border-radius:var(--radius-xs);min-height:34px;font-size:var(--type-caption-1);font-weight:var(--weight-semibold);background:var(--bg-elevated);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;padding:6px 14px;transition:all .15s;display:inline-flex}.type-select-pill-btn:hover,.preset-chip-btn:hover{color:var(--text-main);border-color:var(--border-hover)}.type-select-pill-btn.selected,.preset-chip-btn.selected{background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent)}input.form-input-styled[type=date],input.form-input-styled[type=datetime-local],input.form-input-styled[type=time]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-width:0;max-width:100%;overflow:hidden}[data-theme=dark] input.form-input-styled[type=date],[data-theme=dark] input.form-input-styled[type=datetime-local],[data-theme=dark] input.form-input-styled[type=time]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (max-width:640px){input.form-input-styled[type=date],input.form-input-styled[type=datetime-local],input.form-input-styled[type=time]{height:44px;min-height:44px;font-size:var(--type-callout);text-align:left;white-space:nowrap;align-items:center;padding-top:0;padding-bottom:0;line-height:1.3;display:flex}input.form-input-styled[type=date]::-webkit-datetime-edit{flex:auto;align-items:center;min-width:0;margin:0;padding:0;display:flex;overflow:hidden}input.form-input-styled[type=datetime-local]::-webkit-datetime-edit{flex:auto;align-items:center;min-width:0;margin:0;padding:0;display:flex;overflow:hidden}input.form-input-styled[type=time]::-webkit-datetime-edit{flex:auto;align-items:center;min-width:0;margin:0;padding:0;display:flex;overflow:hidden}input.form-input-styled[type=date]::-webkit-datetime-edit-fields-wrapper{flex:auto;align-items:center;min-width:0;padding:0;display:flex;overflow:hidden}input.form-input-styled[type=datetime-local]::-webkit-datetime-edit-fields-wrapper{flex:auto;align-items:center;min-width:0;padding:0;display:flex;overflow:hidden}input.form-input-styled[type=time]::-webkit-datetime-edit-fields-wrapper{flex:auto;align-items:center;min-width:0;padding:0;display:flex;overflow:hidden}input.form-input-styled[type=date]::-webkit-calendar-picker-indicator{opacity:.65;cursor:pointer;flex-shrink:0;margin-left:8px}input.form-input-styled[type=datetime-local]::-webkit-calendar-picker-indicator{opacity:.65;cursor:pointer;flex-shrink:0;margin-left:8px}input.form-input-styled[type=time]::-webkit-calendar-picker-indicator{opacity:.65;cursor:pointer;flex-shrink:0;margin-left:8px}}@media (max-width:380px){input.form-input-styled[type=datetime-local],input.form-input-styled[type=date]{padding-left:8px;padding-right:8px;font-size:15px}}
