.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--bg: #0b0d10;--surface-1: #13171c;--surface-2: #191e26;--surface-3: #1e2430;--border: #222932;--border-med: #2a3341;--border-hi: #374556;--text-1: #e2e8f0;--text-2: rgba(226, 232, 240, .54);--text-3: rgba(226, 232, 240, .3);--accent: #019840;--accent-dim: rgba(1, 152, 64, .11);--accent-glow: rgba(1, 152, 64, .22);--on-accent: #ffffff;--link: var(--accent);--link-hover: color-mix(in srgb, var(--accent) 80%, white);--success: #34d399;--warning: #fbbf24;--danger: #f87171;--danger-dim: rgba(248, 113, 113, .1);--ov-regular: #7c8798;--ov-supp: #38a3b8;--ov-ob-1: #fcd34d;--ov-ob-2: #f59e0b;--ov-ob-3: #d97706;--ov-ob-4: #b45309;--ov-jour: #8b7cf0;--sidebar-w: 240px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 18px;--accent-soft: color-mix(in srgb, var(--accent) 16%, transparent);--accent-ink: color-mix(in srgb, var(--accent) 84%, white);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 2px 6px rgba(0, 0, 0, .4), 0 12px 28px rgba(0, 0, 0, .45);--shadow-lg: 0 18px 44px rgba(0, 0, 0, .55);color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text-1);font-synthesis:none;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased}[data-theme=light]{color-scheme:light;--bg: #f0f4f8;--surface-1: #ffffff;--surface-2: #f5f8fc;--surface-3: #ebf0f7;--border: #dde3ed;--border-med: #c8d3e0;--border-hi: #b0bfd0;--text-1: #0f1c2e;--text-2: rgba(15, 28, 46, .56);--text-3: rgba(15, 28, 46, .34);--accent: #019840;--accent-dim: rgba(1, 152, 64, .1);--accent-glow: rgba(1, 152, 64, .2);--on-accent: #ffffff;--ov-regular: #64748b;--ov-supp: #1d7d93;--ov-ob-1: #d97706;--ov-ob-2: #b45309;--ov-ob-3: #92400e;--ov-ob-4: #6c2d0b;--ov-jour: #6d5ddb;--accent-soft: color-mix(in srgb, var(--accent) 16%, transparent);--accent-ink: color-mix(in srgb, var(--accent) 78%, #05231a);--shadow-sm: 0 1px 2px rgba(15, 28, 46, .06), 0 1px 3px rgba(15, 28, 46, .04);--shadow-md: 0 2px 4px rgba(15, 28, 46, .05), 0 8px 20px rgba(15, 28, 46, .07);--shadow-lg: 0 12px 32px rgba(15, 28, 46, .12), 0 2px 8px rgba(15, 28, 46, .06)}[data-theme=light] .login-logo{filter:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(72% 55% at 14% -8%,color-mix(in srgb,var(--accent) 10%,transparent) 0%,transparent 55%),radial-gradient(64% 50% at 100% 2%,color-mix(in srgb,var(--accent) 7%,transparent) 0%,transparent 50%),var(--bg);background-attachment:fixed;overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}.auth-page{min-height:100vh;display:grid;place-items:center;padding:clamp(18px,4vw,40px);background:radial-gradient(ellipse 60% 40% at 50% 0%,color-mix(in srgb,var(--accent) 11%,transparent) 0%,transparent 70%),var(--bg)}.login-panel{width:min(100%,420px);padding:0}.login-logo{width:min(100%,220px);height:auto;display:block;margin:0 auto 32px;filter:brightness(0) invert(1)}.loading-panel{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px}.loading-panel .login-logo{margin:0}.boot-bar{position:relative;width:min(220px,62vw);height:3px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--accent) 14%,transparent)}.boot-bar-fill{position:absolute;inset:0;width:0;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 45%,transparent),var(--accent));box-shadow:0 0 14px var(--accent-glow);transform-origin:left center;animation:boot-fill 2.6s cubic-bezier(.22,1,.36,1) forwards}.boot-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transform:translate(-100%);animation:boot-sheen 1.4s ease-in-out infinite}@keyframes boot-fill{0%{width:0}20%{width:34%}55%{width:66%}to{width:92%}}@keyframes boot-sheen{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.boot-bar-fill{animation:none;width:60%}.boot-bar-fill:after{animation:none}}.app-layout{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;transition:grid-template-columns .25s ease}.app-layout.sidebar-collapsed{grid-template-columns:0px 1fr}.app-sidebar{width:var(--sidebar-w);height:100vh;position:sticky;top:0;display:flex;flex-direction:column;background:var(--surface-1);border-right:1px solid var(--border);overflow:hidden;transition:width .25s ease,border-color .25s ease}.sidebar-collapsed .app-sidebar{width:0;border-right-color:transparent}.sidebar-toggle-btn{position:fixed;top:50%;left:var(--sidebar-w);transform:translateY(-50%) translate(-50%);z-index:300;width:22px;height:44px;background:var(--surface-1);border:1px solid var(--border);border-radius:0 8px 8px 0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-2);transition:left .25s ease,background .15s,color .15s;box-shadow:2px 0 8px #0000001f}.sidebar-toggle-btn:hover{background:var(--surface-3);color:var(--accent)}.sidebar-collapsed .sidebar-toggle-btn{left:0;transform:translateY(-50%) translate(0);border-radius:0 8px 8px 0}.sidebar-brand{padding:16px 14px;border-bottom:1px solid var(--border);flex-shrink:0;display:flex;align-items:center;gap:10px;min-height:60px}.sidebar-brand img{width:28px;height:28px;flex-shrink:0;object-fit:contain}.sidebar-org{font-size:.76rem;font-weight:700;color:var(--text-1);line-height:1.25;letter-spacing:-.01em}.sidebar-nav{flex:1;overflow-y:auto;padding:6px 8px;display:flex;flex-direction:column;gap:1px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.sidebar-section-label{display:block;padding:14px 8px 4px;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);-webkit-user-select:none;user-select:none}.sidebar-nav-item{display:flex;align-items:center;gap:9px;width:100%;min-height:36px;padding:0 10px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-2);font-size:.84rem;font-weight:600;cursor:pointer;transition:background .11s ease,color .11s ease;text-align:left;white-space:nowrap}.sidebar-nav-item span{overflow:hidden;text-overflow:ellipsis}.sidebar-nav-item:hover{background:#ffffff0d;color:var(--text-1)}.sidebar-nav-item.active{background:var(--accent-dim);color:var(--accent);font-weight:700}.sidebar-nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sidebar-nav-item.sidebar-nav-sub{padding-left:30px;position:relative}.sidebar-nav-item.sidebar-nav-sub:before{content:"";position:absolute;left:18px;top:-2px;height:calc(50% + 2px);width:1px;background:var(--border-med)}.sidebar-nav-item.sidebar-nav-sub:after{content:"";position:absolute;left:18px;top:50%;width:7px;height:1px;background:var(--border-med)}.sidebar-footer{padding:6px 8px 10px;border-top:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;gap:1px}.sidebar-identity{padding:10px 10px 8px;display:flex;flex-direction:column;gap:2px}.sidebar-identity strong{font-size:.82rem;font-weight:700;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-identity small{font-size:.71rem;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-role{display:inline-block;margin-top:3px;font-size:.68rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.06em}.sidebar-role-row{display:flex;align-items:center;gap:8px;margin-top:3px;flex-wrap:wrap}.sidebar-role-row .sidebar-role{margin-top:0}.role-preview-toggle{appearance:none;border:1px solid var(--border-med);background:transparent;color:var(--text-2);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:999px;cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease}.role-preview-toggle:hover{color:var(--text-1);border-color:var(--accent)}.role-preview-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.role-preview-toggle.on{background:var(--warning, #fbbf24);border-color:transparent;color:#0b0d10}.sidebar-signout:hover{background:var(--danger-dim)!important;color:var(--danger)!important}.app-main{min-height:100vh;overflow-x:hidden;padding:clamp(20px,3vw,32px);display:flex;flex-direction:column}html.native .app-main{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}html.native .panel{border:0;border-radius:0;background:none;padding:0}html.native{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}html.native input,html.native textarea,html.native select,html.native [contenteditable=true]{-webkit-user-select:text;user-select:text}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:35;display:flex;align-items:center;justify-content:center;padding-bottom:max(6px,calc(env(safe-area-inset-bottom) - 12px));pointer-events:none}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;border:0;background:none;padding:6px 2px 8px;color:var(--text-2);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .14s ease,transform .12s ease}.bottom-nav-item span:last-child{font-size:.7rem;font-weight:650;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.bottom-nav-item svg{flex-shrink:0}.bottom-nav-item:active{transform:scale(.92)}.bottom-nav-item.active{color:var(--accent)}.bottom-nav-icon{position:relative;display:inline-flex}.bottom-nav-badge{position:absolute;top:-5px;right:-9px;min-width:17px;height:17px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#ef4444;color:#fff;font-size:.62rem;font-weight:700;line-height:1;box-shadow:0 0 0 2px var(--surface-1)}.bottom-nav-menu{position:relative;width:58px;height:58px;display:inline-flex;align-items:center;justify-content:center;border:4px solid var(--bg);border-radius:999px;background:var(--accent);color:var(--on-accent);cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;box-shadow:0 8px 22px -6px var(--accent-glow),0 6px 16px #00000047;transition:transform .14s ease,filter .14s ease}.bottom-nav-menu:active{transform:scale(.9)}.bottom-nav-menu[aria-expanded=true]{filter:brightness(1.12)}.bottom-nav-panic{position:fixed;right:22px;bottom:max(14px,calc(env(safe-area-inset-bottom) - 4px));z-index:36;width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;border:4px solid var(--bg);border-radius:999px;background:#dc2626;color:#fff;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;box-shadow:0 8px 22px -6px #dc262680,0 6px 16px #0000004d;transition:transform .14s ease}.bottom-nav-panic:active{transform:scale(.9)}html.native:has(.bottom-nav) .app-main{padding-bottom:calc(72px + max(6px,env(safe-area-inset-bottom) - 12px))}.app-sheet-backdrop{position:fixed;inset:0;z-index:40;background:#0000006b;opacity:0;pointer-events:none;transition:opacity .24s ease}.app-sheet-backdrop.open{opacity:1;pointer-events:auto}.app-sheet{position:fixed;left:0;right:0;bottom:0;z-index:41;display:flex;flex-direction:column;max-height:86vh;padding:6px 12px calc(16px + env(safe-area-inset-bottom));background:var(--surface-1);border-radius:22px 22px 0 0;box-shadow:0 -14px 44px #0000003d;transform:translateY(101%);transition:transform .3s cubic-bezier(.32,.72,0,1)}.app-sheet.open{transform:translateY(0)}.app-sheet-handle{width:40px;height:5px;flex-shrink:0;margin:6px auto 4px;border-radius:3px;background:var(--border)}.app-sheet-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.sheet-section-label{display:block;margin:14px 6px 8px;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.sheet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding-bottom:12px;border-bottom:1px solid var(--border)}.sheet-grid:last-child{border-bottom:none}.sheet-tile{display:flex;flex-direction:column;align-items:center;gap:7px;padding:10px 2px;border:0;background:none;border-radius:14px;color:var(--text-2);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .12s ease}.sheet-tile:active{transform:scale(.93)}.sheet-tile-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:16px;background:var(--surface-2);transition:background .15s ease,color .15s ease}.sheet-tile.active{color:var(--accent)}.sheet-tile.active .sheet-tile-icon{background:var(--accent-dim);color:var(--accent)}.sheet-tile-label{font-size:.72rem;font-weight:600;line-height:1.15;text-align:center;max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sheet-tile-badge{position:absolute;top:-4px;right:-4px;min-width:17px;height:17px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#ef4444;color:#fff;font-size:.62rem;font-weight:700;line-height:1;box-shadow:0 0 0 2px var(--surface-1)}.panel{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);padding:clamp(18px,3vw,24px)}.panel-title{margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-title h2{margin:0;display:flex;align-items:center;gap:10px;color:var(--text-1);font-size:.98rem;font-weight:700}.panel-help{flex-shrink:0;display:grid;place-items:center;width:32px;height:32px;border-radius:999px;border:1px solid var(--border-med);background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.panel-help:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-dim)}.panel-help:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.panel-note{margin:0 0 14px;font-size:.82rem}.workspace-grid{width:100%;display:grid;grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);gap:16px;align-items:start}.workspace-grid.single-view{grid-template-columns:minmax(0,720px)}.workspace-grid.single-view:has(.dashboard){grid-template-columns:minmax(0,1080px)}.workspace-grid.single-view:has(.report-panel),.workspace-grid.single-view:has(.admin-panel),.workspace-grid.single-view:has(.profile-panel),.workspace-grid.single-view:has(.schedule-panel){grid-template-columns:minmax(0,1fr)}.workspace-grid.single-view .report-panel,.workspace-grid.single-view .admin-panel,.workspace-grid.single-view .profile-panel,.workspace-grid.single-view .schedule-panel{width:100%}form{display:grid;gap:16px}label{display:grid;gap:8px;font-size:.83rem;font-weight:700;color:var(--text-2)}input,select,textarea{width:100%;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-1);outline:none}input,select{min-height:44px;padding:0 14px}textarea{min-height:130px;resize:vertical;padding:12px 14px;line-height:1.6}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}input::placeholder,textarea::placeholder{color:var(--text-3)}select option{background:var(--surface-2);color:var(--text-1)}.inline-form label span,.input-icon{display:grid}.password-field{position:relative;display:block}.password-field input{width:100%;padding-right:46px;border-radius:var(--r-sm)}.password-field button{position:absolute;top:0;right:0;width:44px;height:100%;display:grid;place-items:center;border:0;background:transparent;color:var(--accent)}.inline-form label span{grid-template-columns:1fr auto}.inline-form input{border-radius:var(--r-sm) 0 0 var(--r-sm);min-width:0}.inline-form button{border-left:0;border-radius:0 var(--r-sm) var(--r-sm) 0;white-space:nowrap;padding:0 16px}.input-icon{grid-template-columns:44px 1fr;align-items:center;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--accent);overflow:hidden}.input-icon svg{justify-self:center}.input-icon input{border:0;border-radius:0;min-width:0;background:transparent}.file-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:88px;padding:20px 16px;border:1.5px dashed var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);cursor:pointer;transition:border-color .16s ease,background .16s ease;text-align:center;font-weight:400}.file-drop:hover,.file-drop:focus-within{border-color:var(--accent);background:var(--accent-dim)}.file-drop input[type=file]{position:absolute;inset:0;width:100%;height:100%;min-height:0;opacity:0;cursor:pointer;border:0;padding:0;border-radius:0;background:transparent}.file-drop svg{color:var(--accent);opacity:.75;flex-shrink:0;transition:opacity .16s ease}.file-drop:hover svg,.file-drop:focus-within svg{opacity:1}.file-drop-text{font-size:.83rem;color:var(--text-2);line-height:1.45}.file-drop-text strong{color:var(--accent);font-weight:700}.file-drop.has-file{border-style:solid;border-color:var(--accent);background:var(--accent-dim)}.file-drop.has-file .file-drop-text{color:var(--text-1);font-weight:600;font-size:.81rem;word-break:break-all}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.primary-action{min-height:46px;border:0;border-radius:var(--r-sm);display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;margin-top:4px;background:var(--accent);color:var(--on-accent);letter-spacing:-.01em;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 38%,transparent),0 6px 20px var(--accent-glow);transition:opacity .11s ease,box-shadow .11s ease}.primary-action:hover{opacity:.88;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent),0 10px 28px var(--accent-glow)}.primary-action:disabled{cursor:wait;opacity:.45}.secondary-action{min-height:44px;width:100%;margin-top:16px;border:1px solid var(--border-med);border-radius:var(--r-sm);display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;background:transparent;color:var(--text-2);transition:background .11s ease,color .11s ease}.secondary-action:hover{background:#ffffff0a;color:var(--text-1)}.inline-form button{min-height:44px;border:1px solid var(--border-med);border-radius:0 var(--r-sm) var(--r-sm) 0;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;background:var(--surface-2);color:var(--accent);font-weight:700;transition:background .11s ease}.inline-form button:hover{background:var(--surface-3)}.inline-form button:disabled{cursor:wait;opacity:.5}.form-message,.setup-message{margin:0;padding:10px 14px;border-radius:var(--r-sm);background:#fbbf2414;border:1px solid rgba(251,191,36,.18);color:var(--warning);font-weight:600;font-size:.84rem}.setup-message{margin-bottom:16px}.employee-strip{min-height:60px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);margin-bottom:18px;padding:12px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.employee-strip span{flex-basis:auto;margin-right:auto;color:var(--text-1);font-weight:700;font-size:.88rem}.employee-strip small{display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-weight:600;font-size:.76rem}.employee-strip small svg{flex-shrink:0}.tab-scroll{position:relative;margin-bottom:20px}.tab-scroll:before,.tab-scroll:after{content:"";position:absolute;top:0;bottom:1px;width:40px;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:2}.tab-scroll:before{left:0;background:linear-gradient(to right,var(--surface-1) 25%,transparent)}.tab-scroll:after{right:0;background:linear-gradient(to left,var(--surface-1) 25%,transparent)}.tab-scroll.fade-left:before{opacity:1}.tab-scroll.fade-right:after{opacity:1}html.native .tab-scroll:before{background:linear-gradient(to right,var(--bg) 25%,transparent)}html.native .tab-scroll:after{background:linear-gradient(to left,var(--bg) 25%,transparent)}.admin-tabs{display:flex;flex-wrap:nowrap;gap:4px;border-bottom:1px solid var(--border);padding-bottom:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border:1px solid transparent;border-bottom:none;border-radius:var(--r-sm) var(--r-sm) 0 0;background:transparent;color:var(--text-2);font-size:.83rem;font-weight:600;cursor:pointer;position:relative;bottom:-1px;flex-shrink:0;white-space:nowrap;transition:background .11s ease,color .11s ease}.admin-tab:hover{background:var(--surface-2);color:var(--text-1)}.admin-tab.active{background:var(--surface-1);color:var(--accent);border-color:var(--border);border-bottom-color:var(--surface-1)}.admin-tab-count{background:var(--surface-2);color:var(--text-3);font-size:.72rem;font-weight:700;padding:1px 6px;border-radius:20px;min-width:20px;text-align:center}.admin-tab.active .admin-tab-count{background:var(--accent-dim);color:var(--accent)}.admin-tab-body{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.setup-lists{display:grid;gap:14px;margin-top:18px}.kompetens-overview{margin-top:18px}.ko-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 12px}.ko-head h3{margin:0;font-size:.88rem;font-weight:700;color:var(--text-1)}.ko-search{margin-left:auto;flex:1 1 200px;max-width:320px;min-width:160px;padding:8px 12px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-1);color:var(--text-1);font-size:.85rem}.ko-search:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.ko-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ko-row{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:12px 14px}.ko-row.is-empty{border-style:dashed;background:transparent}.ko-row-head{display:flex;align-items:center;gap:10px}.ko-name{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:.86rem;color:var(--text-1);min-width:0}.ko-name svg{color:var(--accent);flex-shrink:0}.ko-count{margin-left:auto;flex-shrink:0;min-width:24px;height:22px;padding:0 8px;display:inline-grid;place-items:center;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.74rem;font-weight:700;font-variant-numeric:tabular-nums}.ko-row.is-empty .ko-count{background:var(--surface-3);color:var(--text-3)}.ko-holders{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.ko-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 6px 3px 10px;border-radius:999px;border:1px solid var(--border-med);background:var(--surface-1);color:var(--text-2);font-size:.78rem;font-weight:600}.ko-chip-x{display:inline-grid;place-items:center;width:18px;height:18px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--text-3);cursor:pointer;font-size:1rem;line-height:1;transition:background .12s ease,color .12s ease}.ko-chip-x:hover{background:var(--danger-dim, rgba(239, 68, 68, .12));color:var(--danger, #ef4444)}.ko-chip-x:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ko-none{margin:8px 0 0;font-size:.8rem;color:var(--text-3);font-style:italic}.ko-add{margin-top:10px}.mini-list{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:14px}.mini-list h3{margin:0 0 12px;display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(--text-1);font-weight:700}.mini-count{margin-left:auto;min-width:24px;padding:2px 8px;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.72rem;font-weight:800;text-align:center}.mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px}.mini-cell{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:8px 10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-1)}.mini-cell-name{min-width:0;font-size:.78rem;font-weight:700;line-height:1.3;color:var(--accent);overflow-wrap:anywhere}.mini-cell button{flex-shrink:0;width:18px;height:18px;border:0;border-radius:999px;display:grid;place-items:center;padding:0;background:var(--danger-dim);color:var(--danger);font-size:.88rem;line-height:1;font-weight:950;cursor:pointer;transition:background .11s ease,transform .11s ease}.mini-cell button:hover{background:#f8717133}.mini-cell button:active{transform:scale(.9)}.mini-cell button:focus-visible{outline:2px solid var(--danger);outline-offset:2px}.mini-list small,.muted{margin:0;color:var(--text-3);font-weight:500}.search-field{margin-bottom:14px}.report-panel{overflow-x:auto}.report-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.report-count{flex-shrink:0;min-width:30px;padding:4px 10px;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.88rem;font-weight:800;text-align:center}.report-panel .search-field{width:100%}.report-toolbar{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-bottom:14px}.report-toolbar .search-field{flex:1 1 260px;width:auto;margin-bottom:0}.month-field{display:flex;flex-direction:column;gap:6px}.month-field select{padding:11px 12px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-1);font-size:.92rem;min-width:170px}.month-field select:disabled{opacity:.5;cursor:not-allowed}.report-search-note{margin:-6px 0 12px;font-size:.82rem}.report-pager{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:18px}.pager-info{margin-right:auto;color:var(--text-3);font-size:.78rem}.report-pager button{min-width:32px;height:32px;padding:0 8px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-1);font-size:.82rem;font-weight:700;cursor:pointer;transition:background .11s ease,border-color .11s ease}.report-pager button:hover:not(:disabled){background:var(--surface-3);border-color:var(--border-hi)}.report-pager button.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:800}.report-pager button:disabled{opacity:.32;cursor:default}.report-pager button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pager-gap{padding:0 4px;color:var(--text-3);font-weight:800}.contact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:12px;margin-top:6px}.contact-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2)}.contact-open{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:30px;height:30px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface-1);color:var(--accent);cursor:pointer;transition:border-color .11s ease,background .11s ease}.contact-open:hover{border-color:var(--accent);background:var(--accent-dim)}.contact-open:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.contact-head{display:flex;flex-direction:column;gap:5px;padding-right:34px}.contact-head strong{color:var(--text-1);font-size:.9rem;font-weight:700}.contact-position{align-self:flex-start;display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.71rem;font-weight:700}.komp-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:2px 0 4px}.komp-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:999px;border:1px solid var(--border-med);background:var(--surface-2);color:var(--text-2);font-size:.76rem;font-weight:700;cursor:pointer;transition:color .13s ease,border-color .13s ease,background .13s ease}.komp-pill:hover{color:var(--text-1);border-color:var(--border-hi);background:var(--surface-3)}.komp-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.komp-pill.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent, #fff)}.komp-pill.active:hover{background:var(--accent);border-color:var(--accent)}.contact-links{display:flex;flex-direction:column;gap:6px}.contact-links a,.contact-links span{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;color:var(--link);text-decoration:none;word-break:break-all;transition:color .11s ease}.contact-links a:hover{color:var(--link-hover);text-decoration:underline}.contact-links span.muted{color:var(--text-3)}.contact-positions{display:flex;flex-wrap:wrap;gap:5px}.position-editor{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.position-chips{display:flex;flex-wrap:wrap;gap:6px}.mini-pill{display:inline-flex;align-items:center;gap:7px;padding:4px 7px 4px 10px;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.75rem;font-weight:700}.mini-pill button{width:16px;height:16px;border:0;border-radius:999px;display:grid;place-items:center;padding:0;background:var(--danger-dim);color:var(--danger);font-size:.84rem;line-height:1;font-weight:950;cursor:pointer}.mini-pill button:hover{background:#f8717133}.position-add{width:auto;min-height:30px;border:1px solid var(--border-med);border-radius:var(--r-sm);padding:0 10px;background:var(--surface-2);color:var(--accent);font-size:.76rem;font-weight:700}.setting-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.setting-search{display:flex;align-items:center;gap:8px;flex:1 1 220px;min-width:0;padding:0 10px;border:1px solid var(--border-med);border-radius:10px;background:var(--surface-1)}.setting-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.setting-search>svg{color:var(--text-3);flex:none}.setting-search input{flex:1;min-width:0;border:none;background:none;padding:10px 0;color:var(--text-1);outline:none;font-size:.95rem}.setting-search-clear{display:grid;place-items:center;padding:4px;background:none;border:none;color:var(--text-3);cursor:pointer}.setting-add-form{display:flex;gap:8px;flex:1 1 220px;min-width:0}.setting-add-form input{flex:1;min-width:0;min-height:44px;padding:0 14px;font-size:.95rem;border:1px solid var(--border-med);border-radius:10px;background:var(--surface-1);color:var(--text-1)}.setting-add-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.setting-add-form button{flex:none;min-height:44px;padding:0 20px;border:1px solid var(--accent);border-radius:10px;background:var(--accent);color:var(--on-accent, #fff);font-weight:700;font-size:.9rem;white-space:nowrap;cursor:pointer;transition:filter .12s ease}.setting-add-form button:hover{filter:brightness(1.06)}.setting-add-form button:disabled{opacity:.5;cursor:wait}.setting-search{min-height:44px}.setting-hint{margin:0 0 14px;font-size:.82rem}.event-cat-head strong{display:inline-flex;align-items:center;gap:7px}.event-cat-head strong>svg{color:var(--text-3);flex:none}.kompetens-adder{position:relative;display:inline-flex}.kompetens-adder input{width:150px;min-height:28px;padding:4px 12px;border:1px dashed var(--border-med);border-radius:999px;font-size:.74rem;background:var(--surface-1);color:var(--text-1)}.kompetens-adder input:focus{outline:none;border-style:solid;border-color:var(--accent)}.kompetens-adder-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:30;margin:0;padding:4px;list-style:none;min-width:170px;max-height:220px;overflow-y:auto;border:1px solid var(--border-med);border-radius:10px;background:var(--surface-1);box-shadow:0 8px 24px #0000002e}.kompetens-adder-menu li{margin:0}.kompetens-adder-menu button{display:block;width:100%;text-align:left;padding:7px 10px;border:0;border-radius:6px;background:transparent;color:var(--text-1);font-size:.82rem;font-weight:600;cursor:pointer}.kompetens-adder-menu button:hover{background:var(--accent-dim);color:var(--accent)}.field{display:flex;flex-direction:column;gap:8px}.field-label{font-size:.83rem;font-weight:700;color:var(--text-2)}.event-picker{display:flex;flex-direction:column;gap:12px}.event-buttons,.event-children{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.event-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border-med);background:var(--surface-2);color:var(--text-1);font-size:.78rem;font-weight:700;cursor:pointer;transition:transform .11s ease,background .11s ease,border-color .11s ease}.event-btn:hover{border-color:var(--accent);transform:translateY(-1px)}.event-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.event-btn.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:800}.event-btn.folder svg{color:var(--warning)}.event-btn.active svg{color:var(--on-accent)}.event-btn.child{background:var(--surface-3)}[data-theme=light] .event-btn.child.active{background:var(--accent);color:var(--on-accent)}.event-children{padding:12px;border:1px dashed var(--border-med);border-radius:var(--r-md);background:var(--surface-2)}.place-combo{position:relative}.place-combo input{padding-right:40px}.place-combo-caret{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-3);pointer-events:none}.place-combo-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;margin:0;padding:4px;list-style:none;max-height:260px;overflow-y:auto;border:1px solid var(--border-med);border-radius:10px;background:var(--surface-1);box-shadow:0 12px 28px #00000038}.place-combo-menu li{margin:0}.place-combo-menu button{display:block;width:100%;text-align:left;min-height:40px;padding:8px 12px;border:0;border-radius:7px;background:transparent;color:var(--text-1);font-size:.9rem;font-weight:600;cursor:pointer;transition:background .1s ease,color .1s ease}.place-combo-menu button:hover,.place-combo-menu button.is-active{background:var(--accent-dim);color:var(--accent)}.place-combo-empty{padding:10px 12px;color:var(--text-3);font-size:.85rem}.event-children-label{font-weight:700;color:var(--accent);font-size:.78rem;margin-right:4px}.event-hint{color:var(--text-3);font-size:.74rem;margin:0}.selected-events{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);padding:12px;display:flex;flex-direction:column;gap:8px}.selected-events-label{font-size:.7rem;font-weight:800;color:var(--text-3);text-transform:uppercase;letter-spacing:.07em}.selected-events-list{display:flex;flex-wrap:wrap;gap:8px}.event-tree{margin-top:18px;display:flex;flex-direction:column;gap:12px}.event-tree>h3{display:flex;align-items:center;gap:8px;margin:0;font-size:.9rem;color:var(--text-1);font-weight:700}.event-tree-list{display:grid;gap:10px}.event-cat{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:12px}.event-cat-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.event-cat-head strong{color:var(--text-1);font-size:.86rem;font-weight:700}.event-cat-head button{width:22px;height:22px;border:1px solid var(--danger-dim);border-radius:999px;background:transparent;color:var(--danger);font-weight:950;cursor:pointer;display:grid;place-items:center;padding:0;transition:background .11s ease}.event-cat-head button:hover{background:var(--danger-dim)}.event-cat-children{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.child-adder{display:inline-flex;align-items:center;gap:4px}.child-adder input{width:130px;min-height:28px;border:1px dashed var(--border-med);border-radius:999px;padding:4px 12px;font-size:.74rem;background:var(--surface-1);color:var(--text-1)}.child-adder button{width:26px;height:26px;border:1px solid var(--border-med);border-radius:999px;background:var(--surface-1);color:var(--accent);font-size:1rem;font-weight:950;cursor:pointer;display:grid;place-items:center;padding:0;transition:border-color .11s ease}.child-adder button:hover{border-color:var(--accent)}.report-list{display:grid;grid-template-columns:minmax(0,1fr);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;min-width:0;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-1)}.report-row,.report-card{display:grid;grid-template-columns:116px minmax(130px,1fr) 170px 90px minmax(170px,1.15fr) minmax(180px,1.1fr) 138px;align-items:center;gap:16px;min-height:64px;min-width:1100px;padding:0 20px;border-bottom:1px solid var(--border)}.report-head{min-height:50px;background:var(--surface-2);color:var(--text-3);font-size:.71rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.report-head span{display:block;text-align:left}.report-card{color:var(--text-1);background:var(--surface-1);transition:background .11s ease}.report-card:last-child{border-bottom:0}.report-card:hover{background:var(--surface-2)}.report-id{border:0;background:transparent;padding:0;color:var(--link);font-weight:700;font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-size:.8rem;text-align:left;text-decoration:underline;cursor:pointer;transition:color .11s ease}.report-id:hover{color:var(--link-hover)}.report-event{color:var(--link);font-size:.84rem}.report-actions{display:flex;gap:6px;align-items:center}.actions-group{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.report-actions button{width:30px;min-height:28px;border:1px solid var(--border-med);border-radius:var(--r-sm);display:grid;place-items:center;padding:0;background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:background .11s ease,color .11s ease}.report-actions button:hover{background:var(--surface-3);color:var(--text-1)}.report-actions button:first-child,.report-actions .btn-edit{border-color:#38bdf840;background:var(--accent-dim);color:var(--accent)}.report-actions .btn-edit:hover{background:#38bdf833;color:var(--accent)}.report-actions .btn-delete{border-color:var(--danger-dim);background:#f871710d;color:var(--danger)}.report-actions .btn-delete:hover{background:var(--danger-dim);color:var(--danger)}.report-actions .btn-delete-end{margin-left:auto}.report-actions .btn-pdf{background:var(--surface-2)}.report-actions .btn-pdf:hover{background:var(--surface-3)}.modal-backdrop{position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:18px;background:#000000b8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.report-modal{width:min(920px,100%);max-height:min(86vh,860px);overflow:auto;border-radius:var(--r-md);border:1px solid var(--border-med);background:var(--surface-1);box-shadow:0 0 0 1px var(--border),0 40px 100px #000000a6;padding:clamp(18px,3vw,26px)}.report-modal header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.report-modal header p{margin:0 0 4px;color:var(--text-3);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.report-modal h2{margin:0;color:var(--text-1);font-family:ui-monospace,Cascadia Code,Menlo,monospace}.report-modal header button{min-height:34px;border:1px solid var(--border-med);border-radius:var(--r-sm);padding:0 14px;background:var(--surface-2);color:var(--text-2);font-weight:700;cursor:pointer;transition:background .11s ease,color .11s ease}.report-modal header button:hover{background:var(--surface-3);color:var(--text-1)}.modal-head-actions{display:flex;align-items:center;gap:8px}.modal-head-actions button{display:inline-flex;align-items:center;gap:7px}.sched-preview-note{margin:0 0 14px;font-size:.8rem;color:var(--text-3)}.report-modal header button.header-save{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.report-modal header button.header-save:hover{background:var(--accent);color:var(--on-accent)}.report-modal header button.header-save:disabled{opacity:.55;cursor:not-allowed}.modal-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn-edit-inline{display:inline-flex;align-items:center;gap:6px;min-height:34px;border:1px solid rgba(56,189,248,.3);border-radius:var(--r-sm);padding:0 14px;background:var(--accent-dim);color:var(--accent);font-weight:700;font-size:.82rem;cursor:pointer;transition:background .11s ease}.btn-edit-inline:hover{background:#38bdf833}.btn-pdf-inline{display:inline-flex;align-items:center;gap:6px;min-height:34px;border:1px solid rgba(52,211,153,.28);border-radius:var(--r-sm);padding:0 14px;background:#34d39917;color:var(--success);font-weight:700;font-size:.82rem;cursor:pointer;transition:background .11s ease}.btn-pdf-inline:hover{background:#34d3992e}.report-modal form{display:flex;flex-direction:column;gap:14px}.report-modal form label{display:flex;flex-direction:column;gap:6px;font-size:.78rem;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.05em}.report-modal form label select,.report-modal form label textarea,.report-modal form label input{font-size:.88rem;font-weight:400;text-transform:none;letter-spacing:0;color:var(--text-1)}.report-modal form textarea{min-height:90px;resize:vertical}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.modal-actions .secondary-action,.modal-actions .primary-action{margin-top:0}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.detail-grid span,.detail-description{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:12px;display:grid;gap:5px}.detail-grid b,.detail-description b{color:var(--text-3);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.detail-description{margin-top:12px}.detail-description p{margin:0;line-height:1.65;color:var(--text-1)}.file-preview{margin-top:14px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:12px}.file-preview img{width:100%;max-height:520px;object-fit:contain;display:block;border-radius:4px}.file-preview a{color:var(--accent);font-weight:700}.place-picker,.user-list{display:grid;gap:10px}.place-picker{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:12px}.place-picker strong{color:var(--text-1)}.place-picker label{min-height:36px;display:flex;align-items:center;gap:10px;border-radius:var(--r-sm);background:var(--surface-1);padding:0 10px}.place-picker input{width:18px;min-height:18px;accent-color:var(--accent)}.user-list{margin-top:18px}.user-card{position:relative;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:14px;display:grid;gap:12px}.history-btn{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);border-radius:999px;padding:5px 11px;background:var(--surface-1);color:var(--text-2);font-size:.72rem;font-weight:700;cursor:pointer;transition:color .11s ease,border-color .11s ease,background .11s ease}.history-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-dim)}.history-body{max-height:60vh;overflow-y:auto}.history-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.history-line{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:10px 12px}.history-tag{flex-shrink:0;border-radius:999px;padding:3px 10px;font-size:.7rem;font-weight:700}.history-tag.assigned{background:color-mix(in srgb,var(--success) 18%,transparent);color:var(--success)}.history-tag.removed{background:var(--danger-dim);color:var(--danger)}.history-info{display:grid;gap:2px}.history-info strong{font-size:.84rem;font-weight:700;color:var(--text-1)}.history-info small{font-size:.74rem;color:var(--text-2);font-family:var(--mono, monospace)}.user-card strong,.user-card small{display:block}.user-card strong{color:var(--text-1);font-size:.88rem;font-weight:700}.user-card small{margin-top:4px;color:var(--text-2);font-weight:500;font-size:.78rem}.user-card footer{display:flex;flex-wrap:wrap;gap:8px}.user-card footer span,.role-select,.user-card footer button{border-radius:999px;padding:5px 10px;background:var(--surface-1);color:var(--accent);font-size:.74rem;font-weight:700;text-transform:capitalize}.role-select{width:auto;min-height:auto;border:1px solid var(--border-med);outline:none}.user-card footer button{border:1px solid var(--danger-dim);color:var(--danger);background:transparent;transition:background .11s ease}.user-card footer button:hover{background:var(--danger-dim)}.place-access-editor{padding:12px 16px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.place-access-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.break-toggle{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;font-size:.88rem;font-weight:700;color:var(--text-1);cursor:pointer}.break-toggle input[type=checkbox]{width:17px;height:17px;margin:0;flex-shrink:0;accent-color:var(--accent);cursor:pointer}.break-duration-hint{padding:8px 12px;border-radius:var(--r-sm);background:var(--accent-dim);border:1px solid rgba(56,189,248,.2);color:var(--accent);font-size:.83rem;font-weight:600;margin:0}[data-theme=light] .break-duration-hint{background:#0077b614;border-color:#0077b62e}.tr-optional{font-size:.78rem;font-weight:500;color:var(--text-3);margin-left:4px}.tr-mode-toggle{display:flex;gap:4px;padding:4px;margin-bottom:16px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md)}.tr-mode-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-2);font-size:.86rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.tr-mode-btn:hover{color:var(--text-1)}.tr-mode-btn.active{background:var(--surface-1);color:var(--accent);box-shadow:0 1px 3px #0000001f}.tr-mode-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.tr-list{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch;min-width:0}.tr-head,.tr-row{display:grid;grid-template-columns:110px minmax(150px,300px) minmax(80px,1fr) minmax(80px,1fr) minmax(80px,1fr) minmax(90px,1fr) 128px;align-items:center;min-width:720px}.tr-admin .tr-head,.tr-admin .tr-row{grid-template-columns:minmax(170px,1.4fr) 110px minmax(150px,1fr) 72px 72px 104px 96px 128px;min-width:900px}.tr-admin.tr-salary .tr-head,.tr-admin.tr-salary .tr-row{grid-template-columns:minmax(140px,1fr) 100px minmax(130px,1fr) 62px 62px 108px 84px 84px 168px 128px;min-width:1100px}.tr-num{text-align:right}.tr-amount{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25}.tr-ob-note{color:var(--text-2);font-size:.72rem;white-space:nowrap}.tr-set-rate{padding:3px 10px;border:1px dashed var(--accent);border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.74rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .12s,color .12s,border-color .12s}.tr-set-rate:hover{background:var(--accent);color:var(--on-accent, #fff);border-style:solid}.quick-rate-modal{max-width:420px}.schedule-copy-modal{max-width:460px}.tr-head span:last-child{text-align:right}.tr-row .report-actions{justify-content:flex-end}.tr-head{padding:0 12px;background:var(--surface-2);border-bottom:1px solid var(--border)}.tr-head span{padding:9px 6px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);text-align:left}.tr-row{padding:0 12px;min-height:56px;border-bottom:1px solid var(--border);transition:background 90ms ease}.tr-row:last-child{border-bottom:none}.tr-row:hover{background:var(--surface-2)}.tr-row span{padding:10px 6px;font-size:.83rem;color:var(--text-1)}.tr-employee{font-weight:600;color:var(--text-1);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tr-duration{color:var(--accent);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.tr-row span[data-label=Rast],.tr-row span[data-label=Start],.tr-row span[data-label=Slut]{white-space:nowrap;font-variant-numeric:tabular-nums}.mobile-header{display:none;align-items:center;justify-content:space-between;padding:0 14px 0 16px;padding-top:env(safe-area-inset-top);padding-left:max(16px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));min-height:calc(54px + env(safe-area-inset-top));background:var(--surface-1);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:30}.mobile-brand{display:flex;align-items:center;gap:10px;border:0;background:none;padding:0;cursor:pointer;color:inherit;font:inherit;-webkit-tap-highlight-color:transparent}.mobile-brand:active{opacity:.7}.mobile-brand img{width:26px;height:26px;object-fit:contain}.hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:38px;height:38px;padding:0;border:0;border-radius:var(--r-sm);background:transparent;cursor:pointer;transition:background .11s ease}.hamburger:hover{background:#ffffff12}[data-theme=light] .hamburger:hover{background:#0000000f}.hamburger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hamburger-line{display:block;width:20px;height:2px;background:var(--text-1);border-radius:2px;transform-origin:center;transition:transform .28s cubic-bezier(.4,0,.2,1),opacity .2s ease,width .26s cubic-bezier(.4,0,.2,1)}.hamburger.open .hamburger-line:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger.open .hamburger-line:nth-child(2){opacity:0;width:0}.hamburger.open .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.sidebar-backdrop{position:fixed;inset:0;z-index:39;background:#0000008c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);transition:opacity .3s ease}@media(max-width:900px){.sidebar-toggle-btn{display:none}.app-layout{grid-template-columns:1fr}.mobile-header{display:flex}.sidebar-brand .notif-bell{display:none}.hamburger{display:flex}.app-sidebar{position:fixed;top:0;right:0;bottom:0;width:min(300px,82vw);height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);z-index:40;transform:translate(110%);transition:transform .32s cubic-bezier(.4,0,.2,1);border-right:0;border-left:1px solid var(--border-med);flex-direction:column;flex-wrap:nowrap;align-items:stretch;box-shadow:-20px 0 60px #00000073}.app-sidebar.open{transform:translate(0)}.sidebar-brand{padding:16px 14px;border-bottom:1px solid var(--border);border-right:0}.sidebar-nav{flex:1;flex-direction:column;flex-wrap:nowrap;overflow-y:auto;overflow-x:hidden;padding:6px 8px}.sidebar-section-label{display:block}.sidebar-footer{border-top:1px solid var(--border);border-left:0;flex-direction:column;align-items:stretch;padding:6px 8px 14px}.sidebar-identity{display:flex}.app-main{padding:clamp(14px,4vw,22px)}}html.native .sidebar-toggle-btn{display:none}html.native .app-layout{grid-template-columns:1fr}html.native .mobile-header{display:flex}html.native .sidebar-brand .notif-bell{display:none}html.native .hamburger{display:flex}html.native .app-sidebar{position:fixed;top:0;right:0;bottom:0;width:min(300px,82vw);height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);z-index:40;transform:translate(110%);transition:transform .32s cubic-bezier(.4,0,.2,1);border-right:0;border-left:1px solid var(--border-med);flex-direction:column;flex-wrap:nowrap;align-items:stretch;box-shadow:-20px 0 60px #00000073}html.native .app-sidebar.open{transform:translate(0)}html.native .sidebar-brand{padding:16px 14px;border-bottom:1px solid var(--border);border-right:0}html.native .sidebar-nav{flex:1;flex-direction:column;flex-wrap:nowrap;overflow-y:auto;overflow-x:hidden;padding:6px 8px}html.native .sidebar-section-label{display:block}html.native .sidebar-footer{border-top:1px solid var(--border);border-left:0;flex-direction:column;align-items:stretch;padding:6px 8px 14px}html.native .sidebar-identity{display:flex}@media(max-width:760px){.form-row{grid-template-columns:1fr}.report-list{min-width:0;border:0;border-radius:0;background:transparent;gap:10px;overflow:visible}.report-head{display:none}.report-card{grid-template-columns:1fr;gap:8px;min-height:0;min-width:0;border:1px solid var(--border);border-radius:var(--r-sm);padding:12px;background:var(--surface-1)}.report-card>span,.report-card .report-actions{display:grid;grid-template-columns:150px 1fr;gap:10px;align-items:center}.report-card>span:before,.report-card .report-actions:before{content:attr(data-label);color:var(--text-3);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.actions-group{flex-wrap:wrap;row-gap:6px}.detail-grid{grid-template-columns:1fr}.modal-backdrop{padding:0;place-items:stretch}.report-modal,.schedule-modal{width:100%;max-width:100%;max-height:100vh;max-height:100dvh;border-radius:0;border:0;padding:16px 16px 0}.report-modal header{position:sticky;top:0;z-index:2;gap:10px;flex-wrap:wrap;margin:-16px -16px 14px;padding:calc(12px + env(safe-area-inset-top)) 16px 12px;background:var(--surface-1);border-bottom:1px solid var(--border)}.report-modal header>div:first-child{min-width:0;flex:1 1 auto}.modal-header-actions{flex-wrap:wrap;justify-content:flex-end}.report-modal header h2{font-size:1.05rem;line-height:1.2;word-break:break-word}.report-modal header p{font-size:.66rem}.report-modal header button,.modal-header-actions{flex-shrink:0}.modal-actions{position:sticky;bottom:0;margin:14px -16px 0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--surface-1);border-top:1px solid var(--border)}}@media(max-width:460px){.auth-page{align-items:start;padding-top:10vh}.auth-page.auth-loading{align-items:center;padding-top:clamp(18px,4vw,40px)}.login-panel,.panel{padding:20px}}html.native .auth-page{align-items:center;padding-top:clamp(18px,4vw,40px)}.login-brand{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:30px}.login-brand-icon{height:60px;width:auto;max-width:160px;object-fit:contain}.login-brand-name{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;color:var(--text-1)}.ob-settings{display:grid;gap:20px}.ob-settings>.muted{margin:0}.ob-table{display:grid;grid-template-columns:1fr 140px;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}.ob-col-head{background:var(--surface-2);padding:9px 16px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:700;border-bottom:1px solid var(--border)}.ob-col-head:last-of-type{border-left:1px solid var(--border)}.ob-row-label{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;font-size:14px}.ob-row-input{padding:8px 12px;border-bottom:1px solid var(--border);border-left:1px solid var(--border);display:flex;align-items:center}.ob-row-label:nth-last-child(2),.ob-row-input:last-child{border-bottom:none}.ob-row-input input{width:100%;text-align:right;border:1px solid var(--border-med);border-radius:var(--r-sm);padding:6px 10px;background:var(--surface-2);color:var(--text-1);font-size:14px}.rate-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.user-card-extras{display:flex;align-items:center;gap:14px;padding:10px 0 2px;flex-wrap:wrap}.ob-checkbox{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.ob-checkbox input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.btn-pay{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:600;border-radius:var(--r-sm);border:1px solid var(--accent);color:var(--accent);background:var(--accent-dim);cursor:pointer;transition:background .15s,color .15s}.btn-pay:hover{background:var(--accent);color:var(--on-accent)}.salary-type-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;border-radius:999px;color:var(--accent);background:var(--accent-dim);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);width:fit-content}.tr-row--weekend{background:#fbbf2412}.tr-row--holiday{background:#f871711c}.tr-plats-cell{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.tr-plats-cell>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tr-start-cell{white-space:nowrap;font-variant-numeric:tabular-nums}.holiday-badge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.02em;background:var(--danger-dim);color:var(--danger);border-radius:3px;padding:1px 5px;white-space:nowrap;flex-shrink:0}.extra-work-badge{display:inline-block;margin-left:6px;font-size:9px;font-weight:700;letter-spacing:.02em;background:var(--accent-dim);color:var(--accent);border-radius:3px;padding:1px 5px;white-space:nowrap;flex-shrink:0}.tr-export-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.tr-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}.month-select{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2)}.month-select svg{color:var(--accent);flex-shrink:0}.month-select select{border:0;background:transparent;color:var(--text-1);font-size:.84rem;font-weight:600;cursor:pointer;outline:none;text-transform:capitalize}.month-select select option{background:var(--surface-1);color:var(--text-1);text-transform:capitalize}.employee-select select,.employee-select select option{text-transform:none}.tr-filters,.tr-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tr-pagination{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:14px;flex-wrap:wrap}.tr-pagination-info{color:var(--text-2);font-size:.8rem;font-weight:600}.tr-pagination-controls{display:inline-flex;align-items:center;gap:8px}.tr-pagination-controls button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);color:var(--accent);cursor:pointer;transition:border-color .11s ease,background .11s ease,color .11s ease}.tr-pagination-controls button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-dim)}.tr-pagination-controls button:disabled{opacity:.4;cursor:not-allowed}.tr-pagination-controls button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tr-pagination-page{color:var(--text-1);font-size:.82rem;font-weight:600;min-width:92px;text-align:center}.btn-export-secondary{border-color:var(--border-med);color:var(--text-2);background:var(--surface-2)}.btn-export-secondary:hover:not(:disabled){background:var(--surface-1);color:var(--text-1)}.btn-export-excel{display:inline-flex;align-items:center;gap:7px;padding:7px 16px;font-size:13px;font-weight:600;border-radius:var(--r-sm);border:1px solid var(--success);color:var(--success);background:#34d39914;cursor:pointer;transition:background .15s,color .15s}.btn-export-excel:hover:not(:disabled){background:var(--success);color:#0b0d10}.btn-export-excel:disabled{opacity:.45;cursor:not-allowed}.btn-fortnox-send{display:inline-flex;align-items:center;gap:7px;padding:7px 16px;font-size:13px;font-weight:600;border-radius:var(--r-sm);border:1px solid var(--accent);color:var(--accent);background:var(--accent-dim);cursor:pointer;transition:background .15s,color .15s}.btn-fortnox-send:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.btn-fortnox-send:disabled{opacity:.45;cursor:not-allowed}.fortnox-send-result{font-size:.82rem;color:var(--text-2);align-self:center}.fortnox-send-modal{max-width:720px;width:100%}.fortnox-send-body{max-height:56vh;overflow:auto;margin:4px 0 8px}.fortnox-send-table{width:100%;border-collapse:collapse;font-size:.84rem}.fortnox-send-table th,.fortnox-send-table td{padding:7px 10px;border-bottom:1px solid var(--border);text-align:left}.fortnox-send-table th{color:var(--text-2);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.fortnox-send-table .num{text-align:right;white-space:nowrap}.fortnox-send-table tfoot td{border-top:2px solid var(--border);border-bottom:none;padding-top:10px}.fortnox-send-table tr.blocked{opacity:.6}.fortnox-blocked-reason{color:var(--danger);font-size:.78rem}.profile-section-divider{display:flex;align-items:center;gap:8px;margin:22px 0 4px;padding-top:18px;border-top:1px solid var(--border);font-size:.92rem;font-weight:700;color:var(--text-1)}.profile-section-divider svg{color:var(--accent)}.salary-tab{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.salary-summary{display:flex;gap:12px;flex-wrap:wrap}.salary-card{flex:1;min-width:110px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:14px 18px;display:flex;flex-direction:column;gap:4px}.salary-card.ob{border-color:var(--warning)}.salary-card.grand{border-color:var(--accent)}.salary-card span{font-size:12px;color:var(--text-2)}.salary-card strong{font-size:22px;font-weight:700;color:var(--text-1)}.salary-card.grand strong{color:var(--accent)}.salary-card.ob strong{color:var(--warning)}.salary-list{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch;min-width:0}.salary-head,.salary-row{display:grid;grid-template-columns:110px minmax(140px,280px) minmax(90px,1fr) minmax(100px,1fr) minmax(100px,1fr) minmax(100px,1fr);padding:10px 16px;align-items:center;gap:8px;min-width:620px}.salary-head.with-ob,.salary-row.with-ob{grid-template-columns:110px minmax(140px,280px) minmax(80px,1fr) minmax(90px,1fr) minmax(90px,1fr) minmax(70px,.8fr) minmax(90px,1fr);min-width:710px}.salary-head{background:var(--surface-2);border-bottom:1px solid var(--border);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:700}.salary-row{border-bottom:1px solid var(--border);font-size:13px}.salary-row:last-child{border-bottom:none}.salary-total-cell{font-weight:700;color:var(--accent)}.salary-ob-cell{color:var(--warning);font-weight:600}.dashboard{display:flex;flex-direction:column;gap:20px}.dash-hero{display:flex;flex-direction:column;gap:8px;padding:18px 22px;border:1px solid var(--border);border-radius:var(--r-lg);background:radial-gradient(120% 140% at 0% 0%,var(--accent-dim) 0%,transparent 55%),var(--surface-1)}.dash-hero-top{display:flex;align-items:center;justify-content:space-between;gap:10px 12px;flex-wrap:wrap;min-width:0}.dash-eyebrow{margin:0;font-size:.74rem;font-weight:700;text-transform:capitalize;color:var(--text-3);letter-spacing:.02em}.dash-hero h1{margin:0;font-size:clamp(1.4rem,3vw,1.95rem);font-weight:800;letter-spacing:-.02em;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-sub{margin:0;color:var(--text-2);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-hero-badge{display:inline-flex;flex-direction:row;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;flex-shrink:0}.dash-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media(max-width:760px){.dash-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.dash-stat{display:flex;flex-direction:column;gap:10px;padding:15px 16px 13px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);box-shadow:var(--shadow-sm);transition:border-color .14s ease,transform .14s ease,box-shadow .14s ease}.dash-stat:hover{border-color:var(--border-hi);transform:translateY(-2px);box-shadow:var(--shadow-md)}.dash-stat-head{display:flex;align-items:center;gap:10px}.dash-stat-chip{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:9px;background:var(--accent-dim);color:var(--accent)}.dash-stat-head span{font-size:.75rem;font-weight:600;color:var(--text-2);line-height:1.25}.dash-stat-figure{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.dash-stat strong{font-size:1.7rem;font-weight:800;letter-spacing:-.03em;color:var(--text-1);line-height:1;font-variant-numeric:tabular-nums}.dash-delta{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:6px;font-size:.72rem;font-weight:800;white-space:nowrap}.dash-delta svg{flex-shrink:0}.dash-delta.up{color:var(--success);background:color-mix(in srgb,var(--success) 14%,transparent)}.dash-delta.down{color:var(--danger);background:var(--danger-dim)}.dash-delta.flat{color:var(--text-3);background:var(--surface-2)}.dash-stat-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto}.dash-stat small{font-size:.72rem;color:var(--text-3);font-weight:600}.dash-spark{flex-shrink:0;width:78px;height:30px;overflow:visible}.dash-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.dash-card{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);text-align:left;transition:transform .13s ease,border-color .13s ease,background .13s ease}.dash-card:hover{transform:translateY(-2px);border-color:var(--border-hi);background:var(--surface-2)}.dash-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dash-card-icon{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;border-radius:var(--r-md);background:var(--accent-dim);color:var(--accent)}.dash-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.dash-card-text strong{font-size:.96rem;font-weight:700;color:var(--text-1)}.dash-card-text small{font-size:.78rem;color:var(--text-2)}.dash-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.dash-panel{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);overflow:hidden}.dash-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 18px;border-bottom:1px solid var(--border)}.dash-panel-head h2{display:flex;align-items:center;gap:8px;margin:0;font-size:.92rem;font-weight:700;color:var(--text-1)}.dash-panel-head h2 svg{color:var(--accent)}.dash-panel-head button{border:0;background:transparent;color:var(--accent);font-size:.8rem;font-weight:700;padding:4px 8px;border-radius:var(--r-sm)}.dash-panel-head button:hover{background:var(--accent-dim)}.dash-list{list-style:none;margin:0;padding:6px;display:flex;flex-direction:column;gap:2px}.dash-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:0;border-radius:var(--r-sm);background:transparent;text-align:left;transition:background .11s ease}.dash-row:hover{background:var(--surface-2)}.dash-row-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.dash-row-icon{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:10px;background:var(--accent-dim);color:var(--accent)}.dash-row-icon.sched{background:color-mix(in srgb,#16a34a 13%,transparent);color:#16a34a}.dash-row-main strong{font-size:.86rem;font-weight:600;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.dash-row-main small{font-size:.76rem;color:var(--text-2)}.dash-row-meta{font-size:.76rem;color:var(--text-3);font-weight:600;white-space:nowrap;flex-shrink:0}.dash-empty{padding:24px 18px;margin:0;color:var(--text-3);font-size:.86rem;text-align:center}.dash-section-label{margin:2px 2px -8px;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--text-3)}.dash-hero-side{display:flex;flex-direction:row;align-items:center;gap:8px;flex-shrink:0}.dash-onduty-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:color-mix(in srgb,#16a34a 12%,var(--surface-2));border:1px solid color-mix(in srgb,#16a34a 34%,transparent);color:#16a34a;font-weight:800;font-size:.8rem;white-space:nowrap}.dash-onduty-pill svg{flex-shrink:0}.dash-onduty-pill small{display:block;font-weight:600;font-size:.68rem;color:color-mix(in srgb,#16a34a 74%,var(--text-2))}.dash-glance{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px 0;margin-top:4px;padding-top:14px;border-top:1px solid var(--border)}.dash-glance-item{display:flex;align-items:center;gap:10px;padding-right:20px;margin-right:20px;border-right:1px solid var(--border)}.dash-glance-item:last-child{border-right:0;margin-right:0;padding-right:0}.dash-glance-ic{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:9px}.dash-glance-ic.ok{background:var(--accent-dim);color:var(--accent)}.dash-glance-ic.sched{background:color-mix(in srgb,var(--warning) 15%,transparent);color:var(--warning)}.dash-glance-ic.warn{background:var(--danger-dim);color:var(--danger)}.dash-glance-txt{display:flex;flex-direction:column;line-height:1.1}.dash-glance-txt b{font-size:1.15rem;font-weight:800;letter-spacing:-.02em;color:var(--text-1);font-variant-numeric:tabular-nums}.dash-glance-txt span{font-size:.74rem;font-weight:600;color:var(--text-2)}@media(max-width:560px){.dash-glance-item{border-right:0;margin-right:16px;padding-right:0}}.dash-quick-wrap{display:flex;flex-direction:column;gap:10px}.dash-quick{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.dash-quick::-webkit-scrollbar{height:6px}.dash-quick::-webkit-scrollbar-thumb{background:var(--border-med);border-radius:999px}.dash-quick-item{flex:0 0 auto;width:92px;display:flex;flex-direction:column;align-items:center;gap:9px;padding:14px 8px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);scroll-snap-align:start;transition:transform .13s ease,border-color .13s ease,background .13s ease}.dash-quick-item:hover{transform:translateY(-2px);border-color:var(--border-hi);background:var(--surface-2)}.dash-quick-item:active{transform:translateY(0) scale(.97)}.dash-quick-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dash-quick-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--accent-dim);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent)}.dash-quick-label{font-size:.76rem;font-weight:700;color:var(--text-1);text-align:center;line-height:1.15}@media(min-width:761px){.dash-quick{flex-wrap:wrap;overflow:visible}.dash-quick-item{width:108px}}@media(max-width:560px){.dash-hero{padding:16px 18px}.dash-hero-badge{font-size:.58rem;padding:6px 10px}.dash-hero-badge svg{width:14px;height:14px}}.schedule-group{margin-top:18px}.schedule-group:first-of-type{margin-top:8px}.schedule-group-title{margin:0 0 10px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.schedule-card{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);padding:14px 16px;margin-bottom:12px}.schedule-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.schedule-card-head strong{display:block;font-size:.98rem;color:var(--text-1)}.schedule-card-head small{display:block;margin-top:2px;font-size:.78rem;color:var(--text-2)}.schedule-group-count{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--surface-2);color:var(--text-2);font-size:.68rem;font-weight:800;letter-spacing:0}.sched-blurbs{display:flex;flex-wrap:wrap;gap:8px}.sched-blurb{display:inline-flex;align-items:center;gap:12px;text-align:left;padding:10px 12px 10px 14px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .12s ease}.sched-blurb:hover{border-color:var(--border-med);background:var(--surface-2)}.sched-blurb:active{transform:translateY(1px)}.sched-blurb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sched-blurb-main{display:flex;flex-direction:column;gap:2px;min-width:0}.sched-blurb-main strong{font-size:.92rem;color:var(--text-1);overflow:hidden;text-overflow:ellipsis}.sched-blurb-sub{font-size:.78rem;color:var(--text-2)}.sched-blurb-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.sched-blurb-arrow{color:var(--text-3)}.sched-blurb:hover .sched-blurb-arrow{color:var(--text-1)}.sched-chip{font-size:.72rem;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--surface-2);color:var(--text-2);white-space:nowrap}.sched-chip.open{background:var(--accent-dim);color:var(--accent)}.schedule-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.sched-back-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 9px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .11s ease,color .11s ease}.sched-back-btn:hover{background:var(--surface-3);color:var(--text-1)}.sched-back-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.schedule-detail-title{margin-bottom:12px}.schedule-detail-cat{display:block;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:2px}.schedule-detail-title strong{font-size:1.05rem;color:var(--text-1)}.schedule-detail-date{display:block;margin-top:3px;font-size:.82rem;color:var(--text-2)}.sched-status{flex-shrink:0;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:999px;border:1px solid var(--border-med);color:var(--text-2);background:var(--surface-2)}.sched-status.published{color:var(--success);border-color:var(--success);background:#34d39914}.sched-status.archived{color:var(--text-3)}.cat-adminonly{margin-top:10px;font-size:.86rem}.cat-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.cat-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-md)}.cat-name{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--text-1)}.cat-admin-badge{font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:var(--accent-dim);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent)}.cat-row-actions{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}.schedule-card-badges{display:flex;align-items:center;gap:8px;flex-shrink:0}.sched-open-badge{flex-shrink:0;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:999px;border:1px solid var(--warning, #f59e0b);color:var(--warning, #f59e0b);background:color-mix(in srgb,var(--warning, #f59e0b) 12%,transparent)}.schedule-card-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.schedule-card-actions button{display:inline-flex;align-items:center;gap:5px;padding:3px 12px;line-height:1;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);font-size:.78rem;font-weight:600;cursor:pointer;transition:background .11s ease,color .11s ease}.schedule-card-actions button svg{width:14px;height:14px}.schedule-card-actions button:hover{background:var(--surface-3);color:var(--text-1)}.schedule-card-actions button.danger{border-color:var(--danger-dim);color:var(--danger);background:#f871710d}.schedule-card-actions button.danger:hover{background:var(--danger-dim)}.sched-move{display:inline-flex;align-items:center;gap:5px;padding:3px 12px;line-height:1;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);font-size:.78rem;font-weight:600;cursor:pointer}.sched-move svg{width:14px;height:14px}.sched-move:hover{background:var(--surface-3);color:var(--text-1)}.sched-move select{appearance:none;-webkit-appearance:none;min-height:0;width:auto;height:auto;border:0;color:inherit;font:inherit;line-height:1;font-weight:600;cursor:pointer;outline:none;max-width:150px;padding:0 16px 0 0;background:transparent url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>") no-repeat right center}.schedule-admin-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.schedule-admin-bar .primary-action{width:auto}.sched-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--r-sm)}.sched-table{width:100%;min-width:560px;border-collapse:collapse;font-size:.84rem}.sched-table th{text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:800;padding:9px 12px;background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap}.sched-table td{padding:10px 12px;border-bottom:1px solid var(--border);color:var(--text-1);white-space:nowrap;vertical-align:middle}.sched-table tr:last-child td{border-bottom:0}.sched-table td.muted{color:var(--text-3)}.sched-divider-tr td{padding:6px 12px;background:var(--surface-2)}.sched-divider-label{display:flex;align-items:center;gap:12px;justify-content:center;color:var(--accent);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.sched-divider-label:before,.sched-divider-label:after{content:"";flex:1;height:1px;background:var(--border-med)}.sched-divider-blank{display:block;height:10px}.schedule-row-editor.is-divider{background:var(--surface-3)}.sched-divider-field{grid-column:2 / -2;min-width:0}.sched-divider-input{width:100%;min-width:0;text-align:center;border:1px dashed var(--border-med);border-radius:var(--r-sm);background:var(--surface-1);color:var(--text-1);padding:8px 12px;font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.sched-divider-input::placeholder{text-transform:none;letter-spacing:0;font-weight:400;color:var(--text-3)}.sched-divider-input:focus{outline:none;border-color:var(--accent);border-style:solid}.sched-pill{display:inline-block;font-size:.74rem;font-weight:700;padding:3px 10px;border-radius:999px}.sched-pill.assigned{background:var(--accent-dim);color:var(--accent)}.sched-pill.taken{background:var(--surface-2);color:var(--text-2)}.sched-action{display:inline-flex;align-items:center;gap:8px}.sched-btn{border:1px solid var(--border-med);border-radius:var(--r-sm);padding:5px 12px;font-size:.78rem;font-weight:700;cursor:pointer;background:var(--surface-2);color:var(--text-1)}.sched-btn.signup{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.sched-btn.signup:hover{background:var(--accent);color:var(--on-accent)}.sched-btn.cancel{border-color:var(--danger-dim);color:var(--danger);background:#f871710d}.sched-btn.cancel:hover{background:var(--danger-dim)}.sched-btn:disabled{opacity:.5;cursor:not-allowed}.sched-btn.autofill{display:inline-flex;align-items:center;gap:6px;border-color:var(--success);color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent)}.sched-btn.autofill:hover:not(:disabled){background:var(--success);color:var(--on-accent);border-color:var(--success)}.schedule-rows-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.assign-summary{display:flex;align-items:flex-start;gap:10px;margin:10px 0 4px;padding:10px 12px;border:1px solid var(--accent);border-radius:var(--r-sm);background:var(--accent-dim);color:var(--text-1);font-size:.82rem;font-weight:600}.assign-summary span{flex:1}.assign-summary button{flex-shrink:0;display:grid;place-items:center;border:0;background:transparent;color:var(--text-2);cursor:pointer;padding:0}.assign-summary button:hover{color:var(--text-1)}.assign-unfilled{margin:4px 0 8px;padding:10px 12px;border:1px solid color-mix(in srgb,#d97706 45%,var(--border-med));border-radius:var(--r-sm);background:color-mix(in srgb,#d97706 10%,var(--surface-2));font-size:.82rem}.assign-unfilled strong{display:block;margin-bottom:4px;color:var(--text-1)}.assign-unfilled ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:2px}.assign-unfilled li{color:var(--text-2)}.sched-count{min-width:20px;text-align:center;font-size:.72rem;font-weight:800;padding:1px 6px;border-radius:999px;background:var(--surface-3);color:var(--text-2)}.schedule-modal{max-width:min(1180px,96vw);width:100%}.schedule-builder-inline,.manage-user-inline{width:100%}.manage-user-nameline{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}.app-install{display:inline-flex;flex-wrap:wrap;gap:6px}.app-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.01em;border:1px solid var(--border-med);background:var(--surface-2);color:var(--text-2);white-space:nowrap}.app-badge-on{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.app-badge-none{font-weight:600}.schedule-builder-inline .report-modal,.manage-user-inline .report-modal{width:100%;max-width:none;max-height:none;overflow:visible;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.schedule-rows{margin-top:4px;display:flex;flex-direction:column;gap:10px}.schedule-rows-head{display:flex;align-items:center;justify-content:space-between}.schedule-rows-head span{font-size:.82rem;font-weight:800;color:var(--text-1)}.schedule-rows-grid{--src-drag: 22px;--src-tools: 100px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);overflow-x:auto;-webkit-overflow-scrolling:touch}.schedule-rows-grid.is-shift{--src-cols: var(--src-drag) 54px 152px 100px 100px minmax(122px, 1.3fr) minmax(108px, 1.2fr) minmax(156px, .2fr) var(--src-tools);--src-min: 884px}.schedule-rows-grid.is-position{--src-cols: var(--src-drag) 108px minmax(120px, .9fr) minmax(140px, 1.3fr) minmax(120px, .9fr) var(--src-tools);--src-min: 660px}.schedule-rows-cols,.schedule-row-editor{display:grid;grid-template-columns:var(--src-cols);gap:10px;align-items:center;padding:9px 12px;min-width:var(--src-min)}.schedule-rows-cols{position:sticky;top:0;z-index:2;background:var(--surface-3);border-bottom:1px solid var(--border);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);white-space:nowrap}.schedule-row-editor+.schedule-row-editor{border-top:1px solid var(--border)}.schedule-row-editor label.src-field{display:block;min-width:0}.schedule-row-editor label.src-field input,.schedule-row-editor label.src-field select{width:100%;min-width:0}.src-candidates{display:flex;flex-wrap:wrap;gap:5px;align-content:center;min-width:0}.cand-tag{display:inline-flex;align-items:center;max-width:100%;padding:4px 9px;border-radius:999px;border:1px solid var(--border-med);background:var(--surface-1);color:var(--text-1);font-size:.78rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:grab;-webkit-user-select:none;user-select:none;transition:border-color .11s ease,color .11s ease,background .11s ease}.cand-tag:hover{border-color:var(--accent);color:var(--accent)}.cand-tag:active{cursor:grabbing}.cand-tag.is-assigned{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.cand-empty,.person-empty{font-size:.74rem;color:var(--text-3);white-space:nowrap}.src-person{position:relative;display:flex;align-items:center;min-width:0;border-radius:var(--r-sm)}.src-person.drop-active{outline:2px solid var(--accent);outline-offset:2px}.person-combo{position:relative;width:100%;min-width:0}.person-search{width:100%;min-width:0}.person-options{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;max-height:240px;overflow-y:auto;background:var(--surface-1);border:1px solid var(--border-med);border-radius:var(--r-sm);box-shadow:0 14px 30px #0000002e;padding:4px}.person-option{display:block;width:100%;text-align:left;padding:8px 10px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-1);font-size:.85rem;cursor:pointer}.person-option:hover{background:var(--surface-3)}.person-option.empty{color:var(--text-3);cursor:default}.person-tag{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 6px 4px 11px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:.8rem;font-weight:700;white-space:nowrap;overflow:hidden}.person-tag button{display:grid;place-items:center;flex-shrink:0;width:18px;height:18px;border:0;border-radius:50%;background:#ffffff40;color:var(--on-accent);font-size:13px;line-height:1;cursor:pointer}.person-tag button:hover{background:#ffffff73}.sched-row-remove{margin-left:auto;width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--danger-dim);border-radius:var(--r-sm);background:#f871710d;color:var(--danger);cursor:pointer}.sched-row-remove:hover{background:var(--danger-dim)}.assign-rows{display:flex;flex-direction:column;gap:12px}.assign-row{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:12px}.assign-row-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.assign-row-head strong{font-size:.86rem;color:var(--text-1)}.assign-candidates{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.assign-candidate{display:inline-flex;align-items:center;gap:8px;padding:4px 6px 4px 12px;border-radius:999px;background:var(--surface-1);border:1px solid var(--border);font-size:.8rem;color:var(--text-1)}.assign-candidate button{border:0;border-radius:999px;padding:4px 10px;font-size:.74rem;font-weight:700;cursor:pointer;background:var(--accent-dim);color:var(--accent)}.assign-candidate button:hover{background:var(--accent);color:var(--on-accent)}.assign-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.assign-controls select{width:auto;min-width:200px}.sched-print-btn{display:inline-flex;align-items:center;gap:7px;padding:6px 14px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .11s ease,color .11s ease}.sched-print-btn:hover{background:var(--surface-3);color:var(--text-1)}.sched-detail-actions{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.sched-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.sched-filter-btn{padding:6px 14px;border-radius:999px;border:1px solid var(--border-med);background:var(--surface-2);color:var(--text-2);font-size:.82rem;font-weight:700;cursor:pointer;transition:background .11s ease,color .11s ease,border-color .11s ease}.sched-filter-btn:hover{color:var(--text-1);border-color:var(--border-hi)}.sched-filter-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.email-editor{display:flex;flex-direction:column;gap:14px}.email-editor-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;align-items:start}.email-editor-main{display:flex;flex-direction:column;gap:12px}.email-editor textarea{font-family:ui-monospace,Cascadia Code,Menlo,monospace;font-size:.86rem;line-height:1.5}.email-vars{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:12px;display:flex;flex-direction:column;gap:10px}.email-vars-label{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.email-var-group{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.email-var-group small{width:64px;flex-shrink:0;font-size:.74rem;color:var(--text-2);font-weight:700}.email-var-group button{font-family:ui-monospace,Menlo,monospace;font-size:.74rem;padding:3px 8px;border-radius:var(--r-sm);border:1px solid var(--border-med);background:var(--surface-1);color:var(--accent);cursor:pointer}.email-var-group button:hover{background:var(--accent-dim);border-color:var(--accent)}.email-preview{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-1);padding:14px;display:flex;flex-direction:column;gap:8px;position:sticky;top:12px}.email-preview-label{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.email-preview-subject{font-weight:700;color:var(--text-1);padding-bottom:8px;border-bottom:1px solid var(--border)}.email-preview-body{white-space:pre-wrap;line-height:1.6;color:var(--text-2);font-size:.9rem}@media(max-width:720px){.email-editor-grid{grid-template-columns:1fr}.email-preview{position:static}}.schedule-row-editor .sr-week{flex:0 0 80px}.schedule-row-editor .sr-week input{width:80px}.schedule-row-editor.dragging{opacity:.6;background:var(--surface-3)}.schedule-row-editor.is-generated{background:color-mix(in srgb,var(--accent) 7%,transparent);box-shadow:inset 3px 0 0 0 var(--accent)}.src-plats-inner{display:flex;align-items:center;gap:6px;min-width:0}.src-plats-inner select{flex:1 1 auto;min-width:0}.kompetens-pin{position:relative;flex:0 0 auto;display:flex}.kompetens-pin-btn{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:color .12s ease,border-color .12s ease,background .12s ease}.kompetens-pin-btn:hover{color:var(--text-1);border-color:var(--accent)}.kompetens-pin-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.kompetens-pin-btn.is-pinned{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.kompetens-pin-backdrop{position:fixed;inset:0;z-index:200;border:0;padding:0;background:transparent;cursor:default}.kompetens-pin-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:201;min-width:180px;max-width:240px;display:flex;flex-direction:column;padding:4px;gap:2px;background:var(--surface-1);border:1px solid var(--border-med);border-radius:var(--r-sm);box-shadow:0 8px 24px #00000047}.kompetens-pin-opt{text-align:left;padding:7px 9px;border:0;border-radius:var(--r-xs, 6px);background:transparent;color:var(--text-1);font-size:.82rem;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kompetens-pin-opt:hover{background:var(--surface-3)}.kompetens-pin-opt.is-active{background:var(--accent-dim);color:var(--accent);font-weight:600}.sched-drag{align-self:center;display:grid;place-items:center;padding:0 2px;color:var(--text-3);cursor:grab}.sched-drag:active{cursor:grabbing}.sched-drag:hover{color:var(--text-1)}.sched-row-tools{display:flex;gap:5px;align-items:center;flex-shrink:0}.sched-row-tools .sched-row-remove{margin-left:0}.sched-row-copy{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-1);color:var(--accent);cursor:pointer}.sched-row-copy:hover{background:var(--accent-dim);border-color:var(--accent)}.schedule-filters{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.schedule-purge-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.schedule-purge-bar select{padding:7px 10px;border:1px solid var(--border-med);border-radius:8px;background:var(--surface-1);color:var(--text-1)}.schedule-purge-bar select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.schedule-purge-bar .danger{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:7px 12px;border:1px solid var(--danger, #c0392b);border-radius:8px;background:transparent;color:var(--danger, #c0392b);font-weight:600;cursor:pointer}.schedule-purge-bar .danger:hover:not(:disabled){background:var(--danger, #c0392b);color:#fff}.schedule-purge-bar .danger:disabled{opacity:.5;cursor:default}.cal-wrap{display:flex;flex-direction:column;gap:12px}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.cal-title{margin:0;font-size:1.05rem;text-transform:capitalize;color:var(--text-1)}.cal-nav{display:flex;align-items:center;gap:6px}.cal-nav-btn{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);cursor:pointer}.cal-nav-btn:hover{background:var(--surface-3);color:var(--text-1)}.cal-today{padding:0 12px;height:32px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);font-size:.8rem;font-weight:700;cursor:pointer}.cal-today:hover{background:var(--surface-3);color:var(--text-1)}.cal-grid{display:grid;grid-template-columns:44px repeat(7,minmax(0,1fr));min-width:720px}.cal-colhead{background:var(--surface-2);padding:8px;text-align:center;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.cal-weekhead{font-size:.64rem}.cal-weekno{display:grid;place-items:center;background:var(--surface-2);color:var(--text-3);font-size:.74rem;font-weight:800;border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.cal-day{min-height:90px;padding:6px;display:flex;flex-direction:column;gap:3px;background:var(--surface-1);border-bottom:1px solid var(--border);border-right:1px solid var(--border);overflow:hidden}.cal-day.out{background:var(--surface-2)}.cal-day.out .cal-date,.cal-day.out .cal-wd{color:var(--text-3)}.cal-day.today{outline:2px solid var(--accent);outline-offset:-2px}.cal-day-top{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.cal-date{font-size:.9rem;font-weight:700;color:var(--text-1)}.cal-wd{font-size:.66rem;color:var(--text-3);text-transform:capitalize}.cal-day.holiday .cal-date{color:var(--danger)}.cal-holiday{font-size:.64rem;color:var(--danger);font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-event{font-size:.66rem;font-weight:700;padding:2px 6px;border-radius:var(--r-sm);background:var(--accent-dim);color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-event.is-link{display:block;width:100%;text-align:left;border:0;font:inherit;cursor:pointer;transition:transform .12s ease}.cal-event.is-link:hover{background:var(--accent);color:var(--on-accent)}.cal-event.is-link:active{transform:translateY(1px)}.cal-event.is-link:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.login-panel.activation-lock{text-align:center;gap:14px}.login-panel.activation-lock h1{margin:4px 0 0;font-size:1.25rem;color:var(--text-1)}.login-panel.activation-lock .secondary-action{width:auto;margin:6px auto 0}.license-status{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);margin-bottom:16px}.license-status strong{display:block;color:var(--text-1);font-size:.95rem}.license-status small{display:block;margin-top:2px;color:var(--text-2);font-size:.8rem}.license-dot{width:12px;height:12px;border-radius:999px;flex-shrink:0}.license-status.ok .license-dot{background:var(--success);box-shadow:0 0 0 4px #34d39929}.license-status.off .license-dot{background:var(--danger);box-shadow:0 0 0 4px #f8717129}.form-message.ok{background:#34d39914;border-color:#34d39938;color:var(--success)}.fortnox-toggle{display:flex;align-items:center;gap:10px;font-size:.9rem;font-weight:600;color:var(--text-1);cursor:pointer}.fortnox-toggle input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.fortnox-toggle input:disabled{cursor:not-allowed}.fortnox-toggle:has(input:disabled){color:var(--text-2);cursor:not-allowed}.fortnox-actions{margin-top:16px;display:flex;gap:10px}.fortnox-mapping{margin-top:28px;border-top:1px solid var(--border);padding-top:20px}.fortnox-map-title{font-size:1rem;color:var(--text-1);margin:0 0 4px}.fortnox-map-section{margin-top:18px}.fortnox-map-section>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.fortnox-map-section>header strong{color:var(--text-1);font-size:.92rem}.fortnox-map-count{font-size:.78rem;color:var(--text-2)}.fortnox-map-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.fortnox-map-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-1)}.fortnox-map-name{display:flex;flex-direction:column;min-width:0}.fortnox-map-name strong{color:var(--text-1);font-size:.88rem;font-weight:600}.fortnox-map-name small{color:var(--text-2);font-size:.76rem}.fortnox-map-list select,.fortnox-code-input{flex-shrink:0;max-width:56%;padding:6px 10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-1);font-size:.84rem}.fortnox-code-input{width:120px}.fortnox-map-bulkbar{display:flex;justify-content:flex-end;margin-bottom:10px}.user-account-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px}.acct-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:.74rem;font-weight:600;border:1px solid var(--border);color:var(--text-2)}.acct-badge:before{content:"";width:7px;height:7px;border-radius:999px;background:currentColor}.acct-active{color:var(--success);border-color:#34d3994d;background:#34d39914}.acct-pending{color:var(--warning);border-color:#fbbf244d;background:#fbbf2414}.acct-inactive{color:var(--danger);border-color:var(--danger-dim);background:#f871710f}.acct-none{color:var(--text-2)}.user-password-set{margin-top:10px;display:flex;flex-direction:column;gap:6px}.user-password-form{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.user-password-form .password-field{flex:1 1 180px;min-width:160px}.user-password-actions{display:flex;gap:8px}.user-password-hint{font-size:.76rem;margin:0}.absence-groups{display:flex;flex-direction:column;gap:8px;margin-top:8px}.absence-group{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);overflow:hidden}.absence-group-head{display:flex;align-items:center;gap:10px;width:100%;text-align:left;cursor:pointer;padding:12px 14px;border:0;background:none;color:var(--text-1);font:inherit}.absence-group-head:hover{background:var(--surface-3)}.absence-group-chevron{color:var(--text-3);flex:none;transition:transform .15s ease}.absence-group.open .absence-group-chevron{transform:rotate(90deg)}.absence-group-head strong{font-size:.92rem;font-weight:700}.absence-group-count{flex:none;min-width:22px;text-align:center;padding:1px 8px;border-radius:999px;background:var(--surface-1);border:1px solid var(--border);color:var(--text-2);font-size:.74rem;font-weight:700}.absence-group-pending{margin-left:auto;flex:none;padding:2px 10px;border-radius:999px;background:#f59e0b29;color:#b45309;font-size:.74rem;font-weight:700;white-space:nowrap}[data-theme=dark] .absence-group-pending{color:#fbbf24}.absence-group .absence-list{margin:0;padding:0 12px 12px}.absence-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.absence-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-md)}.absence-main{display:flex;flex-direction:column;gap:4px;min-width:0}.absence-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.absence-head strong{font-size:.92rem;color:var(--text-1)}.absence-meta{font-size:.82rem;color:var(--text-2)}.absence-note{font-size:.82rem;color:var(--text-3);font-style:italic}.absence-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.rate-mode-toggle{margin-top:4px}.supp-add{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:6px 0 12px}.supp-add label{flex:1 1 140px;min-width:0;margin:0}.supp-add input,.supp-add select{width:100%;padding:7px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-1)}.supp-add input:focus-visible,.supp-add select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.supp-add-btn{flex:0 0 auto}.supp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.supp-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-sm);font-size:.84rem;color:var(--text-1)}.supp-row-info{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.supp-row-info .holiday-badge{font-size:11px;padding:3px 10px;border-radius:999px}.salary-supp-note{display:block;font-size:.72rem;color:var(--text-3);font-weight:500}.nok-reminder{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--warning) 45%,var(--border-med));border-radius:var(--r-md);background:color-mix(in srgb,var(--warning) 12%,var(--surface-2))}.nok-reminder-icon{color:var(--warning);flex-shrink:0}.nok-reminder-text{display:flex;flex-direction:column;gap:1px;min-width:0;margin-right:auto}.nok-reminder-text strong{font-size:.92rem;color:var(--text-1)}.nok-reminder-text small{font-size:.8rem;color:var(--text-2)}.nok-reminder-btn{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:0;border-radius:999px;background:var(--warning);color:#1a1200;font-size:.84rem;font-weight:700;cursor:pointer;transition:transform .11s ease,opacity .11s ease}.nok-reminder-btn:hover{opacity:.9}.nok-reminder-btn:active{transform:scale(.97)}.nok-reminder-btn:focus-visible{outline:2px solid var(--text-1);outline-offset:2px}@media(max-width:640px){.nok-reminder{flex-wrap:wrap}.nok-reminder-btn{width:100%;justify-content:center}}.admin-tab-dot{width:8px;height:8px;border-radius:50%;background:var(--warning);box-shadow:0 0 0 3px color-mix(in srgb,var(--warning) 22%,transparent)}.nok-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.nok-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-sm);font-size:.84rem;color:var(--text-1)}.nok-row.editing{border-color:var(--accent);background:var(--accent-dim)}.nok-row-main{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.nok-row-main strong{font-weight:700}.nok-relation{font-size:.74rem;font-weight:600;color:var(--text-2);padding:2px 9px;border-radius:999px;background:var(--surface-2)}.nok-phone,.nok-phone-plain{display:inline-flex;align-items:center;gap:5px;color:var(--text-2);font-size:.82rem}.nok-phone{text-decoration:none}.nok-phone:hover{color:var(--accent)}.nok-row-actions{display:inline-flex;gap:4px;flex-shrink:0}.nok-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:color .11s ease,border-color .11s ease}.nok-icon-btn:hover:not(:disabled){color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--border-med))}.nok-icon-btn.danger:hover:not(:disabled){color:#dc2626;border-color:color-mix(in srgb,#dc2626 45%,var(--border-med))}.nok-icon-btn:disabled{opacity:.5;cursor:default}.nok-editor{display:flex;flex-direction:column;gap:14px}.nok-empty{margin:0}.nok-form{border:1px solid var(--border);border-radius:var(--r-md);padding:14px;background:var(--surface-2)}.nok-form-title{font-size:.8rem;font-weight:700;color:var(--text-2);margin-bottom:4px}.nok-form .supp-add{margin:0}.nok-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}@media(max-width:640px){.nok-form-actions{flex-direction:column-reverse}.nok-form-actions .primary-action,.nok-form-actions .secondary-action{width:100%;justify-content:center}}.jour-place-badge{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font-size:.76rem;font-weight:700;color:#7c3aed;padding:4px 10px;border-radius:999px;margin-bottom:2px;background:color-mix(in srgb,#7c3aed 12%,transparent)}.event-cat-locked{display:inline-flex;align-items:center;color:var(--text-3);padding:2px}.jour-place-toggle{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font-size:.76rem;font-weight:600;color:var(--text-2);padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);cursor:pointer;margin-bottom:2px;transition:color .11s ease,border-color .11s ease,background .11s ease}.jour-place-toggle.on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--border-med));background:var(--accent-dim)}.jour-place-toggle input{width:14px;height:14px;accent-color:var(--accent);margin:0}.jour-bar.ready{border-color:color-mix(in srgb,#7c3aed 45%,var(--border-med));background:color-mix(in srgb,#7c3aed 10%,var(--surface-2))}.jour-bar.on{border-color:color-mix(in srgb,#7c3aed 55%,var(--border-med));background:color-mix(in srgb,#7c3aed 12%,var(--surface-2))}.jour-bar .jour-lead{color:#7c3aed}.jour-bar .jour-dot{background:#7c3aed;box-shadow:0 0 0 4px color-mix(in srgb,#7c3aed 22%,transparent)}.ci-btn.jour-btn{background:#7c3aed;color:#fff}.jour-logger .manage-body,.jour-popup .manage-body{display:flex;flex-direction:column;gap:12px}.jour-window{display:flex;align-items:flex-end;gap:10px}.jour-window label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:600;color:var(--text-2);margin:0}.jour-window input{padding:8px 10px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-1);color:var(--text-1);font-size:.95rem}.jour-window-dash{padding-bottom:10px;color:var(--text-3)}.jour-standby-line{font-size:.86rem;color:var(--text-2);margin:0}.jour-standby-line strong{color:var(--text-1)}.jour-chips-label{font-size:.78rem;font-weight:700;color:var(--text-2);margin:4px 0 0}.jour-chips{display:flex;flex-wrap:wrap;gap:8px}.jour-chip{display:inline-flex;align-items:stretch;border:1px solid var(--border);border-radius:999px;overflow:hidden;background:var(--surface-2);opacity:.6;transition:opacity .11s ease,border-color .11s ease,background .11s ease}.jour-chip.on{opacity:1;border-color:color-mix(in srgb,#7c3aed 45%,var(--border-med));background:color-mix(in srgb,#7c3aed 12%,var(--surface-1))}.jour-chip-main{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;background:none;border:0;cursor:pointer;color:var(--text-1);font-size:.84rem;font-weight:600}.jour-chip-name{white-space:nowrap}.jour-chip-amount{font-size:.76rem;font-weight:700;color:var(--text-3)}.jour-chip.on .jour-chip-amount{color:#7c3aed}.jour-chip-minus{align-self:center;flex-shrink:0;margin:0 5px 0 2px;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-med);border-radius:8px;background:var(--surface-2);color:var(--text-1);font-size:1.2rem;font-weight:700;line-height:1;cursor:pointer;transition:color .11s ease,border-color .11s ease,background .11s ease}.jour-chip-minus:hover{color:#dc2626;border-color:#dc2626;background:color-mix(in srgb,#dc2626 12%,var(--surface-2))}.jour-chip.annat{border-style:dashed}.jour-annat-notes{display:flex;flex-direction:column;gap:8px}.jour-annat-note{display:flex;align-items:center;gap:8px;margin:0}.jour-annat-num{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,#7c3aed 14%,transparent);color:#7c3aed;font-size:.74rem;font-weight:800}.jour-annat-note input{flex:1;min-width:0;padding:9px 12px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-1);color:var(--text-1);font-size:.9rem}.jour-annat-note input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.jour-total{font-size:.92rem;color:var(--text-1);margin:4px 0 0;padding-top:10px;border-top:1px solid var(--border)}.jour-total strong{color:#7c3aed}.jour-popup-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.jour-popup-row{display:flex;justify-content:space-between;gap:12px;font-size:.84rem;color:var(--text-1);padding:7px 0;border-bottom:1px solid var(--border)}.jour-popup-place{display:flex;flex-direction:column;gap:2px;min-width:0}.jour-popup-note{color:var(--text-3);font-style:italic;font-weight:400}.jour-missing{color:var(--warning);font-style:normal;font-weight:600}.tr-row--jour .tr-plats-cell{flex-wrap:wrap}.jour-row-badge{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:700;color:#7c3aed;background:color-mix(in srgb,#7c3aed 14%,transparent);padding:2px 8px;border-radius:999px}.jour-info-btn:hover{color:#7c3aed!important}.user-impersonate{margin-top:10px;display:flex;flex-direction:column;gap:6px}.impersonation-banner{position:fixed;top:0;left:0;right:0;height:calc(40px + env(safe-area-inset-top));z-index:2000;display:flex;align-items:center;justify-content:center;gap:16px;padding:env(safe-area-inset-top) 16px 0;background:var(--warning);color:#1a1200;font-size:.86rem;font-weight:600;box-shadow:0 1px 8px #00000040}.impersonation-banner span{display:inline-flex;align-items:center;gap:6px}.impersonation-banner strong{font-weight:800}.impersonation-banner button{display:inline-flex;align-items:center;gap:6px;background:#00000029;color:inherit;border:0;padding:5px 12px;border-radius:999px;font-weight:700;font-size:.82rem}.impersonation-banner button:hover{background:#00000047}body.impersonating .app-layout{padding-top:calc(40px + env(safe-area-inset-top))}body.impersonating .app-sidebar{height:calc(100vh - 40px - env(safe-area-inset-top));top:calc(40px + env(safe-area-inset-top))}@media(max-width:900px){body.impersonating .app-layout{padding-top:0}body.impersonating .mobile-header{margin-top:calc(40px + env(safe-area-inset-top));top:calc(40px + env(safe-area-inset-top));padding-top:0;min-height:54px}}.fortnox-cc-create{display:flex;align-items:center;gap:8px;flex-shrink:0}.fortnox-cc-create .fortnox-code-input{width:84px;text-transform:uppercase}.fortnox-map-list select:focus-visible,.fortnox-code-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.license-form{display:flex;flex-direction:column;gap:12px;margin-bottom:22px;max-width:420px}.license-form .primary-action{width:auto}.license-keys-title{margin:0 0 10px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.license-keys{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.license-keys li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-1)}.license-keys li.used{opacity:.6}.license-keys code{font-size:.9rem;color:var(--text-1);letter-spacing:.04em}.lk-actions{display:inline-flex;align-items:center;gap:8px}.lk-tag{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:2px 9px;border-radius:999px;background:var(--accent-dim);color:var(--accent)}.lk-tag.used{background:var(--surface-2);color:var(--text-3)}.attachment-row{margin-top:16px}.attachment-row>b{display:block;margin-bottom:8px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.attachment-chips{display:flex;flex-wrap:wrap;gap:8px}.attachment-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--border-med);border-radius:999px;background:var(--surface-2);color:var(--text-1);font-size:.8rem;font-weight:700;cursor:pointer;text-decoration:none;transition:background .11s ease,border-color .11s ease,transform .11s ease}.attachment-chip:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.attachment-chip:active{transform:translateY(1px)}.attachment-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lightbox{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:5vh 4vw;background:#02060cdb;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.lightbox-stage{margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;gap:10px}.lightbox-stage img{max-width:90vw;max-height:84vh;object-fit:contain;border-radius:var(--r-sm);box-shadow:0 24px 60px #0000008c}.lightbox-counter{font-size:.82rem;font-weight:700;color:#ffffffd9;letter-spacing:.04em}.lightbox-close,.lightbox-nav{position:fixed;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);background:#ffffff14;color:#fff;cursor:pointer;border-radius:999px;transition:background .12s ease}.lightbox-close:hover,.lightbox-nav:hover{background:#fff3}.lightbox-close:focus-visible,.lightbox-nav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lightbox-close{top:18px;right:18px;width:40px;height:40px}.lightbox-nav{top:50%;transform:translateY(-50%);width:48px;height:48px}.lightbox-nav.prev{left:16px}.lightbox-nav.next{right:16px}.edit-attachments{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.edit-thumb{position:relative;width:84px;height:84px;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--border-med);background:var(--surface-2)}.edit-thumb img{width:100%;height:100%;object-fit:cover;display:block}.edit-thumb-file{width:100%;height:100%;display:grid;place-items:center;color:var(--text-2)}.edit-thumb.removing{opacity:.45;filter:grayscale(1)}.edit-thumb.removing img{outline:2px solid var(--danger);outline-offset:-2px}.edit-thumb-x{position:absolute;top:4px;right:4px;width:22px;height:22px;display:grid;place-items:center;border:0;border-radius:999px;background:#0a0d10b8;color:#fff;cursor:pointer}.edit-thumb-x:hover{background:var(--danger)}.edit-thumb.removing .edit-thumb-x:hover{background:var(--accent)}.edit-thumb-badge{position:absolute;left:4px;bottom:4px;padding:1px 7px;border-radius:999px;background:var(--accent-dim);color:var(--accent);font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.file-drop.file-drop-compact{flex-direction:row;justify-content:flex-start;gap:10px;padding:10px 14px;min-height:0}.brand-presets{display:flex;flex-direction:column;gap:10px;margin-top:6px}.brand-preset{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1)}.brand-preset.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-dim)}.brand-preset-main{display:flex;align-items:center;gap:12px;min-width:0}.brand-preset-main strong{display:block;color:var(--text-1);font-size:.92rem}.brand-preset-main small{display:block;color:var(--text-2);font-size:.78rem}.brand-swatches{display:inline-flex;border-radius:999px;overflow:hidden;border:1px solid var(--border-med);flex-shrink:0}.brand-swatches span{width:22px;height:22px;display:block}.brand-preset-actions{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0}.brand-preset-actions button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);font-size:.8rem;font-weight:600;cursor:pointer}.brand-preset-actions button:hover{background:var(--surface-3);color:var(--text-1)}.brand-preset-actions button.danger{border-color:var(--danger-dim);color:var(--danger);background:#f871710d}.brand-preset-actions button.danger:hover{background:var(--danger-dim)}.color-field{display:flex;align-items:center;gap:8px}.color-field input[type=color]{width:42px;height:38px;padding:2px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);cursor:pointer}.color-field input:last-child{flex:1;text-transform:uppercase}.brand-logo-row{flex-wrap:wrap}.brand-logo-field{display:flex;flex-direction:column;gap:8px}.brand-logo-preview{height:64px;display:grid;place-items:center;border:1px dashed var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);padding:6px}.brand-logo-preview.on-dark{background:#13171c}.brand-logo-preview img{max-height:52px;max-width:100%;object-fit:contain}.brand-logo-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.brand-logo-clear{border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);padding:8px 12px;font-size:.78rem;font-weight:600;cursor:pointer}.brand-logo-clear:hover{background:var(--surface-3);color:var(--text-1)}.email-settings{display:grid;gap:12px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--border)}.email-settings .field,.email-editor .field{display:grid;gap:4px}.email-settings .field input,.email-editor .field input{width:100%}.email-from{font-size:.75rem;color:var(--text-3);margin:0}.email-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.email-editor{display:grid;gap:12px}.email-grid{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}.email-grid textarea{width:100%;min-height:320px;font-family:var(--mono, monospace);font-size:.8rem;line-height:1.5;resize:vertical}.email-preview{border:1px solid var(--border);border-radius:var(--r-sm);padding:14px;background:#fff;overflow:auto;max-height:420px}.email-preview-frame{background:#fff;color:#0f1c2e}.email-actions{display:flex;gap:10px;flex-wrap:wrap}.link-button{background:none;border:0;padding:0;cursor:pointer;color:var(--accent);font-weight:600;font-size:.85rem}.link-button:hover{text-decoration:underline}.login-forgot{margin-top:14px;align-self:center}.login-forgot-form{margin-top:14px;display:grid;gap:8px;border-top:1px solid var(--border);padding-top:14px}.login-forgot-form label{display:grid;gap:4px}.login-forgot-form input{width:100%}.login-forgot-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.user-toolbar{display:flex;justify-content:flex-end;margin-top:4px}.create-user-btn{width:auto;padding:0 20px}.user-panel-message{margin-top:14px}.user-rows{display:grid;gap:8px}.user-row{width:100%;display:flex;align-items:center;gap:14px;text-align:left;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:12px 14px;cursor:pointer;transition:border-color .11s ease,background .11s ease,box-shadow .11s ease}.user-row:hover{border-color:var(--accent);background:var(--accent-dim)}.user-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.user-row.is-readonly{cursor:default}.user-row.is-readonly:hover{border-color:var(--border);background:var(--surface-2)}.user-row-main{display:grid;gap:3px;min-width:0;flex:1 1 auto}.user-row-main strong{color:var(--text-1);font-size:.9rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-row-main small{color:var(--text-2);font-size:.78rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-row-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.user-row-role{padding:3px 10px;border-radius:999px;background:var(--surface-1);color:var(--accent);border:1px solid var(--border);font-size:.72rem;font-weight:700;white-space:nowrap}.user-row-side{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.user-row-action{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;font:inherit;color:var(--accent);font-size:.78rem;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0}.user-row-action:hover{text-decoration:underline}.user-row-danger{color:var(--danger)}.user-row-danger:focus-visible{outline-color:var(--danger)}.user-row-danger:disabled{opacity:.6;cursor:default;text-decoration:none}.user-row-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.user-row-open{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:14px;padding:0;margin:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--r-sm)}.user-row-open:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.user-row-rate{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface-1);color:var(--accent);cursor:pointer;transition:border-color .11s ease,background .11s ease,color .11s ease}.user-row-rate:hover{border-color:var(--accent);background:var(--accent-dim)}.user-row-rate:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.user-row-docs{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface-1);color:var(--accent);cursor:pointer;transition:border-color .11s ease,background .11s ease,color .11s ease}.user-row-docs:hover{border-color:var(--accent);background:var(--accent-dim)}.user-row-docs:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.doc-hint{font-size:.8rem;margin:2px 0 9px}.doc-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.doc-tag{display:inline-flex;align-items:center;border-radius:999px;overflow:hidden;border:1px solid var(--border-med);background:var(--surface-2)}.doc-tag-open{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:0;background:transparent;color:var(--text-1);font-size:12px;font-weight:700;cursor:pointer}.doc-tag.img .doc-tag-open{color:var(--accent)}.doc-tag-open svg{flex-shrink:0}.doc-tag-del{display:grid;place-items:center;padding:5px 9px 5px 3px;border:0;background:transparent;color:var(--text-3);cursor:pointer}.doc-tag-del:hover:not(:disabled){color:#dc2626}.doc-upload{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px dashed var(--border-med);background:transparent;color:var(--accent);font-size:12px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s}.doc-upload:hover{background:var(--accent-dim);border-color:var(--accent)}.doc-upload.busy{opacity:.6;cursor:default}.doc-list{display:flex;flex-direction:column;gap:8px}.doc-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-1)}.doc-row-open{flex:none;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--border-med);border-radius:8px;background:var(--surface-2);cursor:pointer}.doc-row-open.img{color:var(--accent)}.doc-row-open.pdf{color:var(--text-2)}.doc-row-open:hover{border-color:var(--accent);background:var(--accent-dim)}.doc-row-title{flex:1 1 150px;min-width:0;padding:7px 10px;font-size:.86rem;border:1px solid transparent;border-radius:8px;background:var(--surface-2);color:var(--text-1)}.doc-row-title:hover{border-color:var(--border-med)}.doc-row-title:focus{outline:none;border-color:var(--accent);background:var(--surface-1);box-shadow:0 0 0 3px var(--accent-glow)}.doc-row-exp{display:inline-flex;align-items:center;gap:6px;flex:none}.doc-row-exp>span{font-size:.72rem;color:var(--text-3);font-weight:600}.doc-row-exp input,.doc-row-exp select{padding:6px 8px;font-size:.82rem;border:1px solid var(--border-med);border-radius:8px;background:var(--surface-1);color:var(--text-1)}.doc-row-exp select{cursor:pointer}.doc-row-exp input:focus,.doc-row-exp select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.doc-row-del{flex:none;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--border-med);border-radius:8px;background:transparent;color:var(--text-3);cursor:pointer}.doc-row-del:hover:not(:disabled){color:var(--danger);border-color:var(--danger);background:var(--danger-dim)}.doc-status{flex:none;padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap}.doc-status-none{background:var(--surface-2);color:var(--text-3)}.doc-status-valid{background:#22c55e24;color:#16a34a}.doc-status-soon{background:#f59e0b29;color:#b45309}.doc-status-expired{background:var(--danger-dim);color:var(--danger)}[data-theme=dark] .doc-status-valid{color:#4ade80}[data-theme=dark] .doc-status-soon{color:#fbbf24}.user-row-docs.doc-warn-soon{color:#b45309;border-color:#f59e0b80}.user-row-docs.doc-warn-expired{color:var(--danger);border-color:var(--danger);background:var(--danger-dim)}[data-theme=dark] .user-row-docs.doc-warn-soon{color:#fbbf24}.dash-row-icon.doc-icon-soon{color:#b45309}.dash-row-icon.doc-icon-expired{color:var(--danger)}[data-theme=dark] .dash-row-icon.doc-icon-soon{color:#fbbf24}.manage-body{display:grid;gap:16px;max-height:64vh;overflow-y:auto;padding-right:2px}.manage-user-inline .manage-body{max-height:none;overflow-y:visible;padding-right:0}.manage-section{display:grid;gap:10px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:14px}.manage-section-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.manage-hint{margin:0;font-size:.74rem;color:var(--text-3)}.manage-save{width:auto;justify-self:start;margin-top:0;min-height:38px;padding:0 16px}.manage-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.manage-actions .secondary-action{width:auto;flex:1 1 auto;margin-top:0;min-height:44px}.manage-history{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.manage-history:hover{background:var(--accent-dim);color:var(--accent)}.delete-user-backdrop{z-index:450}.delete-user-modal{max-width:480px}.delete-user-modal .primary-action{background:var(--danger);color:#fff;box-shadow:none}.delete-user-modal .primary-action:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 88%,black)}.delete-user-check{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--border-med);border-radius:var(--r-md);background:var(--surface-2);cursor:pointer}.delete-user-check input{width:18px;height:18px;min-height:0;margin-top:1px;flex:0 0 auto;accent-color:var(--danger)}.delete-user-check span{display:flex;flex-direction:column;gap:3px;font-size:.9rem;color:var(--text-1)}.delete-user-check small{color:var(--text-2);line-height:1.5}.manage-delete{color:var(--danger);border-color:var(--danger-dim)}.manage-delete:hover{background:var(--danger-dim);color:var(--danger)}@media(max-width:640px){.user-toolbar{justify-content:stretch}.create-user-btn{width:100%}.brand-preset{flex-direction:column;align-items:stretch;gap:12px}.brand-preset-actions{justify-content:flex-start}.user-row{flex-wrap:wrap;align-items:center;gap:10px}.user-row-main{flex:1 1 100%}.user-row-open{flex:1 1 100%;min-width:0}.user-row-side{width:100%}.user-row-side .user-row-rate{margin-left:auto}.manage-actions .secondary-action{flex:1 1 100%}}.manage-head-nav{display:flex;flex-direction:column;gap:8px;min-width:0}.manage-back{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;border:1px solid var(--border-med);border-radius:999px;padding:4px 12px 4px 8px;background:var(--surface-1);color:var(--text-2);font-size:.76rem;font-weight:700;cursor:pointer;transition:color .11s ease,border-color .11s ease,background .11s ease}.manage-back:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-dim)}.manage-rate-form{display:flex;flex-direction:column}.manage-rate-bar{display:flex;justify-content:flex-end;margin-bottom:14px}.manage-rate-save{width:auto;padding:0 20px}@media(max-width:640px){.manage-rate-bar{justify-content:stretch}.manage-rate-save{width:100%}}.sidebar-chat-item{position:relative}.sidebar-chat-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:.72rem;font-weight:700;line-height:1;background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 2px var(--accent-dim)}.sidebar-chat-badge.urgent{background:var(--danger);color:#fff;box-shadow:0 0 0 2px var(--danger-dim)}.chat-overlay{position:fixed;inset:0;z-index:600;height:100dvh;display:grid;grid-template-columns:1fr;grid-template-rows:100%;background:radial-gradient(120% 60% at 50% 0%,color-mix(in srgb,var(--accent) 7%,transparent) 0%,transparent 60%),var(--bg);animation:chat-overlay-in .22s cubic-bezier(.22,1,.36,1)}@keyframes chat-overlay-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.chat-list,.chat-thread{display:flex;flex-direction:column;min-height:0;min-width:0}.chat-list{border-right:1px solid var(--border);background:var(--surface-1)}.chat-overlay.has-active .chat-list{display:none}.chat-overlay:not(.has-active) .chat-thread{display:none}.chat-list-head{display:flex;align-items:center;gap:10px;padding:18px 16px;padding-top:max(18px,env(safe-area-inset-top));border-bottom:1px solid var(--border)}.chat-list-head h2{margin:0;font-size:1.05rem;letter-spacing:-.02em;color:var(--text-1)}.chat-list-head-actions{margin-left:auto;display:flex;align-items:center;gap:6px}.chat-list-actions{margin-left:auto;display:flex;gap:4px}.chat-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r-sm);border:1px solid transparent;background:transparent;color:var(--text-2);transition:background .15s ease,color .15s ease,border-color .15s ease}.chat-icon-btn:hover{background:var(--surface-2);color:var(--text-1)}.chat-icon-btn:focus-visible{outline:none;border-color:var(--accent);color:var(--text-1)}.chat-icon-btn:active{transform:scale(.94)}.chat-search{padding:0 12px 8px;border-bottom:1px solid var(--border)}.chat-search .input-icon{margin:0}.chat-search input{height:42px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border-med)}.chat-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.chat-conv-scroll{flex:1;overflow-y:auto;padding:8px}.chat-result-label{display:block;padding:12px 12px 6px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.chat-result-go{margin-left:auto;color:var(--accent);flex-shrink:0}.chat-menu-wrap{position:relative}.chat-menu-backdrop{position:fixed;inset:0;z-index:1}.chat-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:2;min-width:216px;padding:6px;border-radius:var(--r-md);border:1px solid var(--border-med);background:var(--surface-2);box-shadow:0 18px 44px #00000080,0 0 0 1px var(--border)}.chat-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:none;border-radius:var(--r-sm);background:transparent;color:var(--text-1);font-size:.9rem;text-align:left}.chat-menu button:hover{background:var(--surface-3)}.chat-menu button svg{color:var(--text-2);flex-shrink:0}.chat-menu-danger{color:var(--danger)!important}.chat-menu-danger svg{color:var(--danger)!important}.chat-rename-modal{width:min(420px,100%)}.chat-confirm-modal{width:min(400px,100%);padding:24px;text-align:left}@media(max-width:760px){.chat-confirm-modal{padding-top:calc(24px + env(safe-area-inset-top))}}.chat-confirm-modal h2{margin:0 0 8px;font-size:1.15rem;color:var(--text-1)}.chat-confirm-modal p{margin:0 0 4px;color:var(--text-2);line-height:1.5;font-size:.9rem}.chat-danger-action{background:var(--danger);color:#fff;box-shadow:none}.chat-danger-action:hover{background:color-mix(in srgb,var(--danger) 88%,black)}.chat-picker-sub{font-size:1rem!important;color:var(--text-2)!important;font-weight:500}.chat-conv{position:relative;width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;text-align:left;transition:background .15s ease,border-color .15s ease}.chat-conv:hover{background:var(--surface-2)}.chat-conv.active{background:var(--accent-dim);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.chat-conv:focus-visible{outline:none;border-color:var(--accent)}.chat-avatar{flex-shrink:0;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-dim);color:var(--accent);font-size:.8rem;font-weight:700;letter-spacing:.02em}.chat-avatar.group{background:color-mix(in srgb,var(--accent) 16%,var(--surface-3))}.chat-avatar-wrap{position:relative;flex-shrink:0;display:inline-flex}.chat-presence-dot{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border-radius:50%;background:var(--success);box-shadow:0 0 0 2.5px var(--surface-1),0 0 6px color-mix(in srgb,var(--success) 55%,transparent)}.chat-online-label{color:var(--success)!important;font-weight:600}.chat-online-strip{display:flex;align-items:center;gap:12px;padding:8px 14px;border-bottom:1px solid var(--border);background:var(--surface-1)}.chat-online-strip-label{flex-shrink:0;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--success)}.chat-online-strip-people{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.chat-online-strip-people::-webkit-scrollbar{display:none}.chat-online-person{flex-shrink:0;width:50px;display:flex;flex-direction:column;align-items:center;gap:3px}.chat-avatar.chat-avatar-sm{width:34px;height:34px;font-size:.7rem}.chat-online-person .chat-presence-dot{width:10px;height:10px;box-shadow:0 0 0 2px var(--surface-1),0 0 6px color-mix(in srgb,var(--success) 55%,transparent)}.chat-online-person-name{max-width:100%;font-size:.68rem;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-conv-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.chat-conv-top{display:flex;align-items:baseline;gap:8px}.chat-conv-title{flex:1;min-width:0;font-weight:600;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-conv-time{flex-shrink:0;font-size:.72rem;color:var(--text-3)}.chat-conv-preview{font-size:.84rem;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-conv.unread .chat-conv-title{font-weight:700}.chat-conv.unread .chat-conv-preview{color:var(--text-1)}.chat-unread-dot{flex-shrink:0;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.chat-empty{padding:24px 16px;text-align:center;color:var(--text-3);font-size:.88rem}.chat-thread-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-3)}.chat-thread-empty p{margin:0;font-size:.95rem}.chat-thread-head{display:flex;align-items:center;gap:10px;padding:12px 14px;padding-top:max(12px,env(safe-area-inset-top));border-bottom:1px solid var(--border);background:var(--surface-1)}.chat-thread-title{flex:1;min-width:0;display:flex;flex-direction:column}.chat-thread-title strong{font-size:.98rem;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-thread-title small{font-size:.74rem;color:var(--text-3)}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:16px clamp(12px,4vw,28px)}.chat-msg{display:flex;flex-direction:column;gap:3px;max-width:min(78%,560px);align-self:flex-start}.chat-msg.mine{align-self:flex-end;align-items:flex-end}.chat-msg-name{font-size:.72rem;font-weight:600;color:var(--accent);padding:0 0 0 4px;border:none;background:none;cursor:pointer;text-align:left}.chat-msg-name:hover{text-decoration:underline}.chat-bubble{padding:9px 13px;font-size:.92rem;line-height:1.45;word-break:break-word;white-space:pre-wrap;background:var(--surface-2);color:var(--text-1);border:1px solid var(--border);border-radius:16px 16px 16px 5px}.chat-msg.mine .chat-bubble{background:var(--accent);color:var(--on-accent);border-color:transparent;border-bottom-left-radius:16px;border-bottom-right-radius:5px;box-shadow:0 4px 14px var(--accent-glow)}.chat-msg-time{font-size:.68rem;color:var(--text-3);padding:0 4px}.chat-bubble-row{display:flex;align-items:center;gap:6px}.chat-msg.mine .chat-bubble-row{flex-direction:row-reverse}.chat-msg-pin{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:none;background:transparent;color:var(--text-3);opacity:0;transition:opacity .15s ease,color .15s ease,background .15s ease}.chat-msg:hover .chat-msg-pin{opacity:1}.chat-msg-pin:hover{background:var(--surface-2);color:var(--accent)}.chat-msg-pin.on{opacity:1;color:var(--accent)}@media(hover:none){.chat-msg-pin{opacity:.6}}.chat-pinned-bar{flex-shrink:0;display:flex;flex-direction:column;gap:6px;padding:10px clamp(12px,4vw,28px);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 7%,var(--surface-1))}.chat-pinned-item{display:flex;align-items:center;gap:10px;min-width:0}.chat-pinned-item>svg{flex-shrink:0;color:var(--accent)}.chat-pinned-text{flex:1;min-width:0;font-size:.86rem;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-pinned-text strong{color:var(--text-1);margin-right:8px;font-weight:600}.chat-pinned-unpin{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:none;background:transparent;color:var(--text-3)}.chat-pinned-unpin:hover{background:var(--surface-2);color:var(--text-1)}.chat-date-sep{display:flex;align-items:center;gap:12px;margin:14px 2px 8px}.chat-date-sep:before,.chat-date-sep:after{content:"";flex:1;height:1px;background:var(--border)}.chat-date-sep span{flex-shrink:0;font-size:.72rem;font-weight:600;letter-spacing:.02em;color:var(--text-3);text-transform:capitalize}.chat-system-msg{align-self:center;max-width:86%;margin:4px 0;padding:5px 14px;border-radius:999px;background:var(--surface-2);color:var(--text-3);font-size:.76rem;text-align:center}.chat-composer{position:relative;display:flex;align-items:center;gap:8px;padding:12px 14px;padding-bottom:max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface-1)}.chat-composer input{flex:1;height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--border-med);background:var(--surface-2);color:var(--text-1);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.chat-composer input::placeholder{color:var(--text-3)}.chat-composer input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.chat-send{flex-shrink:0;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:var(--accent);color:var(--on-accent);transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease;box-shadow:0 4px 14px var(--accent-glow)}.chat-send:hover:not(:disabled){transform:translateY(-1px)}.chat-send:active:not(:disabled){transform:scale(.94)}.chat-send:disabled{opacity:.4;box-shadow:none;cursor:default}.chat-emoji-wrap{position:relative;flex-shrink:0}.chat-emoji-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:transparent;color:var(--text-2);transition:background .15s ease,color .15s ease}.chat-emoji-btn:hover{background:var(--surface-2);color:var(--text-1)}.chat-emoji-btn:active{transform:scale(.94)}.chat-emoji-panel{position:absolute;bottom:calc(100% + 8px);left:0;z-index:2;width:min(336px,84vw);max-height:220px;overflow-y:auto;display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px;border-radius:var(--r-md);border:1px solid var(--border-med);background:var(--surface-2);box-shadow:0 18px 44px #00000080,0 0 0 1px var(--border)}.chat-emoji-panel button{border:none;background:transparent;border-radius:var(--r-sm);font-size:1.3rem;line-height:1;padding:6px 0;cursor:pointer;transition:background .12s ease,transform .12s ease}.chat-emoji-panel button:hover{background:var(--surface-3);transform:scale(1.15)}.chat-mention-pop{position:absolute;left:14px;right:14px;bottom:calc(100% + 8px);z-index:3;max-height:232px;overflow-y:auto;padding:6px;border-radius:14px;border:1px solid var(--border-med);background:var(--surface-2);box-shadow:0 18px 44px #00000080,0 0 0 1px var(--border)}.chat-mention-opt{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:transparent;border-radius:10px;cursor:pointer;text-align:left;color:var(--text-1);transition:background .12s ease}.chat-mention-opt:hover,.chat-mention-opt.active{background:var(--surface-3)}.chat-mention-ava{flex-shrink:0;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:.74rem;font-weight:700;background:var(--accent-dim);color:var(--accent)}.chat-mention-opt.all .chat-mention-ava{background:var(--accent);color:var(--on-accent);font-size:.95rem}.chat-mention-name{font-size:.9rem;font-weight:550}.chat-mention-hint{margin-left:auto;font-size:.72rem;color:var(--text-3)}.chat-mention-tag{font-weight:650;color:var(--accent);background:var(--accent-dim);border-radius:5px;padding:0 3px}.chat-msg.mine .chat-bubble .chat-mention-tag{color:var(--on-accent);background:#ffffff38}.chat-msg.mention-me .chat-bubble{box-shadow:inset 0 0 0 1.5px var(--accent);background:var(--accent-dim)}.chat-modal-backdrop{z-index:700}.chat-new-modal{width:min(460px,100%);max-height:min(80vh,620px);display:flex;flex-direction:column;padding:0}.chat-new-modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 10px}.chat-new-modal>header p{margin:0;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.chat-new-modal>header h2{margin:2px 0 0;font-size:1.1rem;color:var(--text-1)}.chat-new-modal>header button{background:transparent;border:none;color:var(--text-2);padding:4px;border-radius:var(--r-sm)}.chat-new-modal>header button:hover{color:var(--text-1);background:var(--surface-2)}.chat-group-name{display:flex;flex-direction:column;gap:6px;padding:6px 20px 4px;font-size:.82rem;color:var(--text-2)}.chat-group-name input{height:42px;padding:0 14px;border-radius:var(--r-md);border:1px solid var(--border-med);background:var(--surface-2);color:var(--text-1);outline:none}.chat-group-name input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.chat-everyone-toggle{display:flex;align-items:center;gap:12px;margin:10px 20px 2px;padding:10px 12px;border:1px solid var(--border-med);border-radius:var(--r-md);background:var(--surface-2);cursor:pointer;transition:border-color .15s ease,background .15s ease}.chat-everyone-toggle.on{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-dim)}.chat-everyone-toggle input{position:absolute;opacity:0;pointer-events:none}.chat-everyone-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.chat-everyone-text strong{font-size:.92rem;color:var(--text-1)}.chat-everyone-text small{font-size:.76rem;color:var(--text-2)}.chat-switch-mini{flex-shrink:0;width:42px;height:24px;padding:3px;border-radius:999px;background:var(--surface-3);transition:background .18s ease}.chat-everyone-toggle.on .chat-switch-mini{background:var(--accent)}.chat-switch-mini-knob{display:block;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0006;transition:transform .18s cubic-bezier(.22,1,.36,1)}.chat-everyone-toggle.on .chat-switch-mini-knob{transform:translate(18px)}.chat-everyone-note{margin:8px 20px 20px;padding:12px 14px;border-radius:var(--r-md);border:1px dashed color-mix(in srgb,var(--accent) 35%,transparent);background:var(--accent-dim);color:var(--text-2);font-size:.82rem;line-height:1.5}.chat-people-search{margin:10px 20px 6px}.chat-people{flex:1;overflow-y:auto;padding:4px 12px 8px;display:flex;flex-direction:column;gap:2px}.chat-person{display:flex;align-items:center;gap:12px;width:100%;padding:8px 10px;border-radius:var(--r-md);border:1px solid transparent;background:transparent;text-align:left;color:var(--text-1);cursor:pointer;transition:background .15s ease}.chat-person:hover{background:var(--surface-2)}.chat-person .chat-avatar{width:36px;height:36px}.chat-person-name{flex:1;min-width:0;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-person.selectable input{position:absolute;opacity:0;pointer-events:none}.chat-person .chat-check{flex-shrink:0;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1.5px solid var(--border-hi);color:var(--on-accent)}.chat-person.on{background:var(--accent-dim)}.chat-person.on .chat-check{background:var(--accent);border-color:var(--accent)}.chat-switch{flex-shrink:0;margin-left:auto;width:48px;height:28px;padding:3px;border-radius:999px;border:none;background:var(--surface-3);transition:background .18s ease}.chat-switch.on{background:var(--accent)}.chat-switch-knob{display:block;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0006;transition:transform .18s cubic-bezier(.22,1,.36,1)}.chat-switch.on .chat-switch-knob{transform:translate(20px)}.chat-admin-groups{list-style:none;margin:10px 0 18px;padding:0;display:flex;flex-direction:column;gap:8px}.chat-admin-groups li{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2)}.chat-admin-groups li.is-default{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--accent-dim)}.chat-admin-group-top{display:flex;align-items:center;gap:12px}.chat-admin-group-settings{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;padding-top:10px;border-top:1px solid var(--border)}.chat-retention{display:flex;align-items:center;gap:8px;font-size:.84rem;color:var(--text-2)}.chat-retention input{width:64px;height:34px;text-align:center;border-radius:var(--r-sm);border:1px solid var(--border-med);background:var(--surface-1);color:var(--text-1);outline:none}.chat-retention input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.chat-retention-hint{flex:1;min-width:150px;font-size:.76rem;color:var(--text-3)}.chat-admin-clear{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border-med);background:transparent;color:var(--danger);font-size:.82rem;transition:background .15s ease}.chat-admin-clear:hover{background:var(--danger-dim)}.chat-admin-group-name{font-weight:600;color:var(--text-1)}.chat-admin-group-meta{margin-left:auto;font-size:.78rem;color:var(--text-3)}.funktioner-stack{display:flex;flex-direction:column;gap:18px}.module-list{list-style:none;margin:8px 0 16px;padding:0;display:flex;flex-direction:column;gap:8px}.module-row{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2)}.module-row.on{border-color:color-mix(in srgb,var(--accent) 38%,transparent);background:var(--accent-dim)}.module-icon{flex-shrink:0;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-md);background:var(--surface-3);color:var(--accent)}.module-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.module-text strong{color:var(--text-1);font-size:.94rem}.module-text small{color:var(--text-2);font-size:.8rem}.module-acc{border:1px solid var(--border-med);border-radius:var(--r-lg);background:var(--surface-1);overflow:hidden}.module-acc-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border:none;background:transparent;color:var(--text-1);transition:background .15s ease}.module-acc-head:hover{background:var(--surface-2)}.module-acc.open .module-acc-head{border-bottom:1px solid var(--border)}.module-acc-title{display:flex;align-items:center;gap:10px;font-size:1.02rem;font-weight:600;letter-spacing:-.01em}.module-acc-title svg{color:var(--accent)}.module-acc-chevron{color:var(--text-3);transition:transform .2s ease}.module-acc.open .module-acc-chevron{transform:rotate(180deg)}.module-acc-body{padding:4px 16px 16px}.module-acc-body>.panel{border:none;background:transparent;box-shadow:none;padding:12px 4px 0}.chat-admin-create{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.chat-admin-create .input-icon{flex:1;min-width:220px;margin:0}.chat-admin-create .primary-action{flex-shrink:0}@media(prefers-reduced-motion:reduce){.chat-overlay{animation:none}.chat-switch-knob,.chat-switch-mini-knob{transition:none}}@media(min-width:761px){.chat-overlay{grid-template-columns:340px 1fr}.chat-overlay .chat-list,.chat-overlay.has-active .chat-list{display:flex}.chat-overlay:not(.has-active) .chat-thread{display:flex}.chat-back{display:none}}.pass-toggle{display:inline-flex;gap:2px;padding:3px;margin:4px 0 18px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px}.pass-toggle-btn{appearance:none;border:0;background:transparent;color:var(--text-2);font-size:.86rem;font-weight:600;padding:7px 16px;border-radius:999px;cursor:pointer;transition:color .15s ease,background .15s ease}.pass-toggle-btn:hover{color:var(--text-1)}.pass-toggle-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pass-toggle-btn.active{background:var(--accent);color:var(--on-accent);box-shadow:0 2px 8px var(--accent-glow)}.pass-day-group{margin-top:18px}.pass-day{display:flex;align-items:baseline;gap:8px;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--border)}.pass-day-date{font-weight:500;letter-spacing:0;text-transform:none;color:var(--text-3)}.pass-cards{display:flex;flex-direction:column;gap:8px}.pass-card{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color .15s ease,background .15s ease,transform .15s ease}.pass-card:hover{border-color:var(--border-med);background:var(--surface-2)}.pass-card.is-match{border-left:3px solid var(--accent)}.pass-card-time{display:inline-flex;align-items:center;gap:6px;min-width:116px;font-variant-numeric:tabular-nums;font-weight:700;font-size:.9rem;color:var(--text-1)}.pass-card-time svg{color:var(--accent);flex-shrink:0}.pass-card-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.pass-card-body strong{font-size:.92rem;color:var(--text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pass-card-sub{font-size:.78rem;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pass-card-action{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.pass-card-subline{display:flex;align-items:center;gap:8px;min-width:0}.pass-card-subline .pass-card-sub{flex:0 1 auto}.pass-kompetens{flex:none;padding:1px 8px;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.01em;white-space:nowrap;border:1px solid var(--border-med);background:var(--surface-2);color:var(--text-2)}.pass-rep{display:inline-flex;align-items:center;gap:4px;font-size:.76rem;font-weight:700;white-space:nowrap}.pass-rep.ok{color:var(--accent)}.pass-rep.none{color:var(--text-3);font-weight:500}.pass-rep.miss-plain{color:#d97706}button.pass-rep.miss{padding:3px 10px;border-radius:999px;cursor:pointer;border:1px solid var(--accent);background:var(--accent-dim);color:var(--accent)}button.pass-rep.miss:hover{background:var(--accent);color:var(--on-accent)}button.pass-rep.miss:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tr-need-incident{display:inline-block;margin-top:2px;font-size:.7rem;font-weight:700;color:#d97706;white-space:nowrap}button.tr-need-incident{padding:1px 8px;border-radius:999px;cursor:pointer;border:1px solid #d97706;background:transparent}button.tr-need-incident:hover{background:#d97706;color:#fff}button.tr-need-incident:focus-visible{outline:2px solid #d97706;outline-offset:2px}.missing-reports{margin-top:12px}.missing-row{display:grid;grid-template-columns:1.2fr 1fr 1.4fr auto;gap:12px;align-items:center;padding:10px 12px;font-size:.85rem;border-bottom:1px solid var(--border)}.missing-row.admin{grid-template-columns:1.3fr 1.2fr 1fr 1.4fr}.missing-head{font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);border-bottom:1px solid var(--border-med)}.missing-schema{color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.missing-action{justify-self:end}.missing-report-btn{padding:5px 12px;border-radius:999px;cursor:pointer;white-space:nowrap;font-size:.78rem;font-weight:700;border:1px solid var(--accent);background:var(--accent-dim);color:var(--accent)}.missing-report-btn:hover{background:var(--accent);color:var(--on-accent)}.missing-report-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:640px){.missing-row{grid-template-columns:1fr auto}.missing-row.admin{grid-template-columns:1fr 1fr}.missing-head{display:none}}.pass-signup-btn{appearance:none;border:0;background:var(--accent);color:var(--on-accent);font-size:.86rem;font-weight:700;padding:8px 20px;border-radius:var(--r-sm);cursor:pointer;transition:transform .12s ease,box-shadow .15s ease,opacity .15s ease}.pass-signup-btn:hover{box-shadow:0 3px 12px var(--accent-glow);transform:translateY(-1px)}.pass-signup-btn:active{transform:translateY(0)}.pass-signup-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pass-signup-btn:disabled{opacity:.5;cursor:default;box-shadow:none;transform:none}.pass-empty{padding:28px 20px;text-align:center;background:var(--surface-1);border:1px dashed var(--border-med);border-radius:var(--r-md);color:var(--text-2)}.pass-empty p{margin:0 auto 16px;max-width:42ch}.pass-empty-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.avail-editor{display:flex;flex-direction:column;gap:4px}.avail-days{display:flex;flex-direction:column;gap:8px;margin:8px 0 4px}.avail-day{display:grid;grid-template-columns:150px 1fr;align-items:start;gap:16px;padding:12px 14px;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-md)}.avail-day-head{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:0}.avail-day-head strong{font-size:.9rem;color:var(--text-1)}.avail-add{appearance:none;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--border-med);background:transparent;color:var(--accent);font-size:.78rem;font-weight:600;padding:4px 10px;border-radius:var(--r-sm);cursor:pointer;transition:background .15s ease,border-color .15s ease}.avail-add:hover{background:var(--accent-dim);border-color:var(--accent)}.avail-add:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.avail-add:disabled{opacity:.45;cursor:default}.avail-windows{display:flex;flex-direction:column;gap:6px}.avail-window{display:flex;align-items:center;gap:6px}.avail-window input[type=time]{flex:0 0 auto;width:116px;padding:6px 8px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-1);font-variant-numeric:tabular-nums}.avail-window input[type=time]:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.avail-dash{color:var(--text-3)}.avail-remove{appearance:none;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--text-3);cursor:pointer;padding:4px;border-radius:var(--r-sm);transition:color .15s ease,background .15s ease}.avail-remove:hover{color:var(--danger);background:var(--accent-dim)}.avail-remove:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.avail-empty-day{font-size:.8rem;color:var(--text-3);font-style:italic}.avail-exc-add{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:4px}.avail-exc-field{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:var(--text-2)}.avail-exc-hint{font-size:.78rem;margin:0 0 10px}.avail-exc-add input[type=date]{padding:7px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-1)}.avail-exc-add input[type=date]:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.avail-save{margin-top:18px}.avail-exc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.avail-exc-list li{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-sm);font-size:.86rem;color:var(--text-1)}@media(max-width:768px){.pass-card{flex-wrap:wrap;gap:8px 12px}.pass-card-time{min-width:96px}.pass-card-action{margin-left:auto}.avail-day{grid-template-columns:1fr;gap:10px}.avail-day-head{flex-direction:row;align-items:center;justify-content:space-between}}.myschedule-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;align-items:start}.myschedule-col{min-width:0;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);padding:14px 16px}.myschedule-title{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:.9rem;font-weight:700;color:var(--text-1)}.myschedule-title svg{color:var(--accent)}.myschedule-title .schedule-group-count{margin-left:2px}.overview-panel{display:flex;flex-direction:column;gap:18px}.ov-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.ov-filters select{width:auto;min-width:150px;min-height:0;flex:0 1 auto;padding:8px 12px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-1);font-size:.86rem;cursor:pointer}.ov-seg{display:inline-flex;border:1px solid var(--border-med);border-radius:var(--r-sm);overflow:hidden}.ov-seg button{padding:8px 16px;border:none;background:var(--surface-2);color:var(--text-2);font-size:.86rem;font-weight:600;cursor:pointer}.ov-seg button.active{background:var(--accent);color:var(--on-accent)}.ov-clear{padding:8px 12px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:none;color:var(--text-2);font-size:.82rem;cursor:pointer}.ov-clear:hover{color:var(--text-1)}.ov-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.ov-stat{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);padding:14px 16px;display:flex;flex-direction:column;gap:4px;min-width:0}.ov-stat.hero{background:var(--surface-1);border-color:color-mix(in srgb,var(--accent) 34%,var(--border));box-shadow:var(--shadow-sm),0 0 0 1px var(--accent-dim) inset}.ov-stat-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);font-weight:700}.ov-stat-head svg{color:var(--accent);flex-shrink:0}.ov-stat strong{font-size:1.4rem;color:var(--text-1);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.ov-stat.hero strong{font-size:clamp(1.5rem,1.6vw,1.85rem);letter-spacing:-.03em}.ov-stat.hero .ov-stat-head{color:var(--text-1)}.ov-stat small{font-size:.78rem;color:var(--text-2)}.ov-stat-figure{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.ov-stat-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:6px;min-height:30px}.ov-stat-foot .dash-spark{flex-shrink:0;opacity:.85}.ov-delta{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:999px;font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-2);background:var(--surface-3);border:1px solid var(--border);white-space:nowrap}.ov-delta svg{flex-shrink:0}.ov-delta.flat{color:var(--text-3)}.ov-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ov-card{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);padding:16px 18px;min-width:0}.ov-card.ov-wide{grid-column:1 / -1}.ov-card h3{margin:0 0 14px;font-size:.9rem;font-weight:700;color:var(--text-1)}.ov-dot{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px;vertical-align:middle}.ov-vbars{display:flex;align-items:flex-end;gap:6px;height:160px}.ov-vbar{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:0;height:100%}.ov-vbar-track{position:relative;width:100%;max-width:34px;flex:1;display:flex;flex-direction:column-reverse;border-radius:5px 5px 0 0;overflow:hidden;background:var(--surface-3)}.ov-vbar-fill{width:100%;transition:height .6s cubic-bezier(.22,1,.36,1)}.ov-vbar-fill.base{background:var(--accent)}.ov-vbar-fill.ob{background:var(--ov-ob-2)}.ov-vbar-fill.jour{background:var(--ov-jour)}.ov-vbar small{font-size:.68rem;color:var(--text-2)}.ov-vbar.active small{color:var(--text-1);font-weight:700}.ov-vbar.active .ov-vbar-track{outline:2px solid var(--accent);outline-offset:1px}.ov-bar-legend{display:flex;gap:18px;margin-top:12px;font-size:.78rem;color:var(--text-2)}.ov-donut-wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.ov-donut{width:130px;height:130px;flex-shrink:0}.ov-donut-num{font-size:20px;font-weight:800;fill:var(--text-1)}.ov-donut-lbl{font-size:9px;letter-spacing:.1em;fill:var(--text-2);text-transform:uppercase}.ov-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:.82rem;color:var(--text-2);min-width:0}.ov-legend li{display:flex;align-items:center;gap:4px}.ov-legend b{margin-left:auto;color:var(--text-1);font-variant-numeric:tabular-nums}.ov-hbars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ov-hbar{width:100%;display:grid;grid-template-columns:minmax(90px,30%) 1fr auto;align-items:center;gap:10px;background:none;border:none;padding:2px 0;cursor:pointer;font:inherit;text-align:left}.ov-hbar:disabled{cursor:default}.ov-hbar-label{font-size:.82rem;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ov-hbar-track{height:10px;border-radius:999px;background:var(--surface-3);overflow:hidden}.ov-hbar-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 60%,#22c55e));transition:width .6s cubic-bezier(.22,1,.36,1)}.ov-hbar-val{font-size:.8rem;color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap}.ov-hbar:hover:not(:disabled) .ov-hbar-label{color:var(--accent)}.ov-abs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ov-abs li{display:flex;align-items:center;justify-content:space-between;font-size:.85rem;color:var(--text-1);padding:8px 0;border-bottom:1px solid var(--border)}.ov-abs li:last-child{border-bottom:none}.ov-abs b{font-variant-numeric:tabular-nums}.ov-table-card h3{margin-bottom:12px}.ov-table-scroll{overflow-x:auto}.ov-table{width:100%;border-collapse:collapse;font-size:.85rem}.ov-table th{text-align:left;padding:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);font-weight:700;border-bottom:1px solid var(--border-med);white-space:nowrap}.ov-table th.num,.ov-table td.num{text-align:right;font-variant-numeric:tabular-nums}.ov-table th.sorted{color:var(--accent)}.ov-sort{width:100%;display:inline-flex;align-items:center;gap:4px;padding:9px 10px;background:none;border:none;cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit}.ov-table th.num .ov-sort{justify-content:flex-end}.ov-sort:hover{color:var(--text-1)}.ov-sort-caret{opacity:0;transition:transform .15s ease,opacity .15s ease}.ov-sort:hover .ov-sort-caret{opacity:.5}.ov-sort-caret.on{opacity:1}.ov-sort-caret.asc{transform:rotate(180deg)}.ov-table td{padding:9px 10px;border-bottom:1px solid var(--border);color:var(--text-1)}.ov-table tbody tr{cursor:pointer;transition:background .12s ease}.ov-table tbody tr:hover{background:var(--surface-3)}.ov-table tbody tr.sel{background:var(--accent-dim)}.ov-table tfoot td{padding:10px;border-top:2px solid var(--border-med);font-weight:700;color:var(--text-1)}.ov-th{text-align:left}.ov-seg button:focus-visible,.ov-clear:focus-visible,.ov-filters select:focus-visible,.ov-sort:focus-visible,.ov-vbar:focus-visible,.ov-hbar:focus-visible,.ov-table tbody tr:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.ov-vbar:focus-visible .ov-vbar-track{outline:2px solid var(--accent);outline-offset:1px}.ov-seg button:hover:not(.active){color:var(--text-1);background:var(--surface-3)}.ov-seg button:active:not(.active){transform:translateY(1px)}.ov-clear:active{transform:translateY(1px)}.ov-refresh{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.ov-refresh:disabled{opacity:.5;cursor:default}.ov-load-error{display:flex;align-items:center;gap:8px;margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--warning) 40%,var(--border));border-radius:var(--r-md);background:color-mix(in srgb,var(--warning) 10%,transparent);color:var(--text-1);font-size:.84rem}.ov-load-error svg{color:var(--warning);flex-shrink:0}.ov-history-note{display:flex;align-items:flex-start;gap:9px;margin:0;padding:10px 12px;border:1px solid var(--border-med);border-left:3px solid var(--ov-jour);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);font-size:.83rem;line-height:1.5}.ov-history-note svg{color:var(--ov-jour);flex-shrink:0;margin-top:2px}.ov-history-note strong{color:var(--text-1)}.ov-stat.na strong{color:var(--text-3)}.spinner{display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:-.125em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spinner-rotate .62s linear infinite}@keyframes spinner-rotate{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.4s}}.notify-pending{display:flex;align-items:flex-start;gap:9px;margin:0 0 4px;padding:11px 14px;border:1px solid var(--border-med);border-left:3px solid var(--accent);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);font-size:.85rem;line-height:1.5}.notify-pending svg{color:var(--accent);flex-shrink:0;margin-top:2px}.notify-pending strong{color:var(--text-1)}.schedule-builder-inline .report-modal.notify-confirm-modal,.notify-confirm-modal{width:min(460px,100%);max-width:min(460px,100%);max-height:min(86vh,860px);overflow:auto;padding:clamp(18px,3vw,26px);border:1px solid var(--border-med);border-radius:var(--r-md);background:var(--surface-1);box-shadow:0 0 0 1px var(--border),0 40px 100px #000000a6}.notify-confirm-modal h2{margin:0 0 6px;font-size:1.15rem;color:var(--text-1)}.notify-confirm-modal>p{margin:0;font-size:.9rem;line-height:1.55;color:var(--text-2)}.notify-group{display:flex;align-items:center;gap:6px;margin:16px 0 6px;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.notify-group.is-off{color:var(--text-2)}.notify-group svg{flex-shrink:0}.notify-list{list-style:none;margin:0;padding:0;max-height:220px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--r-md)}.notify-list li{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--border);font-size:.88rem;color:var(--text-1)}.notify-list li:last-child{border-bottom:none}.notify-who{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notify-rows{flex-shrink:0;font-size:.74rem;font-weight:700;color:var(--text-2);background:var(--surface-3);border-radius:999px;padding:2px 8px}.notify-noemail{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;font-size:.74rem;font-weight:600;color:var(--warning)}.notify-warn{display:flex;align-items:center;gap:7px;margin:12px 0 0;font-size:.82rem;color:var(--warning)}.notify-warn svg{flex-shrink:0}.notify-note{margin:12px 0 0;font-size:.78rem;line-height:1.55;color:var(--text-3)}.ov-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-med);margin-bottom:4px}.ov-tabs button{padding:9px 16px;border:none;background:none;cursor:pointer;font-size:.88rem;font-weight:600;color:var(--text-2);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .12s ease,border-color .12s ease}.ov-tabs button:hover{color:var(--text-1)}.ov-tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.ov-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--r-sm) var(--r-sm) 0 0}.ov-compare{display:flex;flex-direction:column;gap:16px}.ov-cmp-vs{color:var(--text-2);font-size:.86rem;font-weight:600}.ov-cmp-period{margin:0;font-size:.9rem;color:var(--text-2)}.ov-cmp-period strong{color:var(--text-1)}.ov-cmp-hint{color:var(--text-3);font-size:.82rem}.ov-cmp-stat{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);padding:14px 16px;display:flex;flex-direction:column;gap:6px;min-width:0;min-height:104px;animation:ov-rise .42s cubic-bezier(.22,1,.36,1) backwards}.ov-cmp-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);font-weight:700}.ov-cmp-head svg{color:var(--accent);flex-shrink:0}.ov-cmp-stat strong{font-size:1.5rem;color:var(--text-1);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.ov-cmp-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;flex-wrap:wrap}.ov-cmp-b{font-size:.8rem;color:var(--text-2);font-variant-numeric:tabular-nums}.ov-cmp-bars{display:flex;align-items:flex-end;gap:6px;height:170px}.ov-cmp-month{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;min-width:0}.ov-cmp-pair{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:2px}.ov-cmp-bar{flex:1;max-width:16px;border-radius:3px 3px 0 0;transition:height .6s cubic-bezier(.22,1,.36,1);transform-origin:bottom;animation:ov-grow-y .5s cubic-bezier(.22,1,.36,1) backwards}.ov-cmp-bar.a{background:var(--accent)}.ov-cmp-bar.b{background:var(--ov-regular)}.ov-cmp-month small{font-size:.68rem;color:var(--text-2)}.ov-cmp-month.out{opacity:.28}@media(max-width:560px){.ov-cmp-bars{height:130px;gap:3px}.ov-cmp-month small{font-size:.6rem}}@keyframes ov-rise{0%{opacity:0;transform:translateY(9px)}}@keyframes ov-grow-y{0%{transform:scaleY(0)}}@keyframes ov-grow-x{0%{transform:scaleX(0)}}@keyframes ov-fade{0%{opacity:0}}.ov-kpis .ov-stat{animation:ov-rise .42s cubic-bezier(.22,1,.36,1) backwards}.ov-kpis .ov-stat:nth-child(1){animation-delay:0ms}.ov-kpis .ov-stat:nth-child(2){animation-delay:60ms}.ov-kpis .ov-stat:nth-child(3){animation-delay:.12s}.ov-kpis .ov-stat:nth-child(4){animation-delay:.18s}.ov-kpis .ov-stat:nth-child(5){animation-delay:.24s}.ov-kpis .ov-stat:nth-child(6){animation-delay:.3s}.ov-kpis .ov-stat.ov-sk{animation:none}.ov-vbar-fill{transform-origin:bottom;animation:ov-grow-y .5s cubic-bezier(.22,1,.36,1) backwards}.ov-vbar:nth-child(1) .ov-vbar-fill{animation-delay:0ms}.ov-vbar:nth-child(2) .ov-vbar-fill{animation-delay:40ms}.ov-vbar:nth-child(3) .ov-vbar-fill{animation-delay:80ms}.ov-vbar:nth-child(4) .ov-vbar-fill{animation-delay:.12s}.ov-vbar:nth-child(5) .ov-vbar-fill{animation-delay:.16s}.ov-vbar:nth-child(6) .ov-vbar-fill{animation-delay:.2s}.ov-vbar:nth-child(7) .ov-vbar-fill{animation-delay:.24s}.ov-vbar:nth-child(8) .ov-vbar-fill{animation-delay:.28s}.ov-vbar:nth-child(9) .ov-vbar-fill{animation-delay:.32s}.ov-vbar:nth-child(10) .ov-vbar-fill{animation-delay:.36s}.ov-vbar:nth-child(11) .ov-vbar-fill{animation-delay:.4s}.ov-vbar:nth-child(12) .ov-vbar-fill{animation-delay:.44s}.ov-hbar-fill{transform-origin:left;animation:ov-grow-x .5s cubic-bezier(.22,1,.36,1) backwards}.ov-hbars li:nth-child(1) .ov-hbar-fill{animation-delay:0ms}.ov-hbars li:nth-child(2) .ov-hbar-fill{animation-delay:50ms}.ov-hbars li:nth-child(3) .ov-hbar-fill{animation-delay:.1s}.ov-hbars li:nth-child(4) .ov-hbar-fill{animation-delay:.15s}.ov-hbars li:nth-child(5) .ov-hbar-fill{animation-delay:.2s}.ov-hbars li:nth-child(6) .ov-hbar-fill{animation-delay:.25s}.ov-hbars li:nth-child(7) .ov-hbar-fill{animation-delay:.3s}.ov-hbars li:nth-child(8) .ov-hbar-fill{animation-delay:.35s}.ov-charts .ov-card{animation:ov-rise .45s cubic-bezier(.22,1,.36,1) backwards}.ov-charts .ov-card:nth-child(1){animation-delay:60ms}.ov-charts .ov-card:nth-child(2){animation-delay:.12s}.ov-charts .ov-card:nth-child(3){animation-delay:.18s}.ov-charts .ov-card:nth-child(4){animation-delay:.24s}.ov-charts .ov-card:nth-child(5){animation-delay:.3s}.ov-charts .ov-card:nth-child(6){animation-delay:.36s}.ov-charts .ov-card.ov-sk{animation:none}.ov-table-card{animation:ov-fade .5s ease .2s backwards}.ov-history-note{animation:ov-fade .5s ease backwards}.ov-legend li{animation:ov-rise .4s ease backwards}.ov-legend li:nth-child(1){animation-delay:.12s}.ov-legend li:nth-child(2){animation-delay:.17s}.ov-legend li:nth-child(3){animation-delay:.22s}.ov-legend li:nth-child(4){animation-delay:.27s}.ov-legend li:nth-child(5){animation-delay:.32s}.ov-legend li:nth-child(6){animation-delay:.37s}@keyframes ov-draw{0%{stroke-dashoffset:100}}.dash-spark-line{stroke-dasharray:100;animation:ov-draw .75s cubic-bezier(.33,1,.68,1) backwards}.dash-spark-area{animation:ov-fade .5s ease .3s backwards}.dash-spark-dot{animation:ov-fade .3s ease .7s backwards}@media(prefers-reduced-motion:reduce){.ov-kpis .ov-stat,.ov-cmp-stat,.ov-charts .ov-card,.ov-table-card,.ov-history-note,.ov-legend li,.ov-vbar-fill,.ov-hbar-fill,.ov-cmp-bar,.dash-spark-line,.dash-spark-area,.dash-spark-dot{animation:none}.ov-vbar-fill,.ov-hbar-fill,.ov-cmp-bar{transition:none}.ov-donut circle{transition:none!important}.dash-spark-line{stroke-dasharray:none}}.ov-skeleton{display:flex;flex-direction:column;gap:18px}.ov-sk{position:relative;overflow:hidden;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md)}.ov-stat.ov-sk{min-height:92px}.ov-stat.ov-sk.hero{min-height:108px}.ov-sk-tall{min-height:232px}.ov-sk-mid{min-height:190px}.ov-sk:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--text-1) 6%,transparent),transparent);transform:translate(-100%);animation:ov-sheen 1.4s ease-in-out infinite}@keyframes ov-sheen{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.ov-sk:after{animation:none}}@media(max-width:560px){.ov-stat.hero{grid-column:1 / -1}.ov-stat.hero strong{font-size:1.7rem}.ov-refresh{margin-left:0}}@media(max-width:720px){.ov-charts{grid-template-columns:1fr}}@media(max-width:560px){.ov-filters{flex-direction:column;align-items:stretch}.ov-filters select,.ov-filters .ov-seg,.ov-filters .ov-clear{width:100%}.ov-seg button{flex:1}}@media(prefers-reduced-motion:reduce){.ov-vbar-fill,.ov-hbar-fill,.ov-donut circle{transition:none!important}}.checkin-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:18px;border:1px solid var(--border-med);border-radius:var(--r-md);background:var(--surface-2)}.checkin-bar.ready{border-color:color-mix(in srgb,var(--accent) 45%,var(--border-med));background:var(--accent-dim)}.checkin-bar.on{border-color:color-mix(in srgb,#16a34a 55%,var(--border-med));background:color-mix(in srgb,#16a34a 12%,var(--surface-2))}.checkin-bar .ci-lead{color:var(--text-2);flex-shrink:0}.checkin-bar .ci-dot{width:10px;height:10px;border-radius:50%;background:#16a34a;flex-shrink:0;box-shadow:0 0 0 4px color-mix(in srgb,#16a34a 22%,transparent);animation:ci-pulse 2s ease-in-out infinite}@keyframes ci-pulse{0%,to{opacity:1}50%{opacity:.5}}.checkin-bar .ci-info{display:flex;flex-direction:column;gap:1px;min-width:0;margin-right:auto}.checkin-bar .ci-info strong{font-size:.92rem;color:var(--text-1)}.checkin-bar .ci-info small{font-size:.8rem;color:var(--text-2)}.ci-timer{font-variant-numeric:tabular-nums;font-weight:700;color:var(--text-1)}.ci-cards{padding:10px;gap:8px;display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start}.ci-card{flex:1 1 240px;min-width:200px;max-width:340px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2)}.ci-card .ci-avatar{flex-shrink:0;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--accent-dim);color:var(--accent);font-size:.8rem;font-weight:700;letter-spacing:.02em}.ci-card .dash-row-main{flex:1 1 auto;min-width:0;gap:1px}.ci-card-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.ci-card-top strong{display:flex;align-items:baseline;min-width:0}.ci-card-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ci-card .dash-row-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ci-card .ci-timer{flex-shrink:0;font-size:.72rem;font-weight:600;color:var(--text-2);font-variant-numeric:tabular-nums}.ci-card-jour{border-color:color-mix(in srgb,#7c3aed 40%,var(--border));background:color-mix(in srgb,#7c3aed 8%,var(--surface-2))}.ci-card-jour .ci-avatar{background:color-mix(in srgb,#7c3aed 20%,transparent);color:#7c3aed}.ci-jour-tag{flex-shrink:0;margin-left:6px;padding:1px 7px;border-radius:999px;font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb,#7c3aed 18%,transparent);color:#7c3aed}.checkin-bar .ci-btn{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:8px 14px;border-radius:var(--r-sm);border:1px solid transparent;font-size:.86rem;font-weight:600;cursor:pointer;transition:transform .08s ease,background .12s ease}.checkin-bar .ci-btn:active{transform:scale(.97)}.checkin-bar .ci-btn.in{background:var(--accent);color:var(--on-accent)}.checkin-bar .ci-btn.out{background:#16a34a;color:#fff}.checkin-bar .ci-btn.report{background:var(--surface-1);color:var(--text-1);border-color:var(--border-med)}.checkin-bar .ci-btn.report svg{color:var(--warning)}.checkin-bar .ci-btn.report:hover{border-color:var(--warning);background:color-mix(in srgb,var(--warning) 10%,var(--surface-1))}.checkin-bar .ci-btn.report:focus-visible{outline:2px solid var(--warning);outline-offset:2px}.checkin-bar .ci-btn:disabled{opacity:.55;cursor:default}.checkin-bar .ci-pick{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.checkin-bar .ci-pick select{padding:7px 10px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-1);color:var(--text-1);font-size:.86rem;max-width:180px}.checkin-bar .ci-msg{font-size:.8rem;color:var(--warning);flex-basis:100%}@media(max-width:560px){.checkin-bar{flex-wrap:wrap}.checkin-bar .ci-btn,.checkin-bar .ci-pick{width:100%;justify-content:center}.checkin-bar .ci-pick{flex-direction:column;align-items:stretch;gap:10px}.checkin-bar .ci-pick select{max-width:none;width:100%;min-height:44px}.checkin-bar .ci-pick .ci-btn{width:100%}}.checkout-body{display:flex;flex-direction:column;gap:14px;padding:4px 0}.checkout-times{display:flex;flex-wrap:wrap;gap:16px}.checkout-times>span,.checkout-times>label{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--text-1)}.checkout-times b{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);font-weight:700}.checkout-times input{padding:8px 10px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-1);font-size:.95rem;width:120px}.checkout-planned{font-size:.82rem;color:var(--text-2);margin:0}.checkout-worked{font-size:.92rem;color:var(--text-1);margin:0;padding:10px 12px;background:var(--accent-dim);border-radius:var(--r-sm)}.checkout-note{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:600;color:var(--text-2)}.checkout-note textarea{padding:9px 11px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-1);font-size:.9rem;font-family:inherit;resize:vertical}.checked-in-panel{margin-bottom:18px}.checked-in-panel .ci-count{font-size:.82rem;font-weight:700;color:var(--on-accent);background:var(--accent);border-radius:999px;padding:2px 10px}.ci-toggle{width:100%;border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-align:left}.checked-in-panel.is-open .ci-toggle{border-bottom:1px solid var(--border)}.ci-head-right{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.ci-chevron{color:var(--text-2);transition:transform .16s ease;flex-shrink:0}.checked-in-panel.is-open .ci-chevron{transform:rotate(180deg)}.help-backdrop{position:fixed;inset:0;z-index:800;background:#00000080;display:flex;justify-content:flex-end;animation:help-fade .15s ease}@keyframes help-fade{0%{opacity:0}to{opacity:1}}.help-drawer{width:min(460px,100%);height:100%;display:flex;flex-direction:column;background:var(--surface-1);border-left:1px solid var(--border);box-shadow:-24px 0 60px -20px #00000080;animation:help-slide .22s cubic-bezier(.22,1,.36,1)}@keyframes help-slide{0%{transform:translate(24px);opacity:.4}to{transform:translate(0);opacity:1}}.help-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border);padding-top:max(16px,env(safe-area-inset-top));flex-shrink:0}.help-title{display:inline-flex;align-items:center;gap:9px;font-weight:700;color:var(--text-1)}.help-title svg{color:var(--accent)}.help-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-size:.88rem;font-weight:600;color:var(--text-2);padding:4px 0}.help-back:hover{color:var(--text-1)}.help-close{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);cursor:pointer}.help-close:hover{color:var(--text-1);background:var(--surface-3)}.help-body{flex:1;overflow-y:auto;padding:18px}.help-search{display:flex;align-items:center;gap:8px;margin-bottom:18px;padding:9px 12px;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-3)}.help-search:focus-within{border-color:var(--accent)}.help-search svg{flex-shrink:0}.help-search input{flex:1;min-width:0;border:0;background:none;outline:none;color:var(--text-1);font-size:.9rem}.help-nohits{margin-top:4px}.help-cat{margin-bottom:22px}.help-cat h3{margin:0 0 8px;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.help-cat ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.help-cat li button{width:100%;text-align:left;padding:10px 12px;background:none;border:1px solid transparent;border-radius:var(--r-sm);color:var(--text-1);font-size:.92rem;cursor:pointer;transition:background .12s ease,border-color .12s ease}.help-cat li button:hover{background:var(--surface-2);border-color:var(--border)}.help-cat li button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.help-article{color:var(--text-1);line-height:1.7}.help-article h1{font-size:1.35rem;margin:0 0 14px;letter-spacing:-.02em}.help-article h2{font-size:1.05rem;margin:22px 0 8px}.help-article h3{font-size:.95rem;margin:18px 0 6px}.help-article p{margin:0 0 12px}.help-article ul,.help-article ol{margin:0 0 12px;padding-left:20px}.help-article li{margin-bottom:5px}.help-article a{color:var(--link)}.help-article code{background:var(--surface-2);padding:1px 5px;border-radius:4px;font-size:.86em;border:1px solid var(--border)}.help-article blockquote{margin:0 0 12px;padding:10px 14px;border-left:3px solid var(--accent);background:var(--accent-dim);border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--text-1)}.help-article blockquote p:last-child{margin-bottom:0}@media(max-width:640px){.help-drawer{width:100%;border-left:none}}.live-map-holder{height:min(68vh,640px);min-height:340px;width:100%;margin-top:6px;border-radius:var(--r-md, 14px);overflow:hidden;isolation:isolate;z-index:0}.native .live-map-holder{height:calc(100vh - 280px);min-height:320px;border-radius:var(--r-sm, 12px)}.live-map-pop strong{display:block}.live-map-place{margin-top:2px;font-size:13px}.live-map-when{margin-top:2px;font-size:12px;opacity:.72}.module-row.livemap-all{border-bottom:1px solid var(--border-med);border-radius:var(--r-sm) var(--r-sm) 0 0;margin-bottom:2px}.module-row.livemap-all strong{color:var(--accent)}.ci-loc{display:inline-flex;align-items:center;gap:4px;margin-top:2px;color:var(--accent)}.ci-loc svg{flex-shrink:0}.live-map-layout{display:flex;gap:14px;align-items:stretch}.live-map-layout .live-map-holder{flex:1 1 auto;min-width:0;width:auto;margin-top:0}.live-map-legend{list-style:none;margin:0;padding:0;width:244px;flex-shrink:0;height:min(68vh,640px);overflow-y:auto;border:1px solid var(--border);border-radius:var(--r-md, 14px);background:var(--surface-1)}.live-map-legend li+li{border-top:1px solid var(--border)}.live-legend-row{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;background:none;border:none;cursor:pointer;text-align:left;color:inherit;font:inherit}.live-legend-row:hover{background:var(--surface-2)}.live-legend-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.live-legend-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:1.5px solid #fff;box-shadow:0 0 0 1px #0000002e}.live-legend-text{display:flex;flex-direction:column;min-width:0}.live-legend-text strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-legend-text small{color:var(--text-3);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:760px){.live-map-layout{flex-direction:column}.live-map-legend{width:100%;height:auto;max-height:232px}}.push-compose{display:flex;flex-direction:column;gap:14px;margin:8px 0 6px}.push-field{display:flex;flex-direction:column;gap:6px}.push-field>span{font-size:.82rem;font-weight:650;color:var(--text-2)}.push-field input,.push-field textarea{width:100%}.push-field textarea{resize:vertical}.push-audience{display:flex;flex-direction:column;gap:8px}.push-audience-label{font-size:.82rem;font-weight:650;color:var(--text-2)}.push-checks{display:flex;flex-wrap:wrap;gap:8px 16px}.push-check{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:.9rem}.push-check input{width:16px;height:16px}.push-komps{display:flex;flex-direction:column;gap:6px;margin-top:2px;padding-top:8px;border-top:1px dashed var(--border)}.push-komps-label{font-size:.78rem;font-weight:650;color:var(--text-2)}.push-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:2px}.push-send{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:0;border-radius:var(--r-sm, 10px);background:var(--accent);color:var(--on-accent);font-weight:650;cursor:pointer;transition:filter .14s ease,transform .12s ease}.push-send:hover:not(:disabled){filter:brightness(1.05)}.push-send:active:not(:disabled){transform:scale(.97)}.push-send:disabled{opacity:.6;cursor:default}.push-msg{font-size:.88rem;color:var(--text-2)}.push-log-title{margin:20px 0 10px;font-size:.95rem}.push-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.push-log li{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-md, 12px);background:var(--surface-1)}.push-log-main{display:flex;flex-direction:column;gap:2px}.push-log-main strong{font-size:.92rem}.push-log-main small{color:var(--text-2)}.push-log-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.76rem;color:var(--text-3)}.biometric-lock{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:calc(24px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom));background:radial-gradient(ellipse 70% 45% at 50% 0%,color-mix(in srgb,var(--accent) 12%,transparent) 0%,transparent 70%),var(--bg)}.biometric-lock-logo{height:64px;width:auto;max-width:180px;object-fit:contain}.biometric-lock-title{margin:0;font-size:1.1rem;font-weight:650;color:var(--text-1)}.biometric-lock-btn{display:inline-flex;align-items:center;gap:9px;padding:13px 26px;border:0;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:1rem;font-weight:650;cursor:pointer;transition:filter .14s ease,transform .12s ease}.biometric-lock-btn:active{transform:scale(.97)}.biometric-lock-logout{margin-top:2px;border:0;background:none;color:var(--text-2);font:inherit;font-size:.9rem;text-decoration:underline;cursor:pointer}.backup-status{display:flex;align-items:center;gap:12px;padding:14px 16px;margin:8px 0 6px;border:1px solid var(--border);border-radius:var(--r-md, 12px);background:var(--surface-1);color:var(--accent)}.backup-status.stale{color:#d97706;border-color:color-mix(in srgb,#d97706 40%,var(--border))}.backup-status-text{display:flex;flex-direction:column;gap:2px;min-width:0}.backup-status-text strong{color:var(--text-1);font-size:.95rem}.backup-status-text small{color:var(--text-2)}.backup-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.backup-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border:1px solid var(--border);border-radius:var(--r-md, 12px);background:var(--surface-1)}.backup-list-main{display:flex;flex-direction:column;gap:2px;min-width:0}.backup-list-main strong{font-size:.9rem}.backup-list-main small{color:var(--text-3);font-size:.76rem;word-break:break-all}.sms-balance{margin:4px 0 12px;font-size:.9rem;color:var(--text-2)}.sms-balance strong{color:var(--text-1)}.sms-topup{display:inline-block;margin:2px 0 14px}.sms-confirm{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:var(--r-md, 12px);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));background:var(--accent-dim)}.sms-confirm strong{color:var(--text-1)}.sms-confirm small{color:var(--text-2)}.sms-recipients{list-style:none;margin:8px 0 0;padding:0;max-height:280px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--r-md, 12px);background:var(--surface-1)}.sms-recipients li{display:flex;align-items:center;gap:10px;padding:4px 12px;font-size:.82rem;line-height:1.3}.sms-recipients li+li{border-top:1px solid var(--border)}.sms-rec-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-1)}.sms-rec-phone{color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums}.sms-recipients li.invalid .sms-rec-name,.sms-recipients li.invalid .sms-rec-phone{color:#d97706}.sms-rec-flag{display:inline-flex;align-items:center;gap:4px;color:#d97706;font-size:.74rem;white-space:nowrap}.sms-reclist{margin-top:8px}.sms-reclist .sms-recipients{margin-top:6px}.sms-rec-all{display:flex;align-items:center;gap:8px;padding:2px 2px 0;font-size:.82rem;font-weight:600;color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.sms-rec-all input,.sms-rec-check{width:15px;height:15px;min-height:0;flex:none;margin:0;padding:0;border:0;cursor:pointer;accent-color:var(--accent)}.sms-rec-all input:disabled{cursor:not-allowed;opacity:.5}.native .sms-rec-all input,.native .sms-rec-check{width:22px;height:22px}.panic-panel .panic-btn{width:100%;padding:44px 20px;border:none;border-radius:16px;color:#fff;font-size:1.3rem;font-weight:800;letter-spacing:.04em;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;background:linear-gradient(90deg,#b91c1c 0 calc(var(--p, 0) * 100%),#dc2626 calc(var(--p, 0) * 100%))}.panic-panel .panic-btn.sending{opacity:.85;cursor:default}.panic-112{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:10px 16px;border:1px solid var(--border-med);border-radius:8px;text-decoration:none;color:var(--text-1);font-weight:700}.panic-result p{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--success)}.panic-active{border:1px solid var(--danger-dim);border-radius:10px;padding:14px;margin-bottom:16px;background:#f871710f}.panic-active h3{margin:0 0 8px}.panic-alarm-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--border);flex-wrap:wrap}.panic-alarm-row small{display:block;color:var(--text-3)}.panic-alarm-row a{display:inline-flex;align-items:center;gap:5px}.panic-alarm-actions{display:flex;gap:8px;align-items:center}.panic-modal-backdrop{z-index:600}.panic-modal{width:min(440px,100%);max-height:min(90vh,720px);display:flex;flex-direction:column;background:var(--surface-1);border:1px solid var(--border-med);border-radius:var(--r-md);overflow:hidden;padding-bottom:env(safe-area-inset-bottom)}.panic-modal-head{display:flex;align-items:center;justify-content:space-between;padding:max(16px,env(safe-area-inset-top)) 18px 16px;border-bottom:1px solid var(--border)}.panic-modal-head span{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:1.05rem;color:var(--text-1)}.panic-modal-head button{border:0;background:none;color:var(--text-2);font-weight:700;cursor:pointer;padding:6px}.panic-modal-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:28px 20px}.panic-modal-hint{text-align:center;margin:0}.panic-modal .panic-btn{width:100%;padding:52px 20px;border:none;border-radius:18px;color:#fff;font-size:1.35rem;font-weight:800;letter-spacing:.04em;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;background:linear-gradient(90deg,#b91c1c 0 calc(var(--p, 0) * 100%),#dc2626 calc(var(--p, 0) * 100%))}.panic-modal .panic-btn.sending{opacity:.85;cursor:default}.panic-modal .panic-result{text-align:center;display:flex;flex-direction:column;gap:14px;align-items:center}.panic-modal .panic-112{margin:0 18px 18px;justify-content:center}.panic-alert-backdrop{z-index:700}.panic-alert-modal{width:min(480px,100%);max-height:min(88vh,760px);display:flex;flex-direction:column;background:var(--surface-1);border:2px solid var(--danger);border-radius:var(--r-md);overflow:hidden;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 0 0 4px #dc26262e,0 24px 60px #00000080}.panic-alert-head{display:flex;align-items:center;gap:12px;padding:max(16px,env(safe-area-inset-top)) 20px 16px;color:#fff;background:var(--danger)}.panic-alert-head h2{margin:0;font-size:1.2rem;font-weight:800}.panic-alert-list{overflow-y:auto;padding:4px 18px}.panic-alert-row{padding:14px 0;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.panic-alert-row:last-child{border-bottom:0}.panic-alert-info strong{font-size:1.05rem;color:var(--text-1);display:block}.panic-alert-info small{color:var(--text-3)}.panic-alert-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.panic-alert-actions .link-button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border-med);border-radius:999px;text-decoration:none;color:var(--text-1);font-weight:700;font-size:.85rem}.panic-alert-actions .primary-action{width:auto;margin-left:auto}.panic-alert-dismiss{margin:4px 18px 16px;padding:10px;border:0;background:none;color:var(--text-3);font-size:.82rem;cursor:pointer}.panic-rule-card{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:10px;margin-top:10px;flex-wrap:wrap}.panic-rule-card small{display:block;color:var(--text-3)}.panic-rule-actions,.panic-test{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.panic-rule-actions>button,.panic-test>button{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;font-size:.85rem;font-weight:600;line-height:1;border:1px solid var(--border-med);border-radius:8px;background:var(--surface-2);color:var(--text-1);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.panic-rule-actions>button:hover,.panic-test>button:hover{border-color:var(--accent);color:var(--accent)}.panic-rule-actions>button:hover>svg,.panic-test>button:hover>svg{color:inherit}.panic-rule-actions>button.danger{color:var(--danger)}.panic-rule-actions>button.danger:hover{border-color:var(--danger);background:var(--danger-dim);color:var(--danger)}.panic-wizard{max-width:640px}.panic-steps{display:flex;list-style:none;padding:0;margin:4px 0 26px}.panic-step{flex:1;position:relative}.panic-step+.panic-step:before{content:"";position:absolute;top:16px;right:50%;width:100%;height:2px;background:var(--border);z-index:0}.panic-step.current:before,.panic-step.done:before{background:var(--accent)}.panic-step-btn{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;background:none;border:none;padding:0 4px;cursor:pointer}.panic-step-btn:disabled{cursor:default}.panic-step-num{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--surface-1);border:2px solid var(--border);color:var(--text-3);font-weight:700;font-size:.92rem;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.panic-step.current .panic-step-num{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow)}.panic-step.done .panic-step-num{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.panic-step-label{font-size:.8rem;font-weight:600;color:var(--text-3);text-align:center;line-height:1.2}.panic-step.current .panic-step-label{color:var(--text-1)}.panic-step.done .panic-step-label{color:var(--text-2)}.panic-step-pane h3{margin:0 0 4px}.panic-step-pane>.muted{margin:0 0 16px}.panic-name-input{width:100%;font-size:1.1rem;padding:12px 14px;border:1px solid var(--border-med);border-radius:10px;background:var(--surface-1);color:var(--text-1)}.panic-name-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.panic-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.panic-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 11px;background:var(--accent-dim);color:var(--text-1);border-radius:20px;font-size:.85rem;font-weight:600}.panic-chip button{display:grid;place-items:center;width:18px;height:18px;padding:0;background:var(--accent-glow);border:none;border-radius:50%;color:var(--text-1);cursor:pointer}.panic-search{display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--border-med);border-radius:10px;background:var(--surface-1)}.panic-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.panic-search>svg{color:var(--text-3);flex:none}.panic-search input{flex:1;min-width:0;border:none;background:none;padding:11px 0;color:var(--text-1);outline:none;font-size:.95rem}.panic-search-clear{display:grid;place-items:center;padding:4px;background:none;border:none;color:var(--text-3);cursor:pointer}.panic-picker-list{margin-top:8px;max-height:280px;overflow-y:auto;border:1px solid var(--border);border-radius:10px}.panic-person{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--border)}.panic-person:last-child{border-bottom:none}.panic-person input[type=checkbox]{flex:none;width:16px;height:16px;min-height:0;margin:0;accent-color:var(--accent);cursor:pointer}.panic-person-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panic-person.on{background:var(--accent-dim)}.panic-person.disabled{opacity:.5;cursor:not-allowed}.panic-person-note{font-size:.78rem;color:var(--text-3);font-style:italic}.panic-person-check{color:var(--accent);flex:none}.panic-picker-empty{padding:18px;text-align:center}.panic-picker-foot{margin-top:8px;font-size:.82rem;color:var(--text-3);text-align:right}.panic-wizard label.src-field{display:block}.panic-wizard label.src-field select{width:100%;padding:11px 12px;font-size:.95rem;border:1px solid var(--border-med);border-radius:10px;background:var(--surface-1);color:var(--text-1)}.panic-wizard label.src-field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.panic-roster{margin-top:12px}.panic-roster-head{display:block;font-size:.82rem;font-weight:600;color:var(--text-3);margin-bottom:8px}.panic-chip.static{padding:4px 11px;background:var(--surface-2)}.panic-channel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.panic-channel{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:14px;text-align:left;border:1px solid var(--border-med);border-radius:12px;background:var(--surface-1);color:var(--text-1);cursor:pointer}.panic-channel>svg{color:var(--text-3);margin-bottom:4px}.panic-channel.on{border-color:var(--accent);background:var(--accent-dim)}.panic-channel.on>svg{color:var(--accent)}.panic-channel-title{font-weight:700}.panic-channel-desc{font-size:.8rem;color:var(--text-3)}.panic-channel-mark{position:absolute;top:10px;right:10px;color:var(--accent);display:grid;place-items:center}.panic-active-toggle{display:flex;align-items:center;gap:8px}.panic-review{margin-top:18px;border:1px solid var(--border);border-radius:12px;padding:14px 16px;background:var(--surface-2)}.panic-review h4{margin:0 0 10px}.panic-review dl{margin:0;display:grid;gap:9px}.panic-review dl>div{display:grid;grid-template-columns:120px 1fr;gap:12px}.panic-review dt{color:var(--text-3);font-size:.85rem}.panic-review dd{margin:0}.panic-wizard-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;padding-top:16px;border-top:1px solid var(--border)}.panic-wizard-foot>button{display:inline-flex;align-items:center;gap:6px}.panic-back{background:none;border:1px solid var(--border-med);color:var(--text-1);border-radius:8px;padding:8px 14px;cursor:pointer}.panic-wizard-progress{font-size:.82rem;color:var(--text-3)}@media(max-width:560px){.panic-step-label{display:none}.panic-step.current .panic-step-label{display:block;position:absolute;top:40px;left:50%;transform:translate(-50%);white-space:nowrap}.panic-steps{margin-bottom:42px}.panic-channel-grid{grid-template-columns:1fr}.panic-review dl>div{grid-template-columns:1fr;gap:2px}.panic-wizard-progress{display:none}}.update-toast{position:fixed;right:18px;bottom:18px;z-index:3000;display:flex;align-items:center;gap:12px;max-width:min(390px,calc(100vw - 36px));padding:12px 14px;border:1px solid var(--border-med);border-radius:14px;background:var(--surface-1);box-shadow:0 12px 40px #00000047;animation:update-toast-in .24s cubic-bezier(.4,0,.2,1)}@keyframes update-toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.update-toast-logo{width:34px;height:34px;border-radius:8px;object-fit:contain;flex:none}.update-toast-text{display:flex;flex-direction:column;gap:2px;min-width:0}.update-toast-text strong{font-size:.9rem;color:var(--text-1)}.update-toast-text span{font-size:.8rem;color:var(--text-3)}.update-toast-actions{display:flex;gap:8px;margin-left:4px;flex:none}.update-toast-dismiss,.update-toast-reload{padding:7px 12px;border-radius:9px;font-size:.82rem;font-weight:700;cursor:pointer;white-space:nowrap}.update-toast-dismiss{background:transparent;border:1px solid var(--border-med);color:var(--text-2)}.update-toast-dismiss:hover{color:var(--text-1);border-color:var(--border-hi)}.update-toast-reload{background:var(--accent);border:1px solid var(--accent);color:var(--on-accent, #fff)}.update-toast-reload:hover{filter:brightness(1.06)}@media(prefers-reduced-motion:reduce){.update-toast{animation:none}}@media(max-width:460px){.update-toast{left:12px;right:12px;bottom:12px;max-width:none;flex-wrap:wrap}.update-toast-actions{margin-left:auto}}.field-locked-note{display:block;margin-top:4px;font-size:.76rem;color:var(--text-3)}.profile-panel input[readonly]{opacity:.7;cursor:not-allowed}.notif-bell{position:relative;flex:none}.notif-menu-portal{z-index:4000}.sidebar-brand .notif-bell{margin-left:auto}.mobile-header-actions{display:flex;align-items:center;gap:8px;flex:none}.sidebar-brand .notif-bell-btn,.mobile-header-actions .notif-bell-btn{width:36px;height:36px}.sidebar-brand .notif-bell-btn svg,.mobile-header-actions .notif-bell-btn svg{width:18px;height:18px}.notif-bell-btn{position:relative;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--border-med);border-radius:999px;background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:color .14s ease,border-color .14s ease,background .14s ease}.notif-bell-btn:hover{color:var(--text-1);border-color:var(--border-hi);background:var(--surface-3)}.notif-bell-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notif-bell-btn.has{color:var(--text-1)}.notif-bell-count{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:var(--accent);color:var(--on-accent, #fff);font-size:.66rem;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--surface-1)}.notif-bell-count.urgent{background:var(--danger);color:#fff}.notif-menu{position:absolute;top:calc(100% + 10px);right:0;z-index:60;width:min(320px,calc(100vw - 32px));padding:6px;border:1px solid var(--border-med);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:0 18px 50px #00000052;animation:notif-in .15s ease}@keyframes notif-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.notif-menu{animation:none}}.notif-menu-head{padding:8px 10px 6px;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.notif-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:0;border-radius:var(--r-sm);background:none;color:var(--text-1);cursor:pointer;text-align:left;transition:background .12s ease}.notif-item:hover{background:var(--surface-2)}.notif-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.notif-item-dot{flex:none;width:8px;height:8px;border-radius:999px;background:var(--text-3)}.notif-item.tone-danger .notif-item-dot{background:var(--danger)}.notif-item.tone-warn .notif-item-dot{background:var(--warning)}.notif-item.tone-info .notif-item-dot{background:var(--accent)}.notif-item-label{flex:1;min-width:0;font-size:.86rem;font-weight:600}.notif-item-count{flex:none;min-width:22px;padding:1px 8px;border-radius:999px;background:var(--surface-2);color:var(--text-2);font-size:.74rem;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}.notif-item:hover .notif-item-count{background:var(--surface-3)}.notif-empty{padding:16px 10px;margin:0;font-size:.85rem;color:var(--text-3);text-align:center}@media(min-width:901px){html:not(.native) .app-sidebar{background:var(--surface-1);border-right:1px solid var(--border)}html:not(.native) .sidebar-brand{padding:14px 16px;min-height:57px}html:not(.native) .sidebar-nav{padding:10px 12px;gap:2px}html:not(.native) .sidebar-section-label{padding:16px 11px 6px;font-size:.66rem;letter-spacing:.07em}html:not(.native) .sidebar-nav-item{min-height:38px;padding:0 11px;gap:11px;border-radius:var(--r-md);font-size:.85rem;font-weight:550;color:var(--text-2);letter-spacing:-.01em;transition:background .13s ease,color .13s ease}html:not(.native) .sidebar-nav-item svg{opacity:.9}html:not(.native) .sidebar-nav-item:hover{background:var(--surface-2);color:var(--text-1)}html:not(.native) .sidebar-nav-item.active{background:var(--accent-dim);color:var(--accent-ink);font-weight:650}html:not(.native) .sidebar-nav-item.active svg{color:var(--accent);opacity:1}html:not(.native) .app-main{padding:clamp(22px,2.6vw,34px)}html:not(.native) .panel{border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}html:not(.native) .panel-title h2{font-size:1.02rem;letter-spacing:-.02em}html:not(.native) .primary-action{border-radius:var(--r-md);box-shadow:0 1px 2px var(--accent-glow),0 6px 16px var(--accent-glow);transition:transform .12s cubic-bezier(.34,1.56,.64,1),box-shadow .13s ease,opacity .13s ease}html:not(.native) .primary-action:hover:not(:disabled){opacity:1;transform:translateY(-1px);box-shadow:0 2px 4px var(--accent-glow),0 10px 24px var(--accent-glow)}html:not(.native) .primary-action:active:not(:disabled){transform:translateY(0)}html:not(.native) .secondary-action{border-radius:var(--r-md)}html:not(.native) .admin-tabs{gap:22px}html:not(.native) .admin-tab{padding:11px 2px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;font-size:.87rem;font-weight:650;transition:color .13s ease,border-color .13s ease}html:not(.native) .admin-tab:hover{background:none;color:var(--text-1)}html:not(.native) .admin-tab.active{background:none;color:var(--text-1);border-color:transparent;border-bottom-color:var(--accent)}html:not(.native) .admin-tab-count{background:var(--surface-3)}html:not(.native) .admin-tab.active .admin-tab-count{background:var(--accent-dim);color:var(--accent-ink)}html:not(.native) .app-main input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):focus,html:not(.native) .app-main select:focus,html:not(.native) .app-main textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}}@media(min-width:901px){html:not(.native){--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace}html:not(.native) .dash-hero{box-shadow:var(--shadow-sm)}html:not(.native) .dash-stat{position:relative;overflow:hidden}html:not(.native) .dash-stat:after{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent);opacity:0;transition:opacity .15s ease}html:not(.native) .dash-stat:hover:after{opacity:.9}html:not(.native) .dash-stat strong{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.03em}html:not(.native) .dash-card{border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}html:not(.native) .dash-card:hover{box-shadow:var(--shadow-md)}html:not(.native) .dash-panel{border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}html:not(.native) .schedule-card,html:not(.native) .sched-blurb{border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:box-shadow .14s ease,border-color .14s ease,transform .14s ease}html:not(.native) .schedule-card:hover,html:not(.native) .sched-blurb:hover{box-shadow:var(--shadow-md);border-color:var(--border-med)}html:not(.native) .contact-card{border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:box-shadow .14s ease,border-color .14s ease,transform .14s ease}html:not(.native) .contact-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-med);transform:translateY(-1px)}html:not(.native) .sched-table thead th,html:not(.native) .ov-table thead th,html:not(.native) .ob-table thead th,html:not(.native) .fortnox-send-table thead th{background:var(--surface-2);color:var(--text-3);font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}html:not(.native) .sched-table tbody tr:hover,html:not(.native) .ov-table tbody tr:hover,html:not(.native) .ob-table tbody tr:hover,html:not(.native) .fortnox-send-table tbody tr:hover{background:var(--surface-2)}html:not(.native) .sched-table,html:not(.native) .ov-table,html:not(.native) .ob-table,html:not(.native) .fortnox-send-table{font-variant-numeric:tabular-nums}html:not(.native) .tr-head{background:var(--surface-2);border-radius:var(--r-md) var(--r-md) 0 0}html:not(.native) .tr-num,html:not(.native) .tr-duration,html:not(.native) .tr-amount{font-family:var(--mono);font-variant-numeric:tabular-nums}}@media(min-width:901px){html:not(.native) .dash-stats{gap:14px}html:not(.native) .dash-stat{padding:16px 17px 14px;gap:11px}html:not(.native) .dash-stat-chip{width:36px;height:36px}html:not(.native) .dash-stat-head span{font-size:.79rem}html:not(.native) .dash-stat strong{font-size:1.9rem;line-height:1}html:not(.native) .dash-eyebrow{color:var(--accent);letter-spacing:.04em}html:not(.native) .dash-hero h1{letter-spacing:-.03em}html:not(.native) .dash-quick-item{box-shadow:var(--shadow-sm);border-radius:var(--r-lg);transition:transform .13s ease,box-shadow .13s ease,border-color .13s ease}html:not(.native) .dash-quick-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}html:not(.native) .dash-section-label{font-size:.7rem;font-weight:700;letter-spacing:.07em;color:var(--text-3)}}@media(min-width:901px){html:not(.native) .dashboard-desk{max-width:1240px;margin:0 auto;width:100%}html:not(.native) .dash-main-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}@media(max-width:1180px){html:not(.native) .dash-main-grid{grid-template-columns:minmax(0,1fr) 300px}}html:not(.native) .dash-col-rail{display:flex;flex-direction:column;gap:16px;min-width:0}html:not(.native) .dash-col-rail>*{min-width:0}html:not(.native) .dash-seg-head{align-items:center;gap:12px}html:not(.native) .dash-seg{position:relative;display:inline-flex;gap:2px;padding:3px;border-radius:10px;background:var(--surface-3)}html:not(.native) .dash-seg-ind{position:absolute;top:3px;bottom:3px;z-index:0;border-radius:7px;background:var(--surface-1);box-shadow:var(--shadow-sm);transition:left .28s cubic-bezier(.34,1.3,.5,1),width .28s cubic-bezier(.34,1.3,.5,1)}html:not(.native) .dash-seg-btn{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:6px 12px;border-radius:7px;font-size:.8rem;font-weight:600;color:var(--text-2);transition:color .18s ease}html:not(.native) .dash-seg-btn svg{opacity:.8}html:not(.native) .dash-seg-btn:hover{color:var(--text-1)}html:not(.native) .dash-seg-btn.active{color:var(--text-1)}html:not(.native) .dash-seg-btn.active svg{opacity:1;color:var(--accent)}@media(prefers-reduced-motion:reduce){html:not(.native) .dash-seg-ind{transition:none}}html:not(.native) .dash-visa-alla{margin-left:auto;border:0;background:none;color:var(--accent);font-weight:650;font-size:.8rem}html:not(.native) .dash-visa-alla:hover{text-decoration:underline}html:not(.native) .dash-todo-count{font-family:var(--mono);font-size:.72rem;font-weight:700;background:var(--accent-dim);color:var(--accent-ink);padding:1px 8px;border-radius:999px;margin-left:auto}html:not(.native) .dash-todo-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}html:not(.native) .dash-todo-item{display:flex;align-items:center;gap:11px;width:100%;text-align:left;padding:10px 8px;border:0;background:none;border-radius:9px;color:var(--text-1);transition:background .12s ease}html:not(.native) .dash-todo-item:hover{background:var(--surface-2)}html:not(.native) .dash-todo-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--accent)}html:not(.native) .dash-todo-item.tone-danger .dash-todo-dot{background:var(--danger)}html:not(.native) .dash-todo-item.tone-warn .dash-todo-dot,html:not(.native) .dash-todo-item.tone-warning .dash-todo-dot{background:var(--warn, #d9820b)}html:not(.native) .dash-todo-label{flex:1;font-size:.84rem;font-weight:550;min-width:0}html:not(.native) .dash-todo-c{font-family:var(--mono);font-size:.78rem;font-weight:700;color:var(--text-3)}}@media(min-width:901px){html:not(.native) .schedule-rows-grid{border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-sm);border-color:var(--border)}html:not(.native) .schedule-rows-cols{background:var(--surface-2)}html:not(.native) .schedule-row-editor{transition:background .11s ease}html:not(.native) .schedule-row-editor:not(.is-divider):not(.is-generated):hover{background:var(--surface-2)}html:not(.native) .schedule-rows-head span{font-size:.9rem;font-weight:700;letter-spacing:-.01em}html:not(.native) .schedule-row-editor label.src-field input,html:not(.native) .schedule-row-editor label.src-field select{border-radius:8px}html:not(.native) .sched-btn{border-radius:var(--r-md);padding:7px 12px;background:var(--surface-1);box-shadow:var(--shadow-sm);transition:transform .12s ease,background .13s ease,border-color .13s ease,color .13s ease}html:not(.native) .sched-btn:hover:not(:disabled){transform:translateY(-1px);border-color:var(--border-hi)}html:not(.native) .sched-btn.autofill{border-color:color-mix(in srgb,var(--accent) 40%,var(--border-med));color:var(--accent-ink);background:var(--accent-dim)}html:not(.native) .sched-btn.autofill:hover:not(:disabled){background:var(--accent);color:var(--on-accent);border-color:var(--accent)}html:not(.native) .sched-btn.signup{border-radius:var(--r-md)}html:not(.native) .cand-tag{background:var(--surface-2)}html:not(.native) .assign-summary{border-radius:var(--r-md);box-shadow:var(--shadow-sm)}}@media(min-width:901px){html:not(.native) .event-picker{border:1px solid var(--border-med);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-sm);padding:13px;gap:11px}html:not(.native) .event-children{border-style:solid;border-color:var(--border);background:var(--surface-2);border-radius:var(--r-md)}html:not(.native) .event-children-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;font-size:.66rem}html:not(.native) .event-btn.folder svg{color:var(--text-3)}html:not(.native) .event-btn.active.folder svg{color:var(--on-accent)}html:not(.native) .selected-events{border:0;border-top:1px solid var(--border);background:none;border-radius:0;padding:12px 2px 2px;margin-top:1px}}@media(min-width:901px){html:not(.native) .schedule-filters{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 14px}html:not(.native) .sched-filter{margin-bottom:0}html:not(.native) .sched-filter+.sched-filter{position:relative;padding-left:14px}html:not(.native) .sched-filter+.sched-filter:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1px;height:20px;background:var(--border)}html:not(.native) .schedule-card{overflow:hidden}html:not(.native) .sched-status{border:0;background:var(--surface-3);color:var(--text-2)}html:not(.native) .sched-status.published{background:var(--accent-dim);color:var(--accent-ink)}html:not(.native) .sched-status.archived{background:var(--surface-3);color:var(--text-3)}html:not(.native) .sched-open-badge{border:0;text-transform:none;letter-spacing:0;font-size:.72rem;font-weight:700;color:var(--warning, #d9820b);background:color-mix(in srgb,var(--warning, #d9820b) 14%,transparent)}html:not(.native) .schedule-card-actions{margin:13px -16px -14px;padding:7px 10px;gap:2px;border-top:1px solid var(--border);background:var(--surface-2)}html:not(.native) .schedule-card-actions button,html:not(.native) .schedule-card-actions .sched-move{border:0;background:none;color:var(--text-2);padding:7px 10px;border-radius:8px;font-weight:600;box-shadow:none}html:not(.native) .schedule-card-actions button:hover{background:var(--surface-1);color:var(--text-1);box-shadow:var(--shadow-sm)}html:not(.native) .schedule-card-actions button.danger{color:var(--danger)}html:not(.native) .schedule-card-actions button.danger:hover{background:var(--danger-dim);color:var(--danger);box-shadow:none}}.sched-settings,.sched-settings .sched-card-body{display:contents}.sched-card-head{display:none}@media(min-width:901px){html:not(.native) .schedule-modal header h2,html:not(.native) .schedule-modal header>div>p{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}html:not(.native) .schedule-modal header h2{font-size:1.5rem;font-weight:750;letter-spacing:-.03em}html:not(.native) .schedule-modal header>div>p:first-child{color:var(--accent);font-weight:700;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}html:not(.native) .sched-modal-sub{color:var(--text-2);font-size:.86rem;font-weight:400!important;margin-top:5px;text-transform:none!important;letter-spacing:0!important}html:not(.native) .schedule-modal .modal-head-actions .header-save{background:var(--accent);color:var(--on-accent);border:0;border-radius:var(--r-md);padding:9px 17px;font-weight:650;box-shadow:0 6px 16px var(--accent-glow);transition:transform .12s cubic-bezier(.34,1.56,.64,1),box-shadow .13s ease}html:not(.native) .schedule-modal .modal-head-actions .header-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 22px var(--accent-glow)}html:not(.native) .schedule-modal .modal-head-actions button:not(.header-save){border:1px solid var(--border-med);border-radius:var(--r-md);background:var(--surface-1);padding:9px 15px;font-weight:600;color:var(--text-1)}html:not(.native) .sched-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-sm);margin-bottom:16px}html:not(.native) .sched-settings{display:block}html:not(.native) .sched-settings .sched-card-body{display:block;padding:18px}html:not(.native) .sched-card-head{display:flex;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border)}html:not(.native) .sched-card-head h3{margin:0;font-size:.95rem;font-weight:700;letter-spacing:-.01em}html:not(.native) .schedule-rows.sched-card{display:block;padding:0;margin-top:0}html:not(.native) .schedule-rows.sched-card .schedule-rows-head{padding:14px 16px;border-bottom:1px solid var(--border)}html:not(.native) .schedule-rows.sched-card .schedule-rows-grid{border:0;border-radius:0;box-shadow:none;background:transparent}html:not(.native) .schedule-rows.sched-card .assign-summary,html:not(.native) .schedule-rows.sched-card .assign-unfilled{margin:12px 16px}html:not(.native) .schedule-modal .form-row label input,html:not(.native) .schedule-modal .form-row label select{border-radius:var(--r-md);border:1px solid var(--border-med);background:var(--surface-1)}}@media(min-width:901px){html:not(.native) .user-card{border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-sm);transition:box-shadow .14s ease,border-color .14s ease}html:not(.native) .user-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-med)}html:not(.native) .cat-row{border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}html:not(.native) .inline-form button{border-radius:0 var(--r-md) var(--r-md) 0}html:not(.native) .report-actions button{border-radius:8px}}.struktur-seg{display:none}@media(min-width:901px){html:not(.native) .struktur-select{display:none}html:not(.native) .struktur-seg{display:inline-flex;gap:3px;padding:4px;border-radius:10px;background:var(--surface-3);width:fit-content;max-width:100%}html:not(.native) .struktur-seg-btn{border:0;background:none;padding:8px 14px;border-radius:7px;font-size:.82rem;font-weight:600;color:var(--text-2);cursor:pointer;white-space:nowrap;transition:background .13s ease,color .13s ease}html:not(.native) .struktur-seg-btn:hover:not(:disabled):not(.active){color:var(--text-1)}html:not(.native) .struktur-seg-btn.active{background:var(--surface-1);color:var(--text-1);box-shadow:var(--shadow-sm)}html:not(.native) .struktur-seg-btn:disabled{cursor:not-allowed;opacity:.6}html:not(.native) .struktur-seg-btn.active:disabled{opacity:1}html:not(.native) .sched-settings .sched-card-body{display:flex;flex-direction:column;gap:16px;padding:18px}}@media(min-width:901px){html:not(.native) .schedule-card-actions .sched-act-sep{margin-left:auto}html:not(.native) .schedule-card-actions .sched-act-sep~.sched-act-sep{margin-left:0}}@media(min-width:901px){html:not(.native) .form-row-status>label{grid-column:2}}.pos-datum-plats{display:contents}@media(min-width:901px){html:not(.native) .pos-datum-plats{display:grid;grid-template-columns:1fr 1fr;gap:12px}}.sched-view-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.sched-view-toolbar .sched-filter{margin-bottom:0}.sched-avail-btn{margin-left:auto;display:inline-flex;align-items:center;gap:7px;padding:9px 15px;border-radius:var(--r-md);border:1px solid var(--accent);background:var(--accent-dim);color:var(--accent);font-size:.85rem;font-weight:650;cursor:pointer;transition:background .13s ease,color .13s ease,transform .12s ease}.sched-avail-btn:hover{background:var(--accent);color:var(--on-accent, #fff);transform:translateY(-1px)}.sched-avail-btn svg{width:16px;height:16px;flex:none}:root{--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace}.sidebar-nav-item{border-radius:var(--r-md);gap:11px;font-weight:550}.sidebar-nav-item:hover{background:var(--surface-2);color:var(--text-1)}.sidebar-nav-item.active{background:var(--accent-dim);color:var(--accent-ink);font-weight:650}.sidebar-nav-item.active svg{color:var(--accent)}.primary-action{border-radius:var(--r-md);box-shadow:0 1px 2px var(--accent-glow),0 6px 16px var(--accent-glow);transition:transform .12s cubic-bezier(.34,1.56,.64,1),box-shadow .13s ease,opacity .13s ease}.primary-action:hover:not(:disabled){opacity:1;transform:translateY(-1px);box-shadow:0 2px 4px var(--accent-glow),0 10px 24px var(--accent-glow)}.primary-action:active:not(:disabled){transform:translateY(0)}.secondary-action{border-radius:var(--r-md)}.admin-tab{padding:11px 2px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;font-weight:650}.admin-tabs{gap:22px}.admin-tab:hover{background:none;color:var(--text-1)}.admin-tab.active{background:none;color:var(--text-1);border-color:transparent;border-bottom-color:var(--accent)}.admin-tab-count{background:var(--surface-3)}.admin-tab.active .admin-tab-count{background:var(--accent-dim);color:var(--accent-ink)}.app-main input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):focus,.app-main select:focus,.app-main textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.schedule-card,.contact-card,.user-card,.cat-row,.sched-blurb,.dash-card,.dash-panel{border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:box-shadow .14s ease,border-color .14s ease,transform .14s ease}.schedule-card:hover,.contact-card:hover,.user-card:hover,.sched-blurb:hover,.dash-card:hover{box-shadow:var(--shadow-md)}.dash-stat{box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.dash-stat:after{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent);opacity:0;transition:opacity .15s ease}.dash-stat:hover:after{opacity:.9}.dash-stat strong{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.03em}.dash-stat-head{justify-content:flex-start;gap:9px}.dash-stat-head svg{order:-1;width:28px;height:28px;padding:6px;box-sizing:border-box;border-radius:9px;background:var(--accent-dim);color:var(--accent)}.tr-num,.tr-duration,.tr-amount{font-family:var(--mono);font-variant-numeric:tabular-nums}.sched-status{border:0;background:var(--surface-3);color:var(--text-2)}.sched-status.published{background:var(--accent-dim);color:var(--accent-ink)}.sched-status.archived{background:var(--surface-3);color:var(--text-3)}.sched-open-badge{border:0;text-transform:none;letter-spacing:0;font-size:.72rem;font-weight:700;color:var(--warning, #d9820b);background:color-mix(in srgb,var(--warning, #d9820b) 14%,transparent)}.event-picker{border:1px solid var(--border-med);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-sm);padding:13px;gap:11px}.event-children{border-style:solid;border-color:var(--border);background:var(--surface-2);border-radius:var(--r-md)}.event-btn.folder svg{color:var(--text-3)}.event-btn.active.folder svg{color:var(--on-accent)}.selected-events{border:0;border-top:1px solid var(--border);background:none;border-radius:0;padding:12px 2px 2px}.sched-btn{border-radius:var(--r-md)}.sched-btn.autofill{border-color:color-mix(in srgb,var(--accent) 40%,var(--border-med));color:var(--accent-ink);background:var(--accent-dim)}.sched-btn.autofill:hover:not(:disabled){background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.cand-tag{background:var(--surface-2)}.sched-settings{display:block}.sched-settings .sched-card-body{display:block;padding:16px}.sched-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--shadow-sm);margin-bottom:14px}.sched-card-head{display:flex;align-items:center;padding:13px 16px;border-bottom:1px solid var(--border)}.sched-card-head h3{margin:0;font-size:.95rem;font-weight:700}.schedule-rows.sched-card{display:block;padding:0}.schedule-rows.sched-card .schedule-rows-head{padding:13px 16px;border-bottom:1px solid var(--border)}.struktur-seg{display:inline-flex;gap:3px;padding:4px;border-radius:10px;background:var(--surface-3);width:fit-content;max-width:100%}.struktur-select{display:none}.struktur-seg-btn{border:0;background:none;padding:8px 14px;border-radius:7px;font-size:.82rem;font-weight:600;color:var(--text-2);cursor:pointer}.struktur-seg-btn.active{background:var(--surface-1);color:var(--text-1);box-shadow:var(--shadow-sm)}.app-dl-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px;padding:12px 16px;border-radius:var(--r-lg);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);background:var(--accent-dim);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0,0,0,.06))}.app-dl-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.app-dl-text{flex:1 1 220px;min-width:0}.app-dl-text strong{display:block;font-size:.92rem;font-weight:700;color:var(--text-1)}.app-dl-text small{display:block;font-size:.8rem;color:var(--text-2);margin-top:2px}.app-dl-badges{display:flex;align-items:center;gap:10px;flex:none}.app-dl-badge{display:inline-flex}.app-dl-badge img{height:42px;width:auto;display:block}.app-dl-badge[href]{transition:transform .12s ease}.app-dl-badge[href]:hover{transform:translateY(-1px)}.app-dl-badge:not([href]){opacity:.85;cursor:default}.app-dl-dismiss{flex:none;border:0;background:none;color:var(--text-3);font-size:.78rem;font-weight:600;cursor:pointer;padding:6px 9px;border-radius:7px}.app-dl-dismiss:hover{color:var(--text-1);background:color-mix(in srgb,var(--accent) 12%,transparent)}.shift-call-modal{width:min(560px,100%);max-width:min(560px,100%);max-height:min(88vh,900px);display:flex;flex-direction:column}.shift-call-body{overflow:auto;display:grid;gap:14px;padding:4px 0 2px}.shift-call-modal input[type=checkbox],.shift-call-modal input[type=radio]{flex:none;width:17px;height:17px;min-height:0;margin:0;padding:0;accent-color:var(--accent);cursor:pointer}.shift-call-modes{display:flex;gap:8px;flex-wrap:wrap}.shift-call-modes label>span{white-space:nowrap}.shift-call-modes label{display:flex;align-items:center;gap:8px;white-space:nowrap;padding:8px 14px;border:1px solid var(--border-med);border-radius:999px;background:var(--surface-2);color:var(--text-2);font-size:.88rem;cursor:pointer;transition:border-color .14s cubic-bezier(.2,.8,.3,1),background-color .14s cubic-bezier(.2,.8,.3,1)}.shift-call-modes label:hover{border-color:var(--border-hi)}.shift-call-modes label.on{border-color:var(--accent);background:var(--accent-dim);color:var(--text-1)}.shift-call-modes label.disabled{opacity:.45;cursor:not-allowed}.shift-call-modes label:focus-within{outline:2px solid var(--accent);outline-offset:2px}.shift-call-hint{margin:0;font-size:.8rem;line-height:1.5;color:var(--text-3)}.shift-call-text{display:grid;gap:6px}.shift-call-text>span{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.shift-call-text textarea{min-height:62px;width:100%;padding:10px 12px;resize:vertical;border:1px solid var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-1);font:inherit;font-size:.9rem;line-height:1.5}.shift-call-text textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.shift-call-toggle{display:flex;align-items:center;gap:8px;justify-content:flex-start;font-size:.88rem;color:var(--text-2);cursor:pointer}.shift-call-rows{list-style:none;margin:0;padding:0;display:grid;gap:2px;max-height:34vh;overflow:auto}.shift-call-rows label{display:flex;align-items:center;gap:9px;min-width:0;padding:7px 10px;border-radius:var(--r-sm);font-size:.87rem;color:var(--text-2);cursor:pointer}.shift-call-rows label:hover{background:var(--surface-2)}.shift-call-rows label>span{flex:1;min-width:0}.shift-call-rows small{flex:none;margin-left:auto;font-size:.72rem}.shift-call-watch{align-items:flex-start;margin-top:2px;padding:11px 10px 0;border-top:1px solid var(--border-med)}.shift-call-watch input{flex:none;margin-top:2px}.shift-call-watch+.shift-call-hint{padding:0 10px 0 32px}.shift-call-preview{display:grid;gap:6px}.shift-call-preview-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3)}.shift-call-preview pre{margin:0;padding:12px 14px;border:1px dashed var(--border-med);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);font-size:.82rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;max-height:22vh;overflow:auto}.shift-call-foot{display:flex;justify-content:flex-end;gap:10px;padding-top:14px;border-top:1px solid var(--border)}.chat-shift-call{align-self:stretch;max-width:100%;margin:6px 0;padding:12px 14px;border:1px solid var(--border-med);border-left:3px solid var(--accent);border-radius:var(--r-sm);background:linear-gradient(180deg,var(--accent-dim),transparent 70%),var(--surface-2);display:grid;gap:8px}.chat-shift-call header{display:flex;align-items:center;gap:8px;color:var(--accent-ink)}.chat-shift-call header strong{flex:1;min-width:0}.chat-shift-call header .chat-msg-pin{flex:none;margin-left:auto}.chat-shift-call.pinned{border-left-width:5px}.chat-shift-call header strong{font-size:.92rem;color:var(--text-1)}.chat-shift-call p{margin:0;font-size:.87rem;line-height:1.65;color:var(--text-2);white-space:pre-wrap}.chat-shift-call-cta{justify-self:start;display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border:1px solid var(--accent);border-radius:999px;background:transparent;color:var(--accent-ink);font-size:.83rem;font-weight:600;cursor:pointer;transition:background-color .14s cubic-bezier(.2,.8,.3,1),transform .14s cubic-bezier(.2,.8,.3,1)}.chat-shift-call-cta:hover{background:var(--accent-dim)}.chat-shift-call-cta:active{transform:translateY(1px)}.chat-shift-call-cta:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shift-call-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.shift-call-all{flex:none;padding:5px 11px;border:1px solid var(--border-med);border-radius:999px;background:transparent;color:var(--text-2);font-size:.78rem;cursor:pointer;transition:border-color .14s cubic-bezier(.2,.8,.3,1),color .14s cubic-bezier(.2,.8,.3,1)}.shift-call-all:hover{border-color:var(--accent);color:var(--text-1)}.shift-call-all:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:760px){.shift-call-modal{max-height:100vh;max-height:100dvh}.shift-call-rows,.shift-call-preview pre{max-height:none;overflow:visible}.shift-call-rows label{min-height:44px;padding:11px 10px}.shift-call-modal input[type=checkbox],.shift-call-modal input[type=radio]{width:20px;height:20px}.shift-call-foot{margin:0 -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--surface-1);border-top:1px solid var(--border)}}.egg-overlay{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:calc(24px + env(safe-area-inset-top)) 24px 24px;cursor:pointer;background:#fff;animation:egg-bg .32s ease both}.egg-eyebrow{margin:0;font-size:.82rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#0f1c3f;text-align:center;opacity:0;animation:egg-fade .6s cubic-bezier(.2,.8,.3,1) .25s both}.egg-by{margin:0;font-size:1rem;color:#5b6474;text-align:center;opacity:0;animation:egg-fade .6s cubic-bezier(.2,.8,.3,1) .55s both}.egg-logo{width:min(380px,74vw);height:auto;opacity:0;animation:egg-drop .85s cubic-bezier(.2,.8,.3,1) .9s both}@keyframes egg-bg{0%{opacity:0}to{opacity:1}}@keyframes egg-fade{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@keyframes egg-drop{0%{opacity:0;transform:translateY(-44px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.egg-overlay,.egg-eyebrow,.egg-by,.egg-logo{animation-duration:1ms;animation-delay:0s}}
