.login-shell[data-v-80f2e097]{background:var(--canvas);min-height:100vh;display:flex}.login-brand[data-v-80f2e097]{background:var(--surface-1);border-right:1px solid var(--hairline);flex:1;justify-content:center;align-items:center;padding:48px 56px;display:flex;overflow:hidden}.brand-content[data-v-80f2e097]{flex-direction:column;gap:28px;width:100%;max-width:460px;display:flex}.brand-logo[data-v-80f2e097]{align-items:center;gap:12px;display:flex}.brand-name[data-v-80f2e097]{color:var(--ink);letter-spacing:-.4px;font-size:20px;font-weight:600}.tagline-headline[data-v-80f2e097]{letter-spacing:-1px;color:var(--ink);margin-bottom:12px;font-size:36px;font-weight:600;line-height:1.15}.tagline-sub[data-v-80f2e097]{color:var(--ink-muted);font-size:15px;line-height:1.6}.brand-hero[data-v-80f2e097]{justify-content:center;align-items:center;margin:0 -12px;display:flex;position:relative}.hero-glow[data-v-80f2e097]{filter:blur(32px);pointer-events:none;z-index:0;background:radial-gradient(#5e6ad259 0%,#0000 70%);position:absolute;inset:10%}.hero-img[data-v-80f2e097]{z-index:1;object-fit:contain;filter:drop-shadow(0 8px 40px #5e6ad240);width:100%;max-width:420px;height:auto;animation:4s ease-in-out infinite float-80f2e097;position:relative}@keyframes float-80f2e097{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.brand-stats[data-v-80f2e097]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat-card[data-v-80f2e097]{background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--r-lg);flex-direction:column;gap:12px;padding:16px;transition:border-color .15s,background .15s;display:flex}.stat-card[data-v-80f2e097]:hover{background:var(--surface-3,#1d2028);border-color:var(--hairline-strong)}.stat-icon[data-v-80f2e097]{border-radius:var(--r-md);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.stat-icon--blue[data-v-80f2e097]{color:#60a5fa;background:#3b82f626}.stat-icon--purple[data-v-80f2e097]{color:#818cf8;background:#5e6ad226}.stat-icon--amber[data-v-80f2e097]{color:#fbbf24;background:#f59e0b26}.stat-body[data-v-80f2e097]{flex-direction:column;gap:3px;display:flex}.stat-num[data-v-80f2e097]{color:var(--ink);letter-spacing:-.6px;font-size:24px;font-weight:700;line-height:1}.stat-label[data-v-80f2e097]{color:var(--ink-tertiary);letter-spacing:.03em;font-size:11px;line-height:1.4}.login-panel[data-v-80f2e097]{flex-shrink:0;justify-content:center;align-items:center;width:520px;padding:64px 40px;display:flex}.login-card[data-v-80f2e097]{flex-direction:column;gap:20px;width:100%;max-width:400px;display:flex}.login-title[data-v-80f2e097]{letter-spacing:-.6px;color:var(--ink);margin-bottom:8px;font-size:28px;font-weight:600}.login-sub[data-v-80f2e097]{color:var(--ink-subtle);font-size:14px}.role-switch[data-v-80f2e097]{grid-template-columns:1fr 1fr;gap:8px;display:grid}.role-btn[data-v-80f2e097]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--ink-subtle);border-radius:var(--r-md);cursor:pointer;padding:8px 12px;font-family:inherit;font-size:13px}.role-btn.active[data-v-80f2e097]{background:var(--surface-2);color:var(--ink);border-color:var(--hairline-strong)}.auth-card[data-v-80f2e097]{flex-direction:column;gap:12px;display:flex}.auth-head[data-v-80f2e097]{color:var(--ink-muted);font-size:13px}.form-error[data-v-80f2e097]{color:var(--semantic-error);font-size:12px}.btn-google[data-v-80f2e097]{background:var(--surface-2);width:100%;color:var(--ink);border:1px solid var(--hairline-strong);border-radius:var(--r-md);cursor:pointer;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:500}.btn-google[data-v-80f2e097]:hover{background:var(--surface-3);border-color:var(--hairline-tertiary)}.login-legal[data-v-80f2e097]{color:var(--ink-tertiary);text-align:center;font-size:12px;line-height:1.6}.login-legal a[data-v-80f2e097]{color:var(--ink-subtle);text-underline-offset:2px;text-decoration:underline}.scan-banner[data-v-80f2e097]{border-radius:var(--r-lg);cursor:pointer;background:linear-gradient(135deg,#5e6ad21f 0%,#5e6ad20f 100%);border:1px solid #5e6ad259;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;transition:background .15s,border-color .15s,transform .12s;display:flex}.scan-banner[data-v-80f2e097]:hover{background:linear-gradient(135deg,#5e6ad233 0%,#5e6ad21a 100%);border-color:#5e6ad299;transform:translateY(-1px)}.scan-banner-icon[data-v-80f2e097]{border-radius:var(--r-md);width:40px;height:40px;color:var(--primary-hover);background:#5e6ad226;flex-shrink:0;justify-content:center;align-items:center;display:flex}.scan-banner-text[data-v-80f2e097]{flex-direction:column;flex:1;gap:2px;display:flex}.scan-banner-title[data-v-80f2e097]{color:var(--ink);letter-spacing:-.2px;font-size:14px;font-weight:600}.scan-banner-sub[data-v-80f2e097]{color:var(--ink-subtle);font-size:12px}.scan-banner-arrow[data-v-80f2e097]{color:var(--primary-hover);opacity:.7;flex-shrink:0}.scan-divider[data-v-80f2e097]{color:var(--ink-tertiary);align-items:center;gap:12px;font-size:12px;display:flex}.scan-divider[data-v-80f2e097]:before,.scan-divider[data-v-80f2e097]:after{content:"";background:var(--hairline);flex:1;height:1px}@media (width<=768px){.login-brand[data-v-80f2e097]{display:none}.login-panel[data-v-80f2e097]{width:100%;padding:40px 20px}.login-card[data-v-80f2e097]{max-width:100%}.tagline-headline[data-v-80f2e097]{font-size:28px}}.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;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.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{width:auto;padding:0;max-width:none!important;max-height:none!important}.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:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.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{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.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;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{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{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{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position: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:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.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-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.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{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;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:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;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{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.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{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.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{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.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{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;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{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.map-picker[data-v-f6900c41]{border-radius:var(--r-lg);border:1px solid var(--hairline);background:var(--surface-1);flex-direction:column;display:flex;overflow:hidden}.map-canvas[data-v-f6900c41]{flex:1;min-height:0}.map-toolbar[data-v-f6900c41]{background:var(--surface-2);border-top:1px solid var(--hairline);flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.coords[data-v-f6900c41]{align-items:center;gap:6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;display:flex}.coord-label[data-v-f6900c41]{color:var(--ink-subtle)}.coord-val[data-v-f6900c41]{color:var(--ink-muted)}.coord-sep[data-v-f6900c41]{color:var(--hairline-strong)}.leaflet-container{background:#161920;font-family:inherit}.leaflet-control-zoom a{color:#d0d6e0!important;background:#1d2028!important;border-color:#2e3140!important}.leaflet-control-zoom a:hover{background:#23262e!important}.leaflet-control-attribution{color:#62666d!important;background:#010102bf!important;font-size:10px!important}.leaflet-control-attribution a{color:#8a8f98!important}.dashboard[data-v-54c4cb59]{max-width:1100px;min-height:100vh;margin:0 auto;padding:32px 40px}.dash-header[data-v-54c4cb59]{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.dash-title[data-v-54c4cb59]{letter-spacing:-.6px;color:var(--ink);margin-bottom:4px;font-size:28px;font-weight:600}.dash-sub[data-v-54c4cb59]{color:var(--ink-subtle);font-size:14px}.sub-strip[data-v-54c4cb59]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);align-items:center;gap:20px;margin-bottom:32px;padding:12px 20px;display:flex}.sub-item[data-v-54c4cb59]{align-items:center;gap:8px;display:flex}.sub-label[data-v-54c4cb59]{color:var(--ink-subtle);font-size:13px}.sub-val[data-v-54c4cb59]{color:var(--ink);font-size:14px;font-weight:600}.sub-limit[data-v-54c4cb59]{color:var(--ink-tertiary);font-weight:400}.sub-sep[data-v-54c4cb59]{background:var(--hairline);width:1px;height:16px}.sub-spacer[data-v-54c4cb59]{flex:1}.empty-state[data-v-54c4cb59]{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:80px 24px;display:flex}.empty-icon[data-v-54c4cb59]{margin-bottom:8px}.empty-title[data-v-54c4cb59]{color:var(--ink);font-size:16px;font-weight:600}.empty-sub[data-v-54c4cb59]{color:var(--ink-subtle);max-width:300px;font-size:14px}.activity-grid[data-v-54c4cb59]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.activity-card[data-v-54c4cb59]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);flex-direction:column;gap:14px;padding:20px;transition:border-color .15s,background .15s;display:flex}.activity-card[data-v-54c4cb59]:hover{border-color:var(--hairline-strong);background:var(--surface-2)}.act-card-header[data-v-54c4cb59]{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.act-info[data-v-54c4cb59]{flex:1;min-width:0}.act-name[data-v-54c4cb59]{color:var(--ink);letter-spacing:-.3px;margin-bottom:4px;font-size:16px;font-weight:600}.act-desc[data-v-54c4cb59]{color:var(--ink-subtle);font-size:13px;line-height:1.5}.act-card-actions[data-v-54c4cb59]{flex-shrink:0;gap:4px;display:flex}.icon-btn[data-v-54c4cb59]{cursor:pointer;width:28px;height:28px;color:var(--ink-tertiary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.icon-btn[data-v-54c4cb59]:hover{background:var(--surface-3);color:var(--ink)}.icon-btn-danger[data-v-54c4cb59]:hover{color:#ef4444;background:#ef44441f}.act-meta[data-v-54c4cb59]{flex-direction:column;gap:6px;display:flex}.act-meta-item[data-v-54c4cb59]{color:var(--ink-subtle);align-items:center;gap:6px;font-size:13px;display:flex}.join-code-row[data-v-54c4cb59]{justify-content:space-between}.code-badge[data-v-54c4cb59]{letter-spacing:1px;font-family:monospace;font-size:12px}.act-card-footer[data-v-54c4cb59]{gap:8px;margin-top:auto;display:flex}.drawer-title[data-v-54c4cb59]{letter-spacing:-.4px;color:var(--ink);font-size:18px;font-weight:600}.drawer-sub[data-v-54c4cb59]{color:var(--ink-subtle);margin-top:2px;font-size:13px}.form-section[data-v-54c4cb59]{flex-direction:column;gap:16px;display:flex}.section-header[data-v-54c4cb59]{justify-content:space-between;align-items:center;display:flex}.section-label[data-v-54c4cb59]{color:var(--ink-muted);letter-spacing:.4px;text-transform:uppercase;font-size:12px;font-weight:600}.form-hint[data-v-54c4cb59]{color:var(--ink-tertiary);margin-top:-8px;font-size:12px}.form-row-tight[data-v-54c4cb59]{margin-top:4px}.location-block[data-v-54c4cb59]{background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--r-lg);flex-direction:column;gap:14px;padding:16px;display:flex}.location-block-header[data-v-54c4cb59]{justify-content:space-between;align-items:center;display:flex}.location-index[data-v-54c4cb59]{color:var(--ink-muted);font-size:13px;font-weight:600}.ov-loading[data-v-54c4cb59]{justify-content:center;padding:12px;display:flex}.ov-empty[data-v-54c4cb59]{color:var(--ink-tertiary);padding:4px 0;font-size:13px}.ov-list[data-v-54c4cb59]{flex-direction:column;gap:8px;display:flex}.ov-item[data-v-54c4cb59]{background:var(--surface-2);border:1px solid var(--hairline);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.ov-info[data-v-54c4cb59]{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.ov-date[data-v-54c4cb59]{color:var(--ink);font-family:monospace;font-size:13px;font-weight:600}.ov-note[data-v-54c4cb59]{color:var(--ink-tertiary);font-size:12px}.ov-add[data-v-54c4cb59]{background:var(--surface-2);border:1px solid var(--hairline);border-radius:8px;flex-direction:column;gap:12px;padding:14px;display:flex}.enroll-loading[data-v-54c4cb59]{justify-content:center;padding:40px;display:flex}.enroll-empty[data-v-54c4cb59]{color:var(--ink-tertiary);font-size:13px}.enroll-card[data-v-54c4cb59]{background:var(--surface-2);border:1px solid var(--hairline);border-radius:10px;align-items:center;gap:12px;padding:12px;display:flex}.enroll-face[data-v-54c4cb59]{flex-shrink:0}.face-img[data-v-54c4cb59]{object-fit:cover;border:2px solid var(--hairline-strong);border-radius:50%;width:48px;height:48px}.face-placeholder[data-v-54c4cb59]{background:var(--surface-3);border:2px solid var(--hairline);width:48px;height:48px;color:var(--ink-tertiary);border-radius:50%;justify-content:center;align-items:center;display:flex}.enroll-info[data-v-54c4cb59]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.enroll-name[data-v-54c4cb59]{color:var(--ink);font-size:14px;font-weight:600}.enroll-email[data-v-54c4cb59]{color:var(--ink-subtle);font-size:12px}.enroll-time[data-v-54c4cb59]{color:var(--ink-tertiary);font-size:11px}.enroll-actions[data-v-54c4cb59]{flex-shrink:0;gap:6px;display:flex}.enroll-actions-vertical[data-v-54c4cb59]{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.action-row[data-v-54c4cb59]{gap:6px;display:flex}.role-select[data-v-54c4cb59]{border:1px solid var(--hairline);color:var(--ink);background:var(--surface-1);border-radius:6px;min-width:160px;padding:6px 10px;font-size:12px}.role-select-sm[data-v-54c4cb59]{border:1px solid var(--hairline);color:var(--ink);background:var(--surface-1);border-radius:6px;min-width:120px;padding:4px 8px;font-size:12px}.enroll-role[data-v-54c4cb59]{color:var(--ink-subtle);align-items:center;gap:6px;font-size:12px;display:flex}.enroll-role strong[data-v-54c4cb59]{color:var(--ink)}.role-edit-btn[data-v-54c4cb59]{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.role-edit-row[data-v-54c4cb59]{align-items:center;gap:6px;margin-top:6px;display:flex}.pending-badge[data-v-54c4cb59]{color:#fff;vertical-align:middle;background:#f97316;border-radius:99px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.btn-badge[data-v-54c4cb59]{color:#fff;background:#f97316;border-radius:99px;justify-content:center;align-items:center;min-width:16px;height:16px;margin-left:2px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.enroll-error[data-v-54c4cb59]{color:var(--semantic-error);background:#e5484d14;border:1px solid #e5484d33;border-radius:10px;align-items:center;gap:8px;padding:14px 16px;font-size:13px;display:flex}.enroll-card-pending[data-v-54c4cb59]{background:#f973160a;border-color:#f973164d}.enroll-empty[data-v-54c4cb59]{color:var(--ink-tertiary);align-items:center;gap:6px;padding:4px 0;font-size:13px;display:flex}.pagination[data-v-54c4cb59]{justify-content:space-between;align-items:center;gap:8px;padding-top:8px;display:flex}.page-dots[data-v-54c4cb59]{align-items:center;gap:5px;display:flex}.page-dot[data-v-54c4cb59]{background:var(--hairline-strong);cursor:pointer;border:none;border-radius:50%;width:6px;height:6px;padding:0;transition:background .15s,transform .15s}.page-dot.active[data-v-54c4cb59]{background:var(--primary);transform:scale(1.4)}.page-info[data-v-54c4cb59]{color:var(--ink-tertiary);font-variant-numeric:tabular-nums;font-size:12px}@keyframes spin-54c4cb59{to{transform:rotate(360deg)}}.spin[data-v-54c4cb59]{animation:.8s linear infinite spin-54c4cb59}@media (width<=768px){.dashboard[data-v-54c4cb59]{padding:16px}.dash-header[data-v-54c4cb59]{flex-direction:column;align-items:flex-start;gap:12px}.dash-title[data-v-54c4cb59]{font-size:22px}.sub-strip[data-v-54c4cb59]{flex-wrap:wrap;gap:12px;padding:10px 14px}.sub-spacer[data-v-54c4cb59]{display:none}.activity-grid[data-v-54c4cb59]{grid-template-columns:1fr}.act-card-footer[data-v-54c4cb59]{flex-wrap:wrap}.drawer[data-v-54c4cb59]{width:100vw}.drawer-body[data-v-54c4cb59]{padding:16px}.drawer-footer[data-v-54c4cb59]{padding:12px 16px}.act-card-actions[data-v-54c4cb59]{flex-shrink:0}}.working-days-grid[data-v-54c4cb59]{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.day-checkbox[data-v-54c4cb59]{cursor:pointer;background:var(--surface-2);border:1px solid var(--hairline);-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s;display:flex}.day-checkbox input[type=checkbox][data-v-54c4cb59]{display:none}.day-checkbox[data-v-54c4cb59]:has(input:checked){background:var(--primary);border-color:var(--primary);color:#fff}.mode-toggle-group[data-v-54c4cb59]{flex-direction:column;gap:8px;margin-top:6px;display:flex}.mode-option[data-v-54c4cb59]{cursor:pointer;border:1px solid var(--hairline);border-radius:var(--r-md);-webkit-user-select:none;user-select:none;padding:10px 14px;transition:border-color .15s,background .15s;display:flex}.mode-option-locked[data-v-54c4cb59]{cursor:not-allowed;opacity:.55;background:var(--surface-2)}.mode-option-locked[data-v-54c4cb59]:hover{border-color:var(--hairline);background:var(--surface-2)}.mode-upgrade-hint[data-v-54c4cb59]{color:var(--ink-tertiary);margin-top:3px;font-size:11px;display:block}.mode-upgrade-hint a[data-v-54c4cb59]{color:var(--primary);text-decoration:underline}.mode-option input[type=radio][data-v-54c4cb59]{display:none}.mode-option.active[data-v-54c4cb59]{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, transparent)}.mode-option-inner[data-v-54c4cb59]{color:var(--ink);align-items:flex-start;gap:10px;display:flex}.mode-option-inner svg[data-v-54c4cb59]{flex-shrink:0;margin-top:2px}.mode-title[data-v-54c4cb59]{font-size:13px;font-weight:600;display:block}.mode-desc[data-v-54c4cb59]{color:var(--ink-subtle);margin-top:2px;font-size:12px;display:block}.shift-config-row[data-v-54c4cb59]{background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--r-md);flex-direction:column;gap:6px;margin-top:8px;padding:10px 14px;display:flex}.shift-config-inner[data-v-54c4cb59]{align-items:center;gap:10px;display:flex}.input-sm[data-v-54c4cb59]{padding:4px 8px;font-size:13px}.shift-config-hint[data-v-54c4cb59]{color:var(--ink-subtle);font-size:12px}.shift-week-nav[data-v-54c4cb59]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.shift-week-label[data-v-54c4cb59]{color:var(--ink);font-size:13px;font-weight:600}.shift-actions[data-v-54c4cb59]{align-items:center;gap:12px;margin-bottom:20px;display:flex}.shift-hint[data-v-54c4cb59]{color:var(--ink-subtle);flex:1;font-size:12px}.shift-loading[data-v-54c4cb59]{justify-content:center;padding:40px;display:flex}.shift-empty[data-v-54c4cb59]{text-align:center;color:var(--ink-subtle);flex-direction:column;align-items:center;gap:8px;padding:40px 20px;font-size:14px;display:flex}.shift-empty-sub[data-v-54c4cb59]{color:var(--ink-tertiary);font-size:12px}.shift-day-list[data-v-54c4cb59]{flex-direction:column;gap:16px;display:flex}.shift-day-group[data-v-54c4cb59]{border:1px solid var(--hairline);border-radius:var(--r-md);overflow:hidden}.shift-day-header[data-v-54c4cb59]{background:var(--surface-2);border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.shift-day-name[data-v-54c4cb59]{color:var(--ink);font-size:13px;font-weight:600}.shift-day-count[data-v-54c4cb59]{color:var(--ink-subtle);font-size:12px}.shift-employee-row[data-v-54c4cb59]{border-bottom:1px solid var(--hairline);align-items:center;gap:10px;padding:10px 14px;display:flex}.shift-employee-row[data-v-54c4cb59]:last-child{border-bottom:none}.shift-avatar[data-v-54c4cb59]{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:600;display:flex}.shift-emp-info[data-v-54c4cb59]{flex-direction:column;gap:1px;display:flex}.shift-emp-name[data-v-54c4cb59]{color:var(--ink);font-size:13px;font-weight:500}.shift-emp-email[data-v-54c4cb59]{color:var(--ink-subtle);font-size:12px}.attendance-page[data-v-643396ab]{min-height:100vh;padding:28px 40px}.att-topbar[data-v-643396ab]{align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.att-title-wrap[data-v-643396ab]{flex:1}.att-title[data-v-643396ab]{letter-spacing:-.4px;color:var(--ink);font-size:22px;font-weight:600}.att-meta[data-v-643396ab]{align-items:center;gap:8px;margin-top:4px;display:flex}.att-meta-item[data-v-643396ab]{color:var(--ink-subtle);font-size:13px}.att-meta-sep[data-v-643396ab]{color:var(--hairline-strong)}.att-layout[data-v-643396ab]{grid-template-columns:420px 1fr;align-items:start;gap:24px;display:grid}.liveness-banner[data-v-643396ab]{border-radius:var(--r-md);background:#5e6ad21a;border:1px solid #5e6ad24d;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.liveness-icon[data-v-643396ab]{flex-shrink:0;margin-top:1px;font-size:22px;line-height:1}.liveness-text[data-v-643396ab]{flex-direction:column;gap:2px;display:flex}.liveness-label[data-v-643396ab]{color:var(--ink);font-size:13px}.liveness-hint[data-v-643396ab]{color:var(--ink-subtle);font-size:12px}.att-camera-panel[data-v-643396ab]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-xl);flex-direction:column;gap:16px;padding:20px;display:flex}.mode-toggle[data-v-643396ab]{background:var(--surface-2);border-radius:var(--r-md);gap:2px;padding:3px;display:flex}.mode-btn[data-v-643396ab]{color:var(--ink-subtle);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:500;transition:background .12s,color .12s}.mode-btn.active[data-v-643396ab]{background:var(--surface-3);color:var(--ink)}.mode-btn[data-v-643396ab]:disabled{opacity:.4;cursor:not-allowed}.checkout-warn[data-v-643396ab]{color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:8px;align-items:center;gap:7px;margin-top:8px;padding:8px 12px;font-size:.8125rem;font-weight:500;display:flex}.camera-wrapper[data-v-643396ab]{border-radius:var(--r-lg);background:var(--surface-2);aspect-ratio:4/3;position:relative;overflow:hidden}.camera-feed[data-v-643396ab]{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.hidden-canvas[data-v-643396ab]{display:none}.camera-overlay[data-v-643396ab]{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.face-guide[data-v-643396ab]{border:2px solid #5e6ad299;border-radius:50%;width:140px;height:170px;transition:border-color .3s,box-shadow .3s;box-shadow:0 0 0 2000px #0003}.face-guide.guide-active[data-v-643396ab]{border-color:#5e6ad2;box-shadow:0 0 0 2000px #00000040,0 0 0 4px #5e6ad24d}.face-guide.guide-success[data-v-643396ab]{border-color:#10b981;box-shadow:0 0 0 2000px #0003,0 0 0 4px #10b9814d}.detection-status[data-v-643396ab]{border-radius:var(--r-md);border:1px solid var(--hairline);align-items:center;gap:8px;padding:10px 14px;font-size:13px;transition:background .2s,border-color .2s,color .2s;display:flex}.detection-status.waiting[data-v-643396ab]{background:var(--surface-2);color:var(--ink-subtle)}.detection-status.submitting[data-v-643396ab]{color:#5e6ad2;background:#5e6ad21a;border-color:#5e6ad24d}.detection-status.success[data-v-643396ab]{color:var(--semantic-success);background:#10b98114;border-color:#10b98140}.detection-status.disabled[data-v-643396ab]{background:var(--surface-2);color:var(--ink-subtle);border-color:var(--hairline)}.status-dot[data-v-643396ab]{background:currentColor;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.5s ease-in-out infinite pulse-643396ab}@keyframes pulse-643396ab{0%,to{opacity:1}50%{opacity:.3}}.btn-reload[data-v-643396ab]{border-radius:var(--r-sm);color:inherit;cursor:pointer;opacity:.85;background:0 0;border:1px solid;flex-shrink:0;align-items:center;gap:4px;margin-left:auto;padding:3px 10px;font-size:12px;display:inline-flex}.btn-reload[data-v-643396ab]:hover{opacity:1}.camera-wrapper.camera-disabled[data-v-643396ab]:after{content:"";border-radius:inherit;pointer-events:none;background:#00000073;position:absolute;inset:0}.location-strip[data-v-643396ab]{background:var(--surface-2);border-radius:var(--r-md);color:var(--ink-subtle);align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.location-strip.error[data-v-643396ab]{color:var(--semantic-error)}.mono-text[data-v-643396ab]{font-family:ui-monospace,monospace;font-size:12px}.submit-btn[data-v-643396ab]{width:100%}.submit-error[data-v-643396ab]{color:var(--semantic-error);background:#e5484d14;border:1px solid #e5484d40;border-radius:10px;align-items:flex-start;gap:8px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}.att-records-panel[data-v-643396ab]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-xl);padding:20px}.records-title[data-v-643396ab]{color:var(--ink);margin-bottom:2px;font-size:16px;font-weight:600}.records-sub[data-v-643396ab]{color:var(--ink-subtle);margin-bottom:16px;font-size:13px}.records-empty[data-v-643396ab]{text-align:center;color:var(--ink-subtle);padding:32px;font-size:14px}.records-list[data-v-643396ab]{flex-direction:column;gap:8px;display:flex}.record-item[data-v-643396ab]{background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--r-md);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.record-status[data-v-643396ab]{display:flex}.record-times[data-v-643396ab]{flex-direction:column;gap:4px;display:flex}.record-time[data-v-643396ab]{align-items:baseline;gap:8px;display:flex}.time-label[data-v-643396ab]{color:var(--ink-tertiary);flex-shrink:0;width:44px;font-size:12px}.time-val[data-v-643396ab]{color:var(--ink-muted);font-size:13px}.record-note[data-v-643396ab]{color:var(--ink-subtle);font-size:12px}@keyframes spin-643396ab{to{transform:rotate(360deg)}}.spin[data-v-643396ab]{animation:.8s linear infinite spin-643396ab}@media (width<=900px){.att-layout[data-v-643396ab]{grid-template-columns:1fr}.attendance-page[data-v-643396ab]{padding:16px}.att-topbar[data-v-643396ab]{flex-direction:column;gap:12px}.camera-wrapper[data-v-643396ab]{aspect-ratio:4/3}}@media (width<=480px){.att-title[data-v-643396ab]{font-size:18px}.att-camera-panel[data-v-643396ab],.att-records-panel[data-v-643396ab]{padding:14px}.mode-btn[data-v-643396ab]{padding:6px 8px;font-size:12px}}.sub-page[data-v-c606b05c]{max-width:1000px;margin:0 auto;padding:48px 40px}.sub-header[data-v-c606b05c]{text-align:center;margin-bottom:40px}.sub-headline[data-v-c606b05c]{letter-spacing:-1px;color:var(--ink);margin-bottom:12px;font-size:40px;font-weight:600}.sub-desc[data-v-c606b05c]{color:var(--ink-subtle);font-size:16px}.sub-eyebrow[data-v-c606b05c]{color:var(--brand-secure);margin-bottom:12px}.current-strip[data-v-c606b05c]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);margin-bottom:32px;padding:12px 20px}.current-strip-inner[data-v-c606b05c]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.current-label[data-v-c606b05c]{color:var(--ink-subtle);font-size:13px}.current-usage[data-v-c606b05c]{color:var(--ink-tertiary);margin-left:auto;font-size:13px}.pricing-grid[data-v-c606b05c]{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:64px;display:grid}.pricing-card[data-v-c606b05c]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);flex-direction:column;gap:20px;padding:24px;transition:border-color .15s;display:flex;position:relative}.pricing-card[data-v-c606b05c]:hover{border-color:var(--hairline-strong)}.pricing-card-featured[data-v-c606b05c]{background:var(--surface-2);border-color:var(--hairline-strong);box-shadow:0 0 0 1px var(--primary), inset 0 1px 0 #ffffff0a}.featured-badge[data-v-c606b05c]{background:var(--primary);color:#fff;border-radius:0 0 var(--r-md) var(--r-md);letter-spacing:.2px;padding:2px 10px;font-size:11px;font-weight:600;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.pc-name[data-v-c606b05c]{color:var(--ink-subtle);letter-spacing:.4px;text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:600}.pc-price[data-v-c606b05c]{letter-spacing:-.6px;color:var(--ink);font-size:28px;font-weight:600}.pc-features[data-v-c606b05c]{flex-direction:column;flex:1;gap:10px;list-style:none;display:flex}.pc-feature[data-v-c606b05c]{color:var(--ink-muted);align-items:center;gap:8px;font-size:13px;display:flex}.pc-footer[data-v-c606b05c]{margin-top:auto}.btn-current[data-v-c606b05c]{width:100%;color:var(--semantic-success);border-color:#27a6444d}.pc-free-note[data-v-c606b05c]{color:var(--ink-tertiary);text-align:center;padding:8px;font-size:12px}.pc-cta[data-v-c606b05c]{width:100%}.active-badge[data-v-c606b05c]{margin-left:6px;font-size:10px}.compare-title[data-v-c606b05c]{letter-spacing:-.4px;color:var(--ink);margin-bottom:20px;font-size:22px;font-weight:600}.compare-table-wrap[data-v-c606b05c]{overflow-x:auto}.compare-table[data-v-c606b05c]{border-collapse:collapse;width:100%;font-size:14px}.compare-table th[data-v-c606b05c]{text-align:left;color:var(--ink-subtle);border-bottom:1px solid var(--hairline);padding:12px 16px;font-size:13px;font-weight:600}.compare-table td[data-v-c606b05c]{border-bottom:1px solid var(--hairline);color:var(--ink-muted);padding:12px 16px}.compare-table tr:last-child td[data-v-c606b05c]{border-bottom:none}.compare-table tr:hover td[data-v-c606b05c]{background:var(--surface-1)}.compare-table td[data-v-c606b05c]:first-child{color:var(--ink);font-weight:500}.check-yes[data-v-c606b05c]{color:var(--semantic-success);font-size:15px}@keyframes spin-c606b05c{to{transform:rotate(360deg)}}.spin[data-v-c606b05c]{animation:.8s linear infinite spin-c606b05c}.modal-overlay[data-v-c606b05c]{z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box[data-v-c606b05c]{background:var(--surface-1);border:1px solid var(--hairline-strong);border-radius:var(--r-lg);flex-direction:column;gap:20px;width:min(420px,92vw);padding:28px 24px;display:flex;box-shadow:0 24px 48px #00000080}.modal-title[data-v-c606b05c]{color:var(--ink);margin-bottom:4px;font-size:17px;font-weight:600}.modal-subtitle[data-v-c606b05c]{color:var(--ink-subtle);font-size:13px}.method-list[data-v-c606b05c]{flex-direction:column;gap:8px;max-height:300px;display:flex;overflow-y:auto}.method-item[data-v-c606b05c]{border:1px solid var(--hairline);border-radius:var(--r-md);cursor:pointer;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.method-item[data-v-c606b05c]:hover{border-color:var(--hairline-strong)}.method-item-selected[data-v-c606b05c]{border-color:var(--primary);background:rgba(var(--primary-rgb,59,130,246),.06)}.method-item input[type=radio][data-v-c606b05c]{accent-color:var(--primary);width:15px;height:15px}.method-name[data-v-c606b05c]{color:var(--ink);flex:1;font-size:13px}.method-tag[data-v-c606b05c]{letter-spacing:.3px;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.tag-qris[data-v-c606b05c]{color:#059669;background:#10b9811f}.tag-va[data-v-c606b05c]{color:#4f46e5;background:#6366f11f}.modal-error[data-v-c606b05c]{color:var(--semantic-error,#ef4444);margin:0;font-size:12px}.modal-footer[data-v-c606b05c]{justify-content:flex-end;gap:10px;display:flex}.free-trial-banner[data-v-c606b05c]{border-radius:var(--r-lg);background:linear-gradient(135deg,#10b98114 0%,#6366f114 100%);border:1px solid #10b98140;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding:16px 20px;display:flex}.ft-left[data-v-c606b05c]{flex:1;align-items:flex-start;gap:12px;min-width:220px;display:flex}.ft-icon[data-v-c606b05c]{font-size:22px;line-height:1}.ft-title[data-v-c606b05c]{color:var(--ink);margin-bottom:3px;font-size:14px;font-weight:600}.ft-desc[data-v-c606b05c]{color:var(--ink-subtle);font-size:12px;line-height:1.5}.btn-wa[data-v-c606b05c]{color:#fff;border-radius:var(--r-md);cursor:pointer;white-space:nowrap;background:#25d366;border:none;align-items:center;gap:7px;padding:9px 16px;font-size:13px;font-weight:600;transition:background .15s,opacity .15s;display:flex}.btn-wa[data-v-c606b05c]:hover{background:#1ebe5d}.btn-wa[data-v-c606b05c]:active{opacity:.85}@media (width<=768px){.pricing-grid[data-v-c606b05c]{grid-template-columns:1fr}.sub-page[data-v-c606b05c]{padding:24px 16px}.sub-headline[data-v-c606b05c]{font-size:28px}.current-strip-inner[data-v-c606b05c]{flex-direction:column;align-items:flex-start;gap:6px}.current-usage[data-v-c606b05c]{margin-left:0}.compare-table th[data-v-c606b05c],.compare-table td[data-v-c606b05c]{padding:8px 10px;font-size:12px}.free-trial-banner[data-v-c606b05c]{flex-direction:column;align-items:flex-start}.btn-wa[data-v-c606b05c]{justify-content:center;width:100%}}.auth-callback[data-v-e59d0bf5]{min-height:100vh;padding:var(--sp-lg);place-items:center;display:grid}.auth-card[data-v-e59d0bf5]{text-align:center;gap:var(--sp-md);width:min(360px,100%);color:var(--ink-subtle);flex-direction:column;display:flex}.auth-spinner[data-v-e59d0bf5]{border:2px solid var(--hairline-strong);border-top-color:var(--primary);border-radius:999px;width:24px;height:24px;margin:0 auto;animation:.9s linear infinite spin-e59d0bf5}@keyframes spin-e59d0bf5{to{transform:rotate(360deg)}}.user-portal[data-v-0b14db75]{gap:var(--sp-md);flex-direction:column;display:flex}.portal-head[data-v-0b14db75]{margin-bottom:var(--sp-xs);justify-content:space-between;align-items:flex-start;display:flex}.portal-head-actions[data-v-0b14db75]{flex-shrink:0;align-items:center;gap:8px;display:flex}.portal-title[data-v-0b14db75]{font-size:var(--fs-headline);letter-spacing:var(--ls-headline)}.portal-sub[data-v-0b14db75]{color:var(--ink-subtle)}.portal-alert[data-v-0b14db75]{border-radius:var(--r-md);font-size:var(--fs-body-sm);padding:10px 12px}.portal-alert.error[data-v-0b14db75]{color:var(--semantic-error);background:#e5484d1f;border:1px solid #e5484d66}.portal-alert.success[data-v-0b14db75]{color:var(--semantic-success);background:#27a6441f;border:1px solid #27a64466}.hint[data-v-0b14db75]{color:var(--ink-subtle);font-size:var(--fs-body-sm);margin-top:4px}.face-section[data-v-0b14db75],.enroll-section[data-v-0b14db75]{gap:var(--sp-sm);flex-direction:column;display:flex}.face-done[data-v-0b14db75]{padding:12px}.camera-box[data-v-0b14db75]{border:1px solid var(--hairline);border-radius:var(--r-lg);background:var(--surface-2);max-width:420px;overflow:hidden}.camera[data-v-0b14db75]{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.camera.hidden[data-v-0b14db75]{display:none}.actions[data-v-0b14db75],.enroll-row[data-v-0b14db75]{gap:var(--sp-xs);display:flex}.enroll-row .input[data-v-0b14db75]{flex:1}.activity-list[data-v-0b14db75]{gap:var(--sp-xs);margin-top:var(--sp-sm);flex-direction:column;display:flex}.activity-item[data-v-0b14db75]{justify-content:space-between;gap:var(--sp-sm);background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--r-md);align-items:center;padding:12px;display:flex}.name[data-v-0b14db75]{color:var(--ink);margin-bottom:2px;font-weight:600}@media (width<=768px){.actions[data-v-0b14db75],.enroll-row[data-v-0b14db75],.activity-item[data-v-0b14db75]{flex-direction:column;align-items:stretch}.user-portal[data-v-0b14db75]{padding:16px}.face-section[data-v-0b14db75],.enroll-section[data-v-0b14db75]{gap:var(--sp-xs)}}@media (width<=480px){.portal-title[data-v-0b14db75]{font-size:22px}}.scan-shell[data-v-0d9022cf]{background:var(--surface-1,#fff);flex-direction:column;min-height:100vh;display:flex}.scan-header[data-v-0d9022cf]{border-bottom:1px solid var(--hairline,#e4e4e7);background:var(--surface-1,#fff);justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.scan-header-logo[data-v-0d9022cf]{align-items:center;gap:10px;display:flex}.scan-header-name[data-v-0d9022cf]{color:var(--text-1,#111);font-size:1rem;font-weight:700}.scan-header-actions[data-v-0d9022cf]{align-items:center;gap:8px;display:flex}.hdr-btn[data-v-0d9022cf]{cursor:pointer;color:#fff;background:#5e6ad2;border:1px solid #5e6ad2;border-radius:8px;padding:6px 16px;font-size:.875rem;font-weight:600;transition:background .15s}.hdr-btn[data-v-0d9022cf]:hover{background:#4a56c4}.hdr-btn-ghost[data-v-0d9022cf]{color:var(--text-2,#555);border-color:var(--hairline,#e4e4e7);background:0 0}.hdr-btn-ghost[data-v-0d9022cf]:hover{background:var(--surface-2,#f4f4f5)}.scan-body[data-v-0d9022cf]{flex:1;justify-content:center;align-items:flex-start;padding:32px 16px;display:flex}.scan-card[data-v-0d9022cf]{flex-direction:column;gap:14px;width:100%;max-width:520px;display:flex}.scan-title[data-v-0d9022cf]{color:var(--text-1,#111);margin:0;font-size:1.375rem;font-weight:700}.scan-hint[data-v-0d9022cf]{color:var(--ink-subtle,#888);margin:0;font-size:.875rem}.scan-alert[data-v-0d9022cf]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 14px;font-size:.875rem}.form-group[data-v-0d9022cf]{flex-direction:column;gap:5px;display:flex}.form-label[data-v-0d9022cf]{color:var(--ink-subtle,#555);font-size:.8125rem;font-weight:500}.camera-box[data-v-0d9022cf]{border:1px solid var(--hairline,#e4e4e7);background:var(--surface-2,#f4f4f5);border-radius:14px;overflow:hidden}.camera[data-v-0d9022cf]{aspect-ratio:4/3;object-fit:cover;width:100%;display:block;transform:scaleX(-1)}.mode-toggle[data-v-0d9022cf]{background:var(--surface-2,#f4f4f5);border-radius:10px;gap:3px;padding:3px;display:flex}.mode-btn[data-v-0d9022cf]{color:var(--ink-subtle,#888);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:9px 12px;font-family:inherit;font-size:.9rem;font-weight:600;transition:background .15s,color .15s}.mode-btn.active[data-v-0d9022cf]{color:#fff;background:#5e6ad2}.mode-btn[data-v-0d9022cf]:disabled{opacity:.5;cursor:not-allowed}.liveness-banner[data-v-0d9022cf]{background:#5e6ad21a;border:1px solid #5e6ad24d;border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.liveness-icon[data-v-0d9022cf]{flex-shrink:0;margin-top:1px;font-size:22px;line-height:1}.liveness-text[data-v-0d9022cf]{flex-direction:column;gap:2px;display:flex}.liveness-label[data-v-0d9022cf]{color:var(--ink,#111);font-size:13px}.liveness-hint[data-v-0d9022cf]{color:var(--ink-subtle,#888);font-size:12px}.detection-status[data-v-0d9022cf]{border:1px solid var(--hairline,#e4e4e7);border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;transition:background .2s,border-color .2s,color .2s;display:flex}.detection-status.submitting[data-v-0d9022cf]{color:#5e6ad2;background:#5e6ad21a;border-color:#5e6ad24d}.detection-status.success[data-v-0d9022cf]{color:var(--semantic-success,#10b981);background:#10b98114;border-color:#10b98140}.status-dot[data-v-0d9022cf]{background:currentColor;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.5s ease-in-out infinite pulse-0d9022cf}.success-panel[data-v-0d9022cf]{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:48px 0;display:flex}.success-icon-wrap[data-v-0d9022cf]{color:var(--semantic-success,#10b981)}.success-label[data-v-0d9022cf]{color:var(--semantic-success,#10b981);margin:0;font-size:1.5rem;font-weight:700}.success-name[data-v-0d9022cf]{color:var(--ink,#111);margin:0;font-size:1.25rem;font-weight:700}.success-sub[data-v-0d9022cf]{color:var(--ink-subtle,#888);margin:-8px 0 0;font-size:.875rem}.btn-scan-again[data-v-0d9022cf]{color:#fff;cursor:pointer;background:#5e6ad2;border:none;border-radius:10px;margin-top:8px;padding:10px 28px;font-size:1rem;font-weight:600}.btn-scan-again[data-v-0d9022cf]:hover{background:#4a56c4}@keyframes pulse-0d9022cf{0%,to{opacity:1}50%{opacity:.3}}@keyframes spin-0d9022cf{to{transform:rotate(360deg)}}.spin[data-v-0d9022cf]{animation:.8s linear infinite spin-0d9022cf}@media (width<=540px){.scan-header[data-v-0d9022cf]{padding:10px 12px}.scan-body[data-v-0d9022cf]{padding:16px 8px}.scan-title[data-v-0d9022cf]{font-size:1.1rem}}.history-page[data-v-6b952444]{max-width:1100px;padding:24px 16px}.page-header[data-v-6b952444]{margin-bottom:24px}.page-title[data-v-6b952444]{color:var(--ink);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-6b952444]{color:var(--ink-subtle);margin:0;font-size:.875rem}.filter-bar[data-v-6b952444]{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.filter-group[data-v-6b952444]{flex-direction:column;gap:6px;display:flex}.filter-group label[data-v-6b952444]{color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.filter-group select[data-v-6b952444],.filter-group input[data-v-6b952444]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--ink);border-radius:8px;min-width:160px;padding:8px 12px;font-size:.875rem}.filter-group select[data-v-6b952444]:focus,.filter-group input[data-v-6b952444]:focus{border-color:#5e6ad2;outline:none}.btn-refresh[data-v-6b952444]{background:var(--surface-2,#f4f4f5);border:1px solid var(--hairline);color:var(--ink-muted);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.875rem;font-weight:500;transition:background .15s;display:flex}.btn-refresh[data-v-6b952444]:hover:not(:disabled){background:var(--surface-3,#e4e4e7)}.btn-refresh[data-v-6b952444]:disabled{opacity:.5;cursor:not-allowed}.error-msg[data-v-6b952444]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:.875rem}.loading-row[data-v-6b952444]{color:var(--ink-subtle);align-items:center;gap:12px;padding:40px 0;font-size:.875rem;display:flex}.spinner[data-v-6b952444]{border:2px solid var(--hairline);border-top-color:#5e6ad2;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin-6b952444}@keyframes spin-6b952444{to{transform:rotate(360deg)}}.table-wrap[data-v-6b952444]{border:1px solid var(--hairline);border-radius:12px;overflow-x:auto}.history-table[data-v-6b952444]{border-collapse:collapse;width:100%;font-size:.875rem}.history-table thead tr[data-v-6b952444]{background:var(--surface-2,#f4f4f5)}.history-table th[data-v-6b952444]{text-align:left;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:12px 16px;font-size:.75rem;font-weight:600}.history-table td[data-v-6b952444]{border-top:1px solid var(--hairline);color:var(--ink);vertical-align:middle;padding:12px 16px}.td-email[data-v-6b952444]{color:var(--ink-subtle);font-size:.8125rem}.history-table tbody tr[data-v-6b952444]:hover{background:var(--surface-2,#f9f9f9)}.badge[data-v-6b952444]{text-transform:capitalize;border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-present[data-v-6b952444]{color:#065f46;background:#d1fae5}.badge-late[data-v-6b952444]{color:#92400e;background:#fef3c7}.badge-absent[data-v-6b952444]{color:#991b1b;background:#fee2e2}.badge-checked_in[data-v-6b952444]{color:#1e40af;background:#dbeafe}.empty-state[data-v-6b952444]{color:var(--ink-subtle);flex-direction:column;align-items:center;gap:12px;padding:60px 20px;font-size:.875rem;display:flex}.pagination-bar[data-v-6b952444]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.record-count[data-v-6b952444]{color:var(--ink-subtle);font-size:.8125rem}.pagination-controls[data-v-6b952444]{align-items:center;gap:4px;display:flex}.page-btn[data-v-6b952444]{border:1px solid var(--hairline);background:var(--surface-1);width:32px;height:32px;color:var(--ink);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;font-size:.875rem;transition:background .12s,border-color .12s;display:inline-flex}.page-btn[data-v-6b952444]:hover:not(:disabled){background:var(--surface-2);border-color:var(--hairline-strong)}.page-btn[data-v-6b952444]:disabled{opacity:.35;cursor:not-allowed}.page-info[data-v-6b952444]{color:var(--ink-subtle);padding:0 10px;font-size:.8125rem}.btn-photo[data-v-6b952444]{background:var(--surface-2);border:1px solid var(--hairline);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:.8125rem;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.btn-photo[data-v-6b952444]:hover{background:var(--surface-3,#1d2028);border-color:var(--hairline-strong)}.pay-btn[data-v-6b952444]{cursor:pointer;white-space:nowrap;border:none;border-radius:99px;padding:4px 12px;font-size:.75rem;font-weight:600;transition:all .15s}.pay-paid[data-v-6b952444]{color:#065f46;background:#d1fae5}.pay-paid[data-v-6b952444]:hover{background:#a7f3d0}.pay-unpaid[data-v-6b952444]{color:#991b1b;background:#fee2e2}.pay-unpaid[data-v-6b952444]:hover{background:#fecaca}.pay-btn[data-v-6b952444]:disabled{opacity:.5;cursor:not-allowed}.no-photo-dash[data-v-6b952444]{color:var(--ink-tertiary);font-size:.875rem}.modal-overlay[data-v-6b952444]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.photo-modal[data-v-6b952444]{background:var(--surface-1);border:1px solid var(--hairline-strong);border-radius:16px;flex-direction:column;width:100%;max-width:760px;max-height:90vh;display:flex;overflow-y:auto}.modal-header[data-v-6b952444]{border-bottom:1px solid var(--hairline);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px 16px;display:flex}.modal-title[data-v-6b952444]{color:var(--ink);margin:0 0 4px;font-size:1rem;font-weight:700}.modal-sub[data-v-6b952444]{color:var(--ink-subtle);margin:0;font-size:.8125rem}.modal-close[data-v-6b952444]{border:1px solid var(--hairline);background:var(--surface-2);width:32px;height:32px;color:var(--ink-subtle);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;transition:background .12s,color .12s;display:flex}.modal-close[data-v-6b952444]:hover{background:var(--surface-3,#1d2028);color:var(--ink)}.photo-loading[data-v-6b952444]{color:var(--ink-subtle);flex-direction:column;align-items:center;gap:12px;padding:48px 24px;font-size:.875rem;display:flex}.photo-grid[data-v-6b952444]{grid-template-columns:1fr 1fr;gap:20px;padding:20px 24px 24px;display:grid}@media (width<=520px){.photo-grid[data-v-6b952444]{grid-template-columns:1fr}}.photo-slot[data-v-6b952444]{flex-direction:column;gap:10px;display:flex}.photo-label[data-v-6b952444]{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-subtle);margin:0;font-size:.75rem;font-weight:600}.photo-img[data-v-6b952444]{border:1px solid var(--hairline);object-fit:cover;aspect-ratio:3/4;background:var(--surface-2);border-radius:10px;width:100%;display:block}.no-photo[data-v-6b952444]{aspect-ratio:3/4;border:1px dashed var(--hairline-strong);background:var(--surface-2);color:var(--ink-tertiary);border-radius:10px;justify-content:center;align-items:center;font-size:.8125rem;display:flex}@media (width<=768px){.filter-bar[data-v-6b952444]{flex-direction:column;align-items:stretch}.filter-group select[data-v-6b952444],.filter-group input[data-v-6b952444]{min-width:0}.pagination-bar[data-v-6b952444]{flex-direction:column;align-items:center;gap:8px}}.report-page[data-v-425a3b4d]{max-width:1100px;padding:24px 16px}.page-header[data-v-425a3b4d]{margin-bottom:24px}.page-title[data-v-425a3b4d]{color:var(--ink);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-425a3b4d]{color:var(--ink-subtle);margin:0;font-size:.875rem}.mode-toggle[data-v-425a3b4d]{gap:8px;margin-bottom:20px;display:flex}.mode-btn[data-v-425a3b4d]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--ink-muted);cursor:pointer;border-radius:8px;padding:8px 20px;font-size:.875rem;font-weight:500;transition:all .15s}.mode-btn.active[data-v-425a3b4d]{color:#fff;background:#5e6ad2;border-color:#5e6ad2}.mode-btn[data-v-425a3b4d]:hover:not(.active){background:var(--surface-2)}.filter-bar[data-v-425a3b4d]{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.filter-group[data-v-425a3b4d]{flex-direction:column;gap:6px;display:flex}.filter-group label[data-v-425a3b4d]{color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.filter-group select[data-v-425a3b4d],.filter-group input[data-v-425a3b4d]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--ink);border-radius:8px;min-width:160px;padding:8px 12px;font-size:.875rem}.filter-group select[data-v-425a3b4d]:focus,.filter-group input[data-v-425a3b4d]:focus{border-color:#5e6ad2;outline:none}.btn-primary[data-v-425a3b4d]{color:#fff;cursor:pointer;background:#5e6ad2;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.875rem;font-weight:500;transition:background .15s;display:flex}.btn-primary[data-v-425a3b4d]:hover:not(:disabled){background:#4c59b5}.btn-primary[data-v-425a3b4d]:disabled{opacity:.5;cursor:not-allowed}.error-msg[data-v-425a3b4d]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:.875rem}.loading-row[data-v-425a3b4d]{color:var(--ink-subtle);align-items:center;gap:12px;padding:40px 0;font-size:.875rem;display:flex}.spinner[data-v-425a3b4d]{border:2px solid var(--hairline);border-top-color:#5e6ad2;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin-425a3b4d}@keyframes spin-425a3b4d{to{transform:rotate(360deg)}}.table-wrap[data-v-425a3b4d]{border:1px solid var(--hairline);border-radius:12px;overflow-x:auto}.report-table[data-v-425a3b4d]{border-collapse:collapse;width:100%;font-size:.875rem}.report-table thead tr[data-v-425a3b4d]{background:var(--surface-2,#f4f4f5)}.report-table th[data-v-425a3b4d]{text-align:left;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:12px 14px;font-size:.75rem;font-weight:600}.report-table td[data-v-425a3b4d]{border-top:1px solid var(--hairline);color:var(--ink);vertical-align:middle;padding:12px 14px}.report-table tbody tr[data-v-425a3b4d]:hover{background:var(--surface-2,#f9f9f9)}.num-cell[data-v-425a3b4d]{text-align:center;font-weight:600}.num-total[data-v-425a3b4d]{color:var(--ink)}.paid[data-v-425a3b4d]{color:#059669}.unpaid[data-v-425a3b4d]{color:#dc2626}.btn-detail[data-v-425a3b4d]{border:1px solid var(--hairline);background:var(--surface-2);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:6px;padding:5px 12px;font-size:.8125rem;font-weight:500;transition:background .12s}.btn-detail[data-v-425a3b4d]:hover{background:var(--surface-3)}.empty-state[data-v-425a3b4d]{color:var(--ink-subtle);flex-direction:column;align-items:center;gap:12px;padding:60px 20px;font-size:.875rem;display:flex}.empty-state.small[data-v-425a3b4d]{padding:30px 20px}.badge[data-v-425a3b4d]{border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-present[data-v-425a3b4d]{color:#065f46;background:#d1fae5}.badge-late[data-v-425a3b4d]{color:#92400e;background:#fef3c7}.badge-absent[data-v-425a3b4d]{color:#991b1b;background:#fee2e2}.pay-btn[data-v-425a3b4d]{cursor:pointer;white-space:nowrap;border:none;border-radius:99px;padding:4px 12px;font-size:.75rem;font-weight:600;transition:all .15s}.pay-paid[data-v-425a3b4d]{color:#065f46;background:#d1fae5}.pay-paid[data-v-425a3b4d]:hover{background:#a7f3d0}.pay-unpaid[data-v-425a3b4d]{color:#991b1b;background:#fee2e2}.pay-unpaid[data-v-425a3b4d]:hover{background:#fecaca}.pay-btn[data-v-425a3b4d]:disabled{opacity:.5;cursor:not-allowed}.modal-overlay[data-v-425a3b4d]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.detail-modal[data-v-425a3b4d]{background:var(--surface-1);border:1px solid var(--hairline-strong);border-radius:16px;flex-direction:column;width:100%;max-width:900px;max-height:85vh;display:flex;overflow-y:auto}.modal-header[data-v-425a3b4d]{border-bottom:1px solid var(--hairline);flex-shrink:0;justify-content:space-between;align-items:start;gap:16px;padding:20px 24px 16px;display:flex}.modal-title[data-v-425a3b4d]{color:var(--ink);margin:0 0 4px;font-size:1rem;font-weight:700}.modal-sub[data-v-425a3b4d]{color:var(--ink-subtle);margin:0;font-size:.8125rem}.modal-close[data-v-425a3b4d]{border:1px solid var(--hairline);background:var(--surface-2);width:32px;height:32px;color:var(--ink-subtle);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;transition:background .12s;display:flex}.modal-close[data-v-425a3b4d]:hover{background:var(--surface-3);color:var(--ink)}.detail-table-wrap[data-v-425a3b4d]{padding:0 0 16px;overflow-x:auto}.detail-table[data-v-425a3b4d]{border-collapse:collapse;width:100%;font-size:.8125rem}.detail-table thead tr[data-v-425a3b4d]{background:var(--surface-2)}.detail-table th[data-v-425a3b4d]{text-align:left;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:10px 14px;font-size:.7rem;font-weight:600}.detail-table td[data-v-425a3b4d]{border-top:1px solid var(--hairline);color:var(--ink);vertical-align:middle;padding:10px 14px}.td-email[data-v-425a3b4d]{color:var(--ink-subtle);font-size:.8125rem}@media (width<=768px){.filter-bar[data-v-425a3b4d]{flex-direction:column;align-items:stretch}.filter-group select[data-v-425a3b4d],.filter-group input[data-v-425a3b4d]{min-width:0}}.salary-modal[data-v-425a3b4d]{background:var(--surface-1);border:1px solid var(--hairline-strong);border-radius:16px;flex-direction:column;width:100%;max-width:1000px;max-height:85vh;display:flex;overflow-y:auto}.salary-filter[data-v-425a3b4d]{border-bottom:1px solid var(--hairline);gap:16px;padding:16px 24px;display:flex}.salary-table-wrap[data-v-425a3b4d]{flex:1;padding:0 0 16px;overflow-x:auto}.salary-table[data-v-425a3b4d]{border-collapse:collapse;width:100%;font-size:.8125rem}.salary-table thead tr[data-v-425a3b4d]{background:var(--surface-2)}.salary-table th[data-v-425a3b4d]{text-align:left;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:10px 12px;font-size:.7rem;font-weight:600}.salary-table td[data-v-425a3b4d]{border-top:1px solid var(--hairline);color:var(--ink);vertical-align:middle;padding:10px 12px}.emp-name[data-v-425a3b4d]{font-weight:600}.emp-email[data-v-425a3b4d]{color:var(--ink-subtle);font-size:.75rem}.izin-cell[data-v-425a3b4d]{color:#059669}.bolos-cell[data-v-425a3b4d]{color:#dc2626;font-weight:600}.deduction-cell[data-v-425a3b4d]{color:#dc2626}.should-pay-cell[data-v-425a3b4d]{color:#059669;font-weight:700}.btn-secondary[data-v-425a3b4d]{background:var(--surface-2,#f4f4f5);border:1px solid var(--hairline);color:var(--ink);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.875rem;font-weight:500;transition:background .15s;display:flex}.btn-secondary[data-v-425a3b4d]:hover{background:var(--surface-3,#e4e4e7)}.salary-page[data-v-19616149]{max-width:1100px;padding:24px 16px}.page-header[data-v-19616149]{margin-bottom:24px}.page-title[data-v-19616149]{color:var(--ink);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-19616149]{color:var(--ink-subtle);margin:0;font-size:.875rem}.type-toggle[data-v-19616149]{gap:8px;margin-bottom:20px;display:flex}.type-btn[data-v-19616149]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--ink-muted);cursor:pointer;border-radius:8px;flex:1;padding:12px 24px;font-size:.9375rem;font-weight:600;transition:all .15s}.type-btn.active[data-v-19616149]{color:#fff;background:#5e6ad2;border-color:#5e6ad2}.type-btn[data-v-19616149]:hover:not(.active){background:var(--surface-2)}.filter-bar[data-v-19616149]{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.filter-group[data-v-19616149]{flex-direction:column;gap:6px;display:flex}.filter-group label[data-v-19616149]{color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.filter-group input[data-v-19616149]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--ink);border-radius:8px;padding:8px 12px;font-size:.875rem}.filter-group input[data-v-19616149]:focus{border-color:#5e6ad2;outline:none}.btn-primary[data-v-19616149]{color:#fff;cursor:pointer;background:#5e6ad2;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.875rem;font-weight:500;display:flex}.btn-primary[data-v-19616149]:hover:not(:disabled){background:#4c59b5}.btn-primary[data-v-19616149]:disabled{opacity:.6}.error-msg[data-v-19616149]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:.875rem}.summary-cards[data-v-19616149]{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px;display:grid}.summary-card[data-v-19616149]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;padding:16px 20px}.summary-label[data-v-19616149]{color:var(--ink-subtle);margin-bottom:4px;font-size:.8125rem}.summary-value[data-v-19616149]{color:var(--ink);font-size:1.25rem;font-weight:700}.summary-value.unpaid[data-v-19616149]{color:#b45309}.summary-value.paid[data-v-19616149]{color:#059669}.loading-row[data-v-19616149]{color:var(--ink-subtle);align-items:center;gap:12px;padding:40px 0;font-size:.875rem;display:flex}.spinner[data-v-19616149]{border:2px solid var(--hairline);border-top-color:#5e6ad2;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin-19616149}@keyframes spin-19616149{to{transform:rotate(360deg)}}.empty-state[data-v-19616149]{color:var(--ink-subtle);flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.table-wrap[data-v-19616149]{border:1px solid var(--hairline);border-radius:12px;overflow-x:auto}.salary-table[data-v-19616149]{border-collapse:collapse;width:100%;font-size:.875rem}.salary-table thead tr[data-v-19616149]{background:var(--surface-2)}.salary-table th[data-v-19616149]{text-align:left;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:11px 14px;font-size:.7rem;font-weight:600}.salary-table td[data-v-19616149]{border-top:1px solid var(--hairline);color:var(--ink);vertical-align:middle;padding:11px 14px}.salary-table tbody tr[data-v-19616149]:hover{background:var(--surface-2)}.emp-name[data-v-19616149]{font-weight:600}.emp-email[data-v-19616149]{color:var(--ink-subtle);font-size:.75rem}.emp-role[data-v-19616149]{color:var(--ink-subtle);background:var(--surface-2);border-radius:4px;margin-top:2px;padding:1px 6px;font-size:.7rem;display:inline-block}.act-name[data-v-19616149]{color:var(--ink-subtle);font-size:.8125rem}.nowrap[data-v-19616149]{white-space:nowrap}.center[data-v-19616149]{text-align:center}.amount[data-v-19616149]{white-space:nowrap;font-weight:600}.unit[data-v-19616149]{color:var(--ink-subtle);margin-left:2px;font-size:.75rem}.status-badge[data-v-19616149]{border-radius:99px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-block}.badge-present[data-v-19616149]{color:#065f46;background:#d1fae5}.badge-late[data-v-19616149]{color:#92400e;background:#fef3c7}.pay-btn[data-v-19616149]{cursor:pointer;white-space:nowrap;border:none;border-radius:99px;padding:6px 14px;font-size:.75rem;font-weight:600;transition:all .15s}.pay-paid[data-v-19616149]{color:#065f46;background:#d1fae5}.pay-paid[data-v-19616149]:hover{background:#a7f3d0}.pay-unpaid[data-v-19616149]{color:#92400e;background:#fef3c7}.pay-unpaid[data-v-19616149]:hover{background:#fde68a}.pay-btn[data-v-19616149]:disabled{opacity:.5;cursor:not-allowed}.bolos-cell[data-v-19616149]{color:#dc2626;font-weight:600}.paid-amount[data-v-19616149]{color:#059669;font-weight:700}.muted-dash[data-v-19616149]{color:var(--ink-subtle)}.action-cell[data-v-19616149]{white-space:nowrap}.modal-backdrop[data-v-19616149]{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-card[data-v-19616149]{background:var(--surface-1);border-radius:16px;width:100%;max-width:460px;overflow:hidden;box-shadow:0 20px 60px #00000040}.modal-header[data-v-19616149]{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:flex-start;padding:20px 24px 16px;display:flex}.modal-title[data-v-19616149]{color:var(--ink);font-size:1rem;font-weight:700}.modal-sub[data-v-19616149]{color:var(--ink-subtle);margin-top:2px;font-size:.8125rem}.modal-close[data-v-19616149]{color:var(--ink-subtle);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:1rem;line-height:1}.modal-close[data-v-19616149]:hover{background:var(--surface-2)}.modal-body[data-v-19616149]{padding:20px 24px}.info-grid[data-v-19616149]{grid-template-columns:1fr 1fr;gap:12px;display:grid}.info-item[data-v-19616149]{flex-direction:column;gap:2px;display:flex}.info-label[data-v-19616149]{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-subtle);font-size:.72rem}.info-val[data-v-19616149]{color:var(--ink);font-size:.9rem;font-weight:600}.bolos-text[data-v-19616149]{color:#dc2626}.modal-divider[data-v-19616149]{background:var(--hairline);height:1px;margin:16px 0}.field-group[data-v-19616149]{margin-bottom:14px}.field-label[data-v-19616149]{color:var(--ink-subtle);margin-bottom:6px;font-size:.8rem;font-weight:500;display:block}.field-hint[data-v-19616149]{color:var(--ink-subtle);font-size:.72rem;font-weight:400}.input-currency[data-v-19616149]{border:1px solid var(--hairline);background:var(--surface-1);border-radius:8px;align-items:center;gap:8px;padding:8px 12px;display:flex}.input-currency span[data-v-19616149]{color:var(--ink-subtle);flex-shrink:0;font-size:.875rem}.currency-input[data-v-19616149]{color:var(--ink);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:.9375rem;font-weight:600}.input-currency[data-v-19616149]:focus-within{border-color:#5e6ad2}.total-row[data-v-19616149]{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.total-label[data-v-19616149]{color:var(--ink);font-size:.875rem;font-weight:600}.total-value[data-v-19616149]{color:#059669;font-size:1.25rem;font-weight:800}.total-breakdown[data-v-19616149]{color:var(--ink-subtle);text-align:right;font-size:.78rem}.breakdown-neg[data-v-19616149]{color:#dc2626}.breakdown-pos[data-v-19616149]{color:#059669}.modal-footer[data-v-19616149]{border-top:1px solid var(--hairline);gap:10px;padding:16px 24px 20px;display:flex}.btn-cancel[data-v-19616149]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--ink);cursor:pointer;border-radius:8px;flex:1;padding:10px;font-size:.875rem;font-weight:500}.btn-cancel[data-v-19616149]:hover{background:var(--surface-2)}.btn-confirm[data-v-19616149]{color:#fff;cursor:pointer;background:#059669;border:none;border-radius:8px;flex:2;padding:10px;font-size:.875rem;font-weight:600}.btn-confirm[data-v-19616149]:hover:not(:disabled){background:#047857}.btn-confirm[data-v-19616149]:disabled{opacity:.6;cursor:not-allowed}@media (width<=768px){.summary-cards[data-v-19616149],.info-grid[data-v-19616149]{grid-template-columns:1fr}}.role-page[data-v-846a289f]{max-width:800px;padding:24px 16px}.page-header[data-v-846a289f]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-title[data-v-846a289f]{color:var(--ink);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-846a289f]{color:var(--ink-subtle);margin:0;font-size:.875rem}.btn-primary[data-v-846a289f]{color:#fff;cursor:pointer;background:#5e6ad2;border:none;border-radius:8px;align-items:center;gap:6px;padding:10px 16px;font-size:.875rem;font-weight:500;transition:background .15s;display:flex}.btn-primary[data-v-846a289f]:hover:not(:disabled){background:#4c59b5}.btn-primary[data-v-846a289f]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-846a289f]{background:var(--surface-2);border:1px solid var(--hairline);color:var(--ink);cursor:pointer;border-radius:8px;padding:10px 16px;font-size:.875rem;font-weight:500;transition:background .15s}.btn-secondary[data-v-846a289f]:hover{background:var(--surface-3)}.error-msg[data-v-846a289f]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:.875rem}.loading-row[data-v-846a289f]{color:var(--ink-subtle);align-items:center;gap:12px;padding:40px 0;font-size:.875rem;display:flex}.spinner[data-v-846a289f]{border:2px solid var(--hairline);border-top-color:#5e6ad2;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin-846a289f}@keyframes spin-846a289f{to{transform:rotate(360deg)}}.empty-state[data-v-846a289f]{color:var(--ink-subtle);flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.empty-sub[data-v-846a289f]{color:var(--ink-tertiary);margin:0;font-size:.8125rem}.role-grid[data-v-846a289f]{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.role-card[data-v-846a289f]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:12px;justify-content:space-between;align-items:center;padding:16px 20px;transition:box-shadow .15s;display:flex}.role-card[data-v-846a289f]:hover{box-shadow:0 4px 12px #00000014}.role-info[data-v-846a289f]{flex:1;min-width:0}.role-name[data-v-846a289f]{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;margin:0 0 4px;font-size:1rem;font-weight:600;overflow:hidden}.role-salary[data-v-846a289f]{color:var(--ink-subtle);margin:0;font-size:.875rem}.role-actions[data-v-846a289f]{flex-shrink:0;gap:8px;display:flex}.btn-icon[data-v-846a289f]{border:1px solid var(--hairline);background:var(--surface-2);width:32px;height:32px;color:var(--ink-subtle);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;transition:all .12s;display:flex}.btn-icon[data-v-846a289f]:hover{background:var(--surface-3);color:var(--ink)}.btn-icon.btn-danger[data-v-846a289f]:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca}.modal-overlay[data-v-846a289f]{z-index:9999;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.form-modal[data-v-846a289f]{background:var(--surface-1);border-radius:16px;width:100%;max-width:400px;overflow:hidden}.modal-header[data-v-846a289f]{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title[data-v-846a289f]{color:var(--ink);margin:0;font-size:1.125rem;font-weight:700}.modal-close[data-v-846a289f]{background:var(--surface-2);width:32px;height:32px;color:var(--ink-subtle);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:1rem;display:flex}.modal-body[data-v-846a289f]{padding:20px 24px}.form-group[data-v-846a289f]{margin-bottom:16px}.form-group[data-v-846a289f]:last-child{margin-bottom:0}.form-group label[data-v-846a289f]{color:var(--ink-subtle);margin-bottom:6px;font-size:.8125rem;font-weight:500;display:block}.form-group input[data-v-846a289f]{border:1px solid var(--hairline);width:100%;color:var(--ink);border-radius:8px;padding:10px 12px;font-size:.875rem}.form-group input[data-v-846a289f]:focus{border-color:#5e6ad2;outline:none}.modal-footer[data-v-846a289f]{border-top:1px solid var(--hairline);background:var(--surface-2);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.type-toggle[data-v-846a289f]{gap:8px;display:flex}.type-btn[data-v-846a289f]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--ink-muted);cursor:pointer;border-radius:8px;flex:1;padding:8px 16px;font-size:.875rem;font-weight:500;transition:all .15s}.type-btn.active[data-v-846a289f]{color:#fff;background:#5e6ad2;border-color:#5e6ad2}.type-btn[data-v-846a289f]:hover:not(.active){background:var(--surface-2)}.emp-page[data-v-ebe4cfa1]{max-width:640px;padding:24px 16px}.page-header[data-v-ebe4cfa1]{margin-bottom:24px}.page-title[data-v-ebe4cfa1]{color:var(--text-1);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-ebe4cfa1]{color:var(--text-3);margin:0;font-size:.875rem}.success-banner[data-v-ebe4cfa1]{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:.875rem;display:flex}.btn-dismiss[data-v-ebe4cfa1]{cursor:pointer;color:#166534;background:0 0;border:none;margin-left:auto;padding:0 4px;font-size:1.1rem;line-height:1}.step-bar[data-v-ebe4cfa1]{align-items:center;gap:0;margin-bottom:24px;display:flex}.step-item[data-v-ebe4cfa1]{flex:1;align-items:center;gap:8px;display:flex;position:relative}.step-item[data-v-ebe4cfa1]:not(:last-child):after{content:"";background:var(--hairline);flex:1;height:2px;margin:0 8px}.step-item.done .step-dot[data-v-ebe4cfa1],.step-item.active .step-dot[data-v-ebe4cfa1]{color:#fff;background:#5e6ad2;border-color:#5e6ad2}.step-dot[data-v-ebe4cfa1]{border:2px solid var(--hairline);background:var(--surface-1);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.step-label[data-v-ebe4cfa1]{color:var(--text-3);white-space:nowrap;font-size:.8125rem;font-weight:500}.step-item.active .step-label[data-v-ebe4cfa1]{color:var(--text-1);font-weight:600}.card[data-v-ebe4cfa1]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:16px;padding:28px 32px}.step-title[data-v-ebe4cfa1]{color:var(--text-1);margin:0 0 20px;font-size:1.125rem;font-weight:600}.step-hint[data-v-ebe4cfa1]{color:var(--text-3);margin:-12px 0 20px;font-size:.875rem}.field[data-v-ebe4cfa1]{margin-bottom:16px}.field label[data-v-ebe4cfa1]{color:var(--text-2);margin-bottom:6px;font-size:.8125rem;font-weight:500;display:block}.field input[data-v-ebe4cfa1],.field select[data-v-ebe4cfa1]{border:1px solid var(--hairline);background:var(--surface-1);width:100%;color:var(--text-1);box-sizing:border-box;border-radius:8px;padding:10px 14px;font-size:.9375rem;transition:border-color .15s}.field input[data-v-ebe4cfa1]:focus,.field select[data-v-ebe4cfa1]:focus{border-color:#5e6ad2;outline:none;box-shadow:0 0 0 3px #5e6ad21f}.camera-area[data-v-ebe4cfa1]{aspect-ratio:4/3;background:#000;border-radius:12px;justify-content:center;align-items:center;max-height:320px;margin-bottom:20px;display:flex;overflow:hidden}.camera-preview[data-v-ebe4cfa1]{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.summary-card[data-v-ebe4cfa1]{background:var(--surface-2,#f4f4f5);border-radius:10px;margin-bottom:20px;padding:14px 16px}.summary-row[data-v-ebe4cfa1]{align-items:center;gap:12px;padding:5px 0;display:flex}.summary-label[data-v-ebe4cfa1]{color:var(--text-3);flex-shrink:0;width:56px;font-size:.8125rem}.summary-val[data-v-ebe4cfa1]{color:var(--text-1);font-size:.875rem;font-weight:500}.summary-face[data-v-ebe4cfa1]{object-fit:cover;border-radius:8px;width:48px;height:48px;transform:scaleX(-1)}.step-actions[data-v-ebe4cfa1]{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.btn-primary[data-v-ebe4cfa1]{color:#fff;cursor:pointer;background:#5e6ad2;border:none;border-radius:8px;padding:10px 24px;font-size:.9375rem;font-weight:600;transition:background .15s}.btn-primary[data-v-ebe4cfa1]:hover:not(:disabled){background:#4a56c4}.btn-primary[data-v-ebe4cfa1]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-ebe4cfa1]{background:var(--surface-2,#f4f4f5);color:var(--text-2);border:1px solid var(--hairline);cursor:pointer;border-radius:8px;padding:10px 20px;font-size:.9375rem;font-weight:500;transition:background .15s}.btn-secondary[data-v-ebe4cfa1]:hover{background:var(--surface-3,#e4e4e7)}.error-msg[data-v-ebe4cfa1]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:.875rem}@media (width<=540px){.step-bar[data-v-ebe4cfa1]{gap:0}.step-label[data-v-ebe4cfa1]{display:none}.card[data-v-ebe4cfa1]{padding:20px 16px}.camera-area[data-v-ebe4cfa1]{max-height:240px}}.page[data-v-e459d7aa]{max-width:900px;padding:24px 16px}.page-header[data-v-e459d7aa]{margin-bottom:20px}.page-title[data-v-e459d7aa]{color:var(--text-1);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-e459d7aa]{color:var(--text-3);margin:0;font-size:.875rem}.filter-bar[data-v-e459d7aa]{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.filter-group[data-v-e459d7aa]{flex-direction:column;gap:5px;display:flex}.filter-group label[data-v-e459d7aa]{color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.filter-group input[data-v-e459d7aa]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--text-1);border-radius:8px;padding:7px 11px;font-size:.875rem}.filter-group input[data-v-e459d7aa]:focus{border-color:#5e6ad2;outline:none}.btn-refresh[data-v-e459d7aa]{background:var(--surface-2,#f4f4f5);border:1px solid var(--hairline);color:var(--text-2);cursor:pointer;border-radius:8px;padding:7px 16px;font-size:.875rem;font-weight:500}.btn-refresh[data-v-e459d7aa]:disabled{opacity:.5;cursor:not-allowed}.error-msg[data-v-e459d7aa]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.875rem}.loading-row[data-v-e459d7aa]{color:var(--text-3);align-items:center;gap:10px;padding:32px 0;font-size:.875rem;display:flex}.spinner[data-v-e459d7aa]{border:2px solid var(--hairline);border-top-color:#5e6ad2;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin-e459d7aa}@keyframes spin-e459d7aa{to{transform:rotate(360deg)}}.table-wrap[data-v-e459d7aa]{border:1px solid var(--hairline);border-radius:12px;overflow-x:auto}.tbl[data-v-e459d7aa]{border-collapse:collapse;width:100%;font-size:.875rem}.tbl thead tr[data-v-e459d7aa]{background:var(--surface-2,#f4f4f5)}.tbl th[data-v-e459d7aa]{text-align:left;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:11px 14px;font-size:.75rem;font-weight:600}.tbl td[data-v-e459d7aa]{border-top:1px solid var(--hairline);color:var(--text-1);vertical-align:middle;padding:11px 14px}.tbl tbody tr[data-v-e459d7aa]:hover{background:var(--surface-2,#f9f9f9)}.badge[data-v-e459d7aa]{border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-present[data-v-e459d7aa]{color:#065f46;background:#d1fae5}.badge-late[data-v-e459d7aa]{color:#92400e;background:#fef3c7}.badge-absent[data-v-e459d7aa]{color:#991b1b;background:#fee2e2}.badge-checked_in[data-v-e459d7aa]{color:#1e40af;background:#dbeafe}.empty[data-v-e459d7aa]{text-align:center;color:var(--text-3);padding:50px 20px;font-size:.875rem}@media (width<=768px){.filter-bar[data-v-e459d7aa]{flex-direction:column;align-items:stretch}}.page[data-v-d18b0817]{max-width:960px;padding:24px 16px}.page-header[data-v-d18b0817]{margin-bottom:20px}.page-title[data-v-d18b0817]{color:var(--text-1);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-d18b0817]{color:var(--text-3);margin:0;font-size:.875rem}.success-banner[data-v-d18b0817]{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:.875rem;display:flex}.btn-dismiss[data-v-d18b0817]{cursor:pointer;color:inherit;background:0 0;border:none;margin-left:auto;font-size:1.1rem}.error-msg[data-v-d18b0817]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.875rem}.loading-row[data-v-d18b0817]{color:var(--text-3);align-items:center;gap:10px;padding:32px 0;font-size:.875rem;display:flex}.spinner[data-v-d18b0817]{border:2px solid var(--hairline);border-top-color:#5e6ad2;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin-d18b0817}@keyframes spin-d18b0817{to{transform:rotate(360deg)}}.section[data-v-d18b0817]{margin-bottom:32px}.section-title[data-v-d18b0817]{color:var(--text-1);margin:0 0 12px;font-size:1rem;font-weight:600}.records-list[data-v-d18b0817]{flex-direction:column;gap:8px;display:flex}.record-card[data-v-d18b0817]{border:1px solid var(--hairline);background:var(--surface-1);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;transition:border-color .15s;display:flex}.record-card.selected[data-v-d18b0817]{border-color:#5e6ad2}.record-info[data-v-d18b0817]{flex-direction:column;gap:3px;display:flex}.record-activity[data-v-d18b0817]{color:var(--text-1);font-size:.875rem;font-weight:600}.record-time[data-v-d18b0817]{color:var(--text-3);font-size:.8125rem}.btn-koreksi[data-v-d18b0817]{color:#fff;cursor:pointer;white-space:nowrap;background:#5e6ad2;border:none;border-radius:7px;flex-shrink:0;padding:6px 14px;font-size:.8125rem;font-weight:600;transition:background .15s}.btn-koreksi[data-v-d18b0817]:hover{background:#4a56c4}.table-wrap[data-v-d18b0817]{border:1px solid var(--hairline);border-radius:10px;overflow-x:auto}.tbl[data-v-d18b0817]{border-collapse:collapse;width:100%;font-size:.875rem}.tbl thead tr[data-v-d18b0817]{background:var(--surface-2,#f4f4f5)}.tbl th[data-v-d18b0817]{text-align:left;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:10px 12px;font-size:.75rem;font-weight:600}.tbl td[data-v-d18b0817]{border-top:1px solid var(--hairline);color:var(--text-1);vertical-align:top;padding:10px 12px}.td-sm[data-v-d18b0817]{color:var(--text-2);font-size:.8125rem;line-height:1.6}.td-reason[data-v-d18b0817]{max-width:180px;color:var(--text-2);font-size:.8125rem}.badge[data-v-d18b0817]{border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-pending[data-v-d18b0817]{color:#92400e;background:#fef3c7}.badge-approved[data-v-d18b0817]{color:#065f46;background:#d1fae5}.badge-rejected[data-v-d18b0817]{color:#991b1b;background:#fee2e2}.empty[data-v-d18b0817]{color:var(--text-3);padding:32px 0;font-size:.875rem}.modal-overlay[data-v-d18b0817]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-d18b0817]{background:var(--surface-1);border-radius:16px;width:100%;max-width:480px;padding:24px 28px;box-shadow:0 20px 60px #00000040}.modal-header[data-v-d18b0817]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3[data-v-d18b0817]{color:var(--text-1);margin:0;font-size:1.125rem;font-weight:600}.btn-close[data-v-d18b0817]{cursor:pointer;color:var(--text-3);background:0 0;border:none;padding:0;font-size:1.4rem;line-height:1}.modal-hint[data-v-d18b0817]{color:var(--text-3);margin-bottom:16px;font-size:.8125rem;line-height:1.6}.field[data-v-d18b0817]{margin-bottom:14px}.field label[data-v-d18b0817]{color:var(--text-2);margin-bottom:5px;font-size:.8125rem;font-weight:500;display:block}.required[data-v-d18b0817]{color:#dc2626}.field input[data-v-d18b0817],.field textarea[data-v-d18b0817]{border:1px solid var(--hairline);background:var(--surface-1);width:100%;color:var(--text-1);box-sizing:border-box;resize:vertical;border-radius:8px;padding:9px 12px;font-size:.9rem}.field input[data-v-d18b0817]:focus,.field textarea[data-v-d18b0817]:focus{border-color:#5e6ad2;outline:none;box-shadow:0 0 0 3px #5e6ad21f}.modal-actions[data-v-d18b0817]{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.btn-primary[data-v-d18b0817]{color:#fff;cursor:pointer;background:#5e6ad2;border:none;border-radius:8px;padding:9px 22px;font-size:.9375rem;font-weight:600}.btn-primary[data-v-d18b0817]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-d18b0817]:hover:not(:disabled){background:#4a56c4}.btn-secondary[data-v-d18b0817]{background:var(--surface-2,#f4f4f5);color:var(--text-2);border:1px solid var(--hairline);cursor:pointer;border-radius:8px;padding:9px 18px;font-size:.9375rem;font-weight:500}@media (width<=768px){.modal[data-v-d18b0817]{margin:12px;padding:20px}.record-card[data-v-d18b0817]{flex-direction:column;align-items:flex-start}.btn-koreksi[data-v-d18b0817]{text-align:center;width:100%}}.page[data-v-b455c4d2]{max-width:900px;padding:24px 16px}.page-header[data-v-b455c4d2]{margin-bottom:20px}.page-title[data-v-b455c4d2]{color:var(--text-1);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-b455c4d2]{color:var(--text-3);margin:0;font-size:.875rem}.success-banner[data-v-b455c4d2]{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:.875rem;display:flex}.btn-dismiss[data-v-b455c4d2]{cursor:pointer;color:inherit;background:0 0;border:none;margin-left:auto;font-size:1.1rem}.error-msg[data-v-b455c4d2]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.875rem}.loading-row[data-v-b455c4d2]{color:var(--text-3);align-items:center;gap:10px;padding:32px 0;font-size:.875rem;display:flex}.spinner[data-v-b455c4d2]{border:2px solid var(--hairline);border-top-color:#5e6ad2;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin-b455c4d2}@keyframes spin-b455c4d2{to{transform:rotate(360deg)}}.top-bar[data-v-b455c4d2]{margin-bottom:20px}.section[data-v-b455c4d2]{margin-bottom:32px}.section-title[data-v-b455c4d2]{color:var(--text-1);margin:0 0 12px;font-size:1rem;font-weight:600}.table-wrap[data-v-b455c4d2]{border:1px solid var(--hairline);border-radius:10px;overflow-x:auto}.tbl[data-v-b455c4d2]{border-collapse:collapse;width:100%;font-size:.875rem}.tbl thead tr[data-v-b455c4d2]{background:var(--surface-2,#f4f4f5)}.tbl th[data-v-b455c4d2]{text-align:left;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:10px 12px;font-size:.75rem;font-weight:600}.tbl td[data-v-b455c4d2]{border-top:1px solid var(--hairline);color:var(--text-1);vertical-align:middle;padding:10px 12px}.nowrap[data-v-b455c4d2]{white-space:nowrap}.td-sm[data-v-b455c4d2]{color:var(--text-2);font-size:.8125rem}.td-reason[data-v-b455c4d2]{max-width:200px;color:var(--text-2);font-size:.8125rem}.badge-type[data-v-b455c4d2]{border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.type-izin[data-v-b455c4d2]{color:#1e40af;background:#dbeafe}.type-cuti[data-v-b455c4d2]{color:#5b21b6;background:#ede9fe}.type-sakit[data-v-b455c4d2]{color:#9d174d;background:#fce7f3}.badge[data-v-b455c4d2]{border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-pending[data-v-b455c4d2]{color:#92400e;background:#fef3c7}.badge-approved[data-v-b455c4d2]{color:#065f46;background:#d1fae5}.badge-rejected[data-v-b455c4d2]{color:#991b1b;background:#fee2e2}.empty[data-v-b455c4d2]{color:var(--text-3);padding:32px 0;font-size:.875rem}.modal-overlay[data-v-b455c4d2]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-b455c4d2]{background:var(--surface-1);border-radius:16px;width:100%;max-width:460px;padding:24px 28px;box-shadow:0 20px 60px #00000040}.modal-header[data-v-b455c4d2]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3[data-v-b455c4d2]{color:var(--text-1);margin:0;font-size:1.125rem;font-weight:600}.btn-close[data-v-b455c4d2]{cursor:pointer;color:var(--text-3);background:0 0;border:none;padding:0;font-size:1.4rem;line-height:1}.field[data-v-b455c4d2]{margin-bottom:14px}.field label[data-v-b455c4d2]{color:var(--text-2);margin-bottom:5px;font-size:.8125rem;font-weight:500;display:block}.required[data-v-b455c4d2]{color:#dc2626}.field input[data-v-b455c4d2],.field select[data-v-b455c4d2],.field textarea[data-v-b455c4d2]{border:1px solid var(--hairline);background:var(--surface-1);width:100%;color:var(--text-1);box-sizing:border-box;resize:vertical;border-radius:8px;padding:9px 12px;font-size:.9rem}.field input[data-v-b455c4d2]:focus,.field select[data-v-b455c4d2]:focus,.field textarea[data-v-b455c4d2]:focus{border-color:#5e6ad2;outline:none;box-shadow:0 0 0 3px #5e6ad21f}.type-toggle[data-v-b455c4d2]{gap:8px;display:flex}.type-btn[data-v-b455c4d2]{border:1px solid var(--hairline);background:var(--surface-2,#f4f4f5);color:var(--text-2);cursor:pointer;border-radius:8px;padding:7px 18px;font-size:.875rem;font-weight:500;transition:all .15s}.type-btn.active[data-v-b455c4d2]{color:#fff;background:#5e6ad2;border-color:#5e6ad2}.modal-actions[data-v-b455c4d2]{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.btn-primary[data-v-b455c4d2]{color:#fff;cursor:pointer;background:#5e6ad2;border:none;border-radius:8px;padding:9px 22px;font-size:.9375rem;font-weight:600}.btn-primary[data-v-b455c4d2]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-b455c4d2]:hover:not(:disabled){background:#4a56c4}.btn-secondary[data-v-b455c4d2]{background:var(--surface-2,#f4f4f5);color:var(--text-2);border:1px solid var(--hairline);cursor:pointer;border-radius:8px;padding:9px 18px;font-size:.9375rem;font-weight:500}.date-picker-full[data-v-b455c4d2]{width:100%}[data-v-b455c4d2] .date-picker-full .p-datepicker-input{border:1px solid var(--hairline,#e4e4e7);background:var(--surface-1,#fff);width:100%;color:var(--text-1,#111);box-sizing:border-box;border-radius:8px;padding:9px 12px;font-size:.9rem}[data-v-b455c4d2] .date-picker-full .p-datepicker-input:focus{border-color:#5e6ad2;outline:none;box-shadow:0 0 0 3px #5e6ad21f}[data-v-b455c4d2] .date-picker-full .p-datepicker-input-icon-container{right:10px}@media (width<=768px){.modal[data-v-b455c4d2]{margin:12px;padding:20px}.type-toggle[data-v-b455c4d2]{flex-wrap:wrap}}.page[data-v-54b68ff4]{max-width:1100px;padding:24px 16px}.page-header[data-v-54b68ff4]{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.page-title[data-v-54b68ff4]{color:var(--text-1);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-54b68ff4]{color:var(--text-3);margin:0;font-size:.875rem}.pending-badge[data-v-54b68ff4]{color:#92400e;white-space:nowrap;background:#fef3c7;border:1px solid #fde68a;border-radius:99px;margin-top:4px;padding:5px 12px;font-size:.8125rem;font-weight:700}.success-banner[data-v-54b68ff4]{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:.875rem;display:flex}.btn-dismiss[data-v-54b68ff4]{cursor:pointer;color:inherit;background:0 0;border:none;margin-left:auto;font-size:1.1rem}.error-msg[data-v-54b68ff4]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.875rem}.filter-tabs[data-v-54b68ff4]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.tab-btn[data-v-54b68ff4]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--text-2);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 16px;font-size:.875rem;font-weight:500;transition:all .15s;display:flex}.tab-btn.active[data-v-54b68ff4]{color:#fff;background:#5e6ad2;border-color:#5e6ad2}.tab-count[data-v-54b68ff4]{background:#ffffff4d;border-radius:99px;padding:1px 7px;font-size:.75rem;font-weight:700}.tab-btn:not(.active) .tab-count[data-v-54b68ff4]{color:#92400e;background:#fde68a}.btn-refresh[data-v-54b68ff4]{background:var(--surface-2,#f4f4f5);border:1px solid var(--hairline);color:var(--text-2);cursor:pointer;border-radius:8px;margin-left:auto;padding:6px 14px;font-size:.875rem;font-weight:500}.btn-refresh[data-v-54b68ff4]:disabled{opacity:.5;cursor:not-allowed}.loading-row[data-v-54b68ff4]{color:var(--text-3);align-items:center;gap:10px;padding:32px 0;font-size:.875rem;display:flex}.spinner[data-v-54b68ff4]{border:2px solid var(--hairline);border-top-color:#5e6ad2;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin-54b68ff4}@keyframes spin-54b68ff4{to{transform:rotate(360deg)}}.table-wrap[data-v-54b68ff4]{border:1px solid var(--hairline);border-radius:12px;overflow-x:auto}.tbl[data-v-54b68ff4]{border-collapse:collapse;width:100%;font-size:.875rem}.tbl thead tr[data-v-54b68ff4]{background:var(--surface-2,#f4f4f5)}.tbl th[data-v-54b68ff4]{text-align:left;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:10px 12px;font-size:.75rem;font-weight:600}.tbl td[data-v-54b68ff4]{border-top:1px solid var(--hairline);color:var(--text-1);vertical-align:top;padding:10px 12px}.tbl tbody tr[data-v-54b68ff4]:hover{background:var(--surface-2,#f9f9f9)}.name[data-v-54b68ff4]{font-size:.875rem;font-weight:600}.email[data-v-54b68ff4]{color:var(--text-3);font-size:.8125rem}.td-time[data-v-54b68ff4]{color:var(--text-2);white-space:nowrap;font-size:.8125rem;line-height:1.8}.highlight[data-v-54b68ff4]{color:#5e6ad2;font-weight:500}.td-reason[data-v-54b68ff4]{color:var(--text-2);max-width:160px;font-size:.8125rem}.muted[data-v-54b68ff4]{color:var(--text-3);font-size:.8125rem}.badge[data-v-54b68ff4]{border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-pending[data-v-54b68ff4]{color:#92400e;background:#fef3c7}.badge-approved[data-v-54b68ff4]{color:#065f46;background:#d1fae5}.badge-rejected[data-v-54b68ff4]{color:#991b1b;background:#fee2e2}.review-note[data-v-54b68ff4]{color:var(--text-3);max-width:140px;margin-top:4px;font-size:.75rem}.action-btns[data-v-54b68ff4]{gap:6px;display:flex}.btn-approve[data-v-54b68ff4]{color:#065f46;cursor:pointer;background:#d1fae5;border:1px solid #6ee7b7;border-radius:7px;padding:5px 12px;font-size:.8125rem;font-weight:600;transition:background .15s}.btn-approve[data-v-54b68ff4]:hover{background:#a7f3d0}.btn-reject[data-v-54b68ff4]{color:#991b1b;cursor:pointer;background:#fee2e2;border:1px solid #fca5a5;border-radius:7px;padding:5px 12px;font-size:.8125rem;font-weight:600;transition:background .15s}.btn-reject[data-v-54b68ff4]:hover{background:#fecaca}.empty[data-v-54b68ff4]{text-align:center;color:var(--text-3);padding:50px 20px;font-size:.875rem}.modal-overlay[data-v-54b68ff4]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-54b68ff4]{background:var(--surface-1);border-radius:16px;width:100%;max-width:440px;padding:24px 28px;box-shadow:0 20px 60px #00000040}.modal-header[data-v-54b68ff4]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3[data-v-54b68ff4]{color:var(--text-1);margin:0;font-size:1.125rem;font-weight:600}.btn-close[data-v-54b68ff4]{cursor:pointer;color:var(--text-3);background:0 0;border:none;padding:0;font-size:1.4rem;line-height:1}.modal-hint[data-v-54b68ff4]{color:var(--text-3);margin-bottom:14px;font-size:.8125rem;line-height:1.7}.approve-note[data-v-54b68ff4]{color:#065f46;font-weight:500}.field[data-v-54b68ff4]{margin-bottom:12px}.field label[data-v-54b68ff4]{color:var(--text-2);margin-bottom:5px;font-size:.8125rem;font-weight:500;display:block}.field textarea[data-v-54b68ff4]{border:1px solid var(--hairline);background:var(--surface-1);width:100%;color:var(--text-1);box-sizing:border-box;resize:vertical;border-radius:8px;padding:9px 12px;font-size:.9rem}.field textarea[data-v-54b68ff4]:focus{border-color:#5e6ad2;outline:none}.modal-actions[data-v-54b68ff4]{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.btn-approve-lg[data-v-54b68ff4]{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:8px;padding:9px 22px;font-size:.9375rem;font-weight:600}.btn-approve-lg[data-v-54b68ff4]:hover:not(:disabled){background:#15803d}.btn-approve-lg[data-v-54b68ff4]:disabled{opacity:.6;cursor:not-allowed}.btn-reject-lg[data-v-54b68ff4]{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:8px;padding:9px 22px;font-size:.9375rem;font-weight:600}.btn-reject-lg[data-v-54b68ff4]:hover:not(:disabled){background:#b91c1c}.btn-reject-lg[data-v-54b68ff4]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-54b68ff4]{background:var(--surface-2,#f4f4f5);color:var(--text-2);border:1px solid var(--hairline);cursor:pointer;border-radius:8px;padding:9px 18px;font-size:.9375rem;font-weight:500}@media (width<=768px){.page-header[data-v-54b68ff4]{flex-direction:column;gap:8px}.modal[data-v-54b68ff4]{margin:12px;padding:20px}.filter-tabs[data-v-54b68ff4]{flex-wrap:wrap}.action-btns[data-v-54b68ff4]{flex-direction:column}.btn-approve[data-v-54b68ff4],.btn-reject[data-v-54b68ff4]{text-align:center;width:100%}}.page[data-v-999988a3]{max-width:1060px;padding:24px 16px}.page-header[data-v-999988a3]{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.page-title[data-v-999988a3]{color:var(--text-1);margin:0 0 4px;font-size:1.5rem;font-weight:700}.page-sub[data-v-999988a3]{color:var(--text-3);margin:0;font-size:.875rem}.pending-badge[data-v-999988a3]{color:#92400e;white-space:nowrap;background:#fef3c7;border:1px solid #fde68a;border-radius:99px;margin-top:4px;padding:5px 12px;font-size:.8125rem;font-weight:700}.success-banner[data-v-999988a3]{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:.875rem;display:flex}.btn-dismiss[data-v-999988a3]{cursor:pointer;color:inherit;background:0 0;border:none;margin-left:auto;font-size:1.1rem}.error-msg[data-v-999988a3]{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:.875rem}.filter-tabs[data-v-999988a3]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.tab-btn[data-v-999988a3]{border:1px solid var(--hairline);background:var(--surface-1);color:var(--text-2);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 16px;font-size:.875rem;font-weight:500;transition:all .15s;display:flex}.tab-btn.active[data-v-999988a3]{color:#fff;background:#5e6ad2;border-color:#5e6ad2}.tab-count[data-v-999988a3]{background:#ffffff4d;border-radius:99px;padding:1px 7px;font-size:.75rem;font-weight:700}.tab-btn:not(.active) .tab-count[data-v-999988a3]{color:#92400e;background:#fde68a}.btn-refresh[data-v-999988a3]{background:var(--surface-2,#f4f4f5);border:1px solid var(--hairline);color:var(--text-2);cursor:pointer;border-radius:8px;margin-left:auto;padding:6px 14px;font-size:.875rem;font-weight:500}.btn-refresh[data-v-999988a3]:disabled{opacity:.5;cursor:not-allowed}.loading-row[data-v-999988a3]{color:var(--text-3);align-items:center;gap:10px;padding:32px 0;font-size:.875rem;display:flex}.spinner[data-v-999988a3]{border:2px solid var(--hairline);border-top-color:#5e6ad2;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin-999988a3}@keyframes spin-999988a3{to{transform:rotate(360deg)}}.table-wrap[data-v-999988a3]{border:1px solid var(--hairline);border-radius:12px;overflow-x:auto}.tbl[data-v-999988a3]{border-collapse:collapse;width:100%;font-size:.875rem}.tbl thead tr[data-v-999988a3]{background:var(--surface-2,#f4f4f5)}.tbl th[data-v-999988a3]{text-align:left;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding:10px 12px;font-size:.75rem;font-weight:600}.tbl td[data-v-999988a3]{border-top:1px solid var(--hairline);color:var(--text-1);vertical-align:top;padding:10px 12px}.tbl tbody tr[data-v-999988a3]:hover{background:var(--surface-2,#f9f9f9)}.name[data-v-999988a3]{font-size:.875rem;font-weight:600}.email[data-v-999988a3]{color:var(--text-3);font-size:.8125rem}.nowrap[data-v-999988a3]{white-space:nowrap}.td-reason[data-v-999988a3]{color:var(--text-2);max-width:160px;font-size:.8125rem}.muted[data-v-999988a3]{color:var(--text-3);font-size:.8125rem}.badge-type[data-v-999988a3]{border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.type-izin[data-v-999988a3]{color:#1e40af;background:#dbeafe}.type-cuti[data-v-999988a3]{color:#5b21b6;background:#ede9fe}.type-sakit[data-v-999988a3]{color:#9d174d;background:#fce7f3}.badge[data-v-999988a3]{border-radius:99px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.badge-pending[data-v-999988a3]{color:#92400e;background:#fef3c7}.badge-approved[data-v-999988a3]{color:#065f46;background:#d1fae5}.badge-rejected[data-v-999988a3]{color:#991b1b;background:#fee2e2}.review-note[data-v-999988a3]{color:var(--text-3);max-width:140px;margin-top:4px;font-size:.75rem}.action-btns[data-v-999988a3]{gap:6px;display:flex}.btn-approve[data-v-999988a3]{color:#065f46;cursor:pointer;background:#d1fae5;border:1px solid #6ee7b7;border-radius:7px;padding:5px 12px;font-size:.8125rem;font-weight:600;transition:background .15s}.btn-approve[data-v-999988a3]:hover{background:#a7f3d0}.btn-reject[data-v-999988a3]{color:#991b1b;cursor:pointer;background:#fee2e2;border:1px solid #fca5a5;border-radius:7px;padding:5px 12px;font-size:.8125rem;font-weight:600;transition:background .15s}.btn-reject[data-v-999988a3]:hover{background:#fecaca}.empty[data-v-999988a3]{text-align:center;color:var(--text-3);padding:50px 20px;font-size:.875rem}.modal-overlay[data-v-999988a3]{z-index:100;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-999988a3]{background:var(--surface-1);border-radius:16px;width:100%;max-width:440px;padding:24px 28px;box-shadow:0 20px 60px #00000040}.modal-header[data-v-999988a3]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3[data-v-999988a3]{color:var(--text-1);margin:0;font-size:1.125rem;font-weight:600}.btn-close[data-v-999988a3]{cursor:pointer;color:var(--text-3);background:0 0;border:none;padding:0;font-size:1.4rem;line-height:1}.modal-hint[data-v-999988a3]{color:var(--text-3);margin-bottom:14px;font-size:.8125rem;line-height:1.8}.field[data-v-999988a3]{margin-bottom:12px}.field label[data-v-999988a3]{color:var(--text-2);margin-bottom:5px;font-size:.8125rem;font-weight:500;display:block}.field textarea[data-v-999988a3]{border:1px solid var(--hairline);background:var(--surface-1);width:100%;color:var(--text-1);box-sizing:border-box;resize:vertical;border-radius:8px;padding:9px 12px;font-size:.9rem}.field textarea[data-v-999988a3]:focus{border-color:#5e6ad2;outline:none}.modal-actions[data-v-999988a3]{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.btn-approve-lg[data-v-999988a3]{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:8px;padding:9px 22px;font-size:.9375rem;font-weight:600}.btn-approve-lg[data-v-999988a3]:hover:not(:disabled){background:#15803d}.btn-approve-lg[data-v-999988a3]:disabled{opacity:.6;cursor:not-allowed}.btn-reject-lg[data-v-999988a3]{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:8px;padding:9px 22px;font-size:.9375rem;font-weight:600}.btn-reject-lg[data-v-999988a3]:hover:not(:disabled){background:#b91c1c}.btn-reject-lg[data-v-999988a3]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-999988a3]{background:var(--surface-2,#f4f4f5);color:var(--text-2);border:1px solid var(--hairline);cursor:pointer;border-radius:8px;padding:9px 18px;font-size:.9375rem;font-weight:500}@media (width<=768px){.page-header[data-v-999988a3]{flex-direction:column;gap:8px}.modal[data-v-999988a3]{margin:12px;padding:20px}.filter-tabs[data-v-999988a3]{flex-wrap:wrap}.action-btns[data-v-999988a3]{flex-direction:column}.btn-approve[data-v-999988a3],.btn-reject[data-v-999988a3]{text-align:center;width:100%}}.pr-page[data-v-a396142e]{max-width:900px;margin:0 auto;padding:32px 24px}.pr-shell[data-v-a396142e]{flex-direction:column;gap:32px;display:flex}.pr-loading[data-v-a396142e]{color:var(--ink-subtle);text-align:center;padding:40px;font-size:14px}.pr-page-header[data-v-a396142e]{padding-bottom:4px}.pr-page-title[data-v-a396142e]{letter-spacing:-.5px;color:var(--ink);margin:0 0 6px;font-size:24px;font-weight:600}.pr-page-sub[data-v-a396142e]{color:var(--ink-subtle);margin:0;font-size:13px}.pr-error-box[data-v-a396142e]{text-align:center;color:var(--semantic-error,#ef4444);align-items:center}.pr-card[data-v-a396142e]{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);flex-direction:column;gap:14px;padding:28px 24px;display:flex}.pr-success[data-v-a396142e],.pr-expired-card[data-v-a396142e]{text-align:center;align-items:center}.pr-status-icon[data-v-a396142e]{color:#059669;background:#10b9811f;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:24px;font-weight:700;display:flex}.pr-expired-icon[data-v-a396142e]{color:#ef4444;background:#ef44441a}.pr-title[data-v-a396142e]{color:var(--ink);margin:0;font-size:18px;font-weight:600}.pr-desc[data-v-a396142e]{color:var(--ink-subtle);margin:0;font-size:13px}.pr-header[data-v-a396142e]{justify-content:space-between;align-items:center;display:flex}.btn-back[data-v-a396142e]{cursor:pointer;color:var(--ink-subtle);background:0 0;border:none;padding:0;font-size:13px}.btn-back[data-v-a396142e]:hover{color:var(--ink)}.pr-pill[data-v-a396142e]{letter-spacing:.3px;border-radius:99px;padding:3px 10px;font-size:11px;font-weight:600}.pending-pill[data-v-a396142e]{color:#d97706;background:#f59e0b1f}.pr-info-row[data-v-a396142e]{justify-content:space-between;align-items:center;display:flex}.pr-label[data-v-a396142e]{color:var(--ink-subtle);font-size:13px}.pr-value[data-v-a396142e]{color:var(--ink);font-size:14px;font-weight:500}.pr-amount[data-v-a396142e]{letter-spacing:-.5px;font-size:20px;font-weight:700}.pr-divider[data-v-a396142e]{border:none;border-top:1px solid var(--hairline)}.pr-qris-section[data-v-a396142e]{flex-direction:column;align-items:center;gap:10px;display:flex}.pr-qris-hint[data-v-a396142e]{color:var(--ink-subtle);text-align:center;margin:0;font-size:12px}.pr-qr-wrap[data-v-a396142e]{border:1px solid var(--hairline);border-radius:var(--r-md);background:#fff;padding:10px}.pr-qr-img[data-v-a396142e]{width:200px;height:200px;display:block}.pr-va-section[data-v-a396142e]{flex-direction:column;gap:8px;display:flex}.pr-va-hint[data-v-a396142e]{color:var(--ink-subtle);margin:0;font-size:12px}.pr-va-box[data-v-a396142e]{background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--r-md);align-items:center;gap:10px;padding:10px 14px;display:flex}.pr-va-number[data-v-a396142e]{letter-spacing:2px;color:var(--ink);flex:1;font-size:20px;font-weight:700}.pr-copy-btn[data-v-a396142e]{border:1px solid var(--hairline-strong);border-radius:var(--r-sm);cursor:pointer;color:var(--ink-subtle);white-space:nowrap;background:0 0;padding:4px 10px;font-size:12px;font-weight:600}.pr-copy-btn[data-v-a396142e]:hover{border-color:var(--primary);color:var(--primary)}.pr-payurl-section[data-v-a396142e]{justify-content:center;display:flex}.pr-payurl-btn[data-v-a396142e]{text-decoration:none}.pr-check-btn[data-v-a396142e]{justify-content:center;align-items:center;gap:6px;width:100%;margin-top:4px;display:flex}.hist-header[data-v-a396142e]{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.hist-title[data-v-a396142e]{color:var(--ink);margin:0;font-size:17px;font-weight:600}.hist-refresh[data-v-a396142e]{padding:5px 12px;font-size:12px}.hist-empty[data-v-a396142e]{color:var(--ink-tertiary);text-align:center;padding:32px;font-size:13px}.hist-table-wrap[data-v-a396142e]{border:1px solid var(--hairline);border-radius:var(--r-lg);overflow-x:auto}.hist-table[data-v-a396142e]{border-collapse:collapse;width:100%;font-size:13px}.hist-table th[data-v-a396142e]{text-align:left;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--hairline);background:var(--surface-2);padding:10px 14px;font-size:11px;font-weight:600}.hist-table td[data-v-a396142e]{border-bottom:1px solid var(--hairline);color:var(--ink-muted);vertical-align:middle;padding:10px 14px}.hist-table tbody tr:last-child td[data-v-a396142e]{border-bottom:none}.hist-table tbody tr:hover td[data-v-a396142e]{background:var(--surface-2)}.td-id[data-v-a396142e]{color:var(--ink-tertiary);font-size:12px}.td-date[data-v-a396142e]{color:var(--ink-tertiary);white-space:nowrap;font-size:12px}.td-actions[data-v-a396142e]{align-items:center;gap:6px;display:flex}.badge[data-v-a396142e]{letter-spacing:.2px;border-radius:99px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-success[data-v-a396142e]{color:#059669;background:#10b9811f}.badge-error[data-v-a396142e]{color:#ef4444;background:#ef44441a}.badge-pending[data-v-a396142e]{color:#d97706;background:#f59e0b1f}.act-btn[data-v-a396142e]{border-radius:var(--r-sm);border:1px solid var(--hairline);cursor:pointer;background:var(--surface-2);color:var(--ink-subtle);white-space:nowrap;padding:4px 10px;font-size:11px;font-weight:600}.act-btn[data-v-a396142e]:hover{border-color:var(--hairline-strong);color:var(--ink)}.act-btn[data-v-a396142e]:disabled{opacity:.5;cursor:default}.act-view[data-v-a396142e]{color:var(--primary);border-color:rgba(var(--primary-rgb,59,130,246),.3)}.act-view[data-v-a396142e]:hover{background:rgba(var(--primary-rgb,59,130,246),.06)}.modal-overlay[data-v-a396142e]{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box[data-v-a396142e]{background:var(--surface-1);border:1px solid var(--hairline-strong);border-radius:var(--r-lg);flex-direction:column;gap:16px;width:min(400px,92vw);padding:24px;display:flex;box-shadow:0 24px 48px #00000080}.modal-head[data-v-a396142e]{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.modal-title[data-v-a396142e]{color:var(--ink);font-size:16px;font-weight:600}.modal-sub[data-v-a396142e]{color:var(--ink-subtle);margin-top:2px;font-size:13px}.modal-close[data-v-a396142e]{cursor:pointer;color:var(--ink-tertiary);background:0 0;border:none;padding:0;font-size:16px;line-height:1}.modal-close[data-v-a396142e]:hover{color:var(--ink)}.modal-status-row[data-v-a396142e]{align-items:center;gap:10px;display:flex}.modal-method[data-v-a396142e]{color:var(--ink-subtle);font-size:13px}.modal-expired-note[data-v-a396142e]{color:var(--semantic-error,#ef4444);border-radius:var(--r-md);background:#ef444414;padding:10px 12px;font-size:12px}.modal-footer[data-v-a396142e]{justify-content:flex-end;display:flex}@keyframes spin-a396142e{to{transform:rotate(360deg)}}.spin[data-v-a396142e]{animation:.8s linear infinite spin-a396142e}@media (width<=640px){.pr-page[data-v-a396142e]{padding:16px 12px}.hist-table th[data-v-a396142e],.hist-table td[data-v-a396142e]{padding:8px 10px;font-size:12px}.td-date[data-v-a396142e]{display:none}}.sidebar[data-v-6bcc5d18]{background:var(--surface-1);border-right:1px solid var(--hairline);flex-direction:column;flex-shrink:0;width:220px;height:100vh;min-height:100vh;padding:16px 10px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-logo[data-v-6bcc5d18]{align-items:center;gap:10px;padding:4px 8px 12px;display:flex}.logo-mark[data-v-6bcc5d18]{flex-shrink:0}.logo-text[data-v-6bcc5d18]{color:var(--ink);letter-spacing:-.3px;font-size:15px;font-weight:600}.nav-links[data-v-6bcc5d18]{flex-direction:column;gap:2px;margin-top:8px;display:flex}.nav-item[data-v-6bcc5d18]{border-radius:var(--r-md);color:var(--ink-subtle);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:7px 10px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex}.nav-item[data-v-6bcc5d18]:hover,.nav-item.active[data-v-6bcc5d18]{background:var(--surface-2);color:var(--ink)}.nav-item.active .nav-icon[data-v-6bcc5d18]{color:var(--primary)}.nav-icon[data-v-6bcc5d18]{color:currentColor;flex-shrink:0;align-items:center;display:flex}.nav-lock-badge[data-v-6bcc5d18]{opacity:.7;margin-left:auto;font-size:10px}.nav-item-locked[data-v-6bcc5d18]{opacity:.6}.sidebar-bottom[data-v-6bcc5d18]{padding-bottom:4px}.spacer[data-v-6bcc5d18]{flex:1}.bottom-divider[data-v-6bcc5d18]{margin-bottom:12px}.logout-btn[data-v-6bcc5d18]{color:var(--ink-tertiary)}.logout-btn[data-v-6bcc5d18]:hover{color:var(--semantic-error);background:#e5484d14}.bottom-nav[data-v-6bcc5d18]{background:var(--surface-1);border-top:1px solid var(--hairline);z-index:300;height:56px;padding:0 4px;padding-bottom:env(safe-area-inset-bottom,0);justify-content:space-around;align-items:center;display:none;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item[data-v-6bcc5d18]{color:var(--ink-tertiary);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:48px;padding:6px 4px;font-family:inherit;font-size:10px;font-weight:500;transition:color .12s;display:flex}.bottom-nav-item.active[data-v-6bcc5d18]{color:var(--primary)}.bottom-nav-icon[data-v-6bcc5d18]{justify-content:center;align-items:center;display:flex}.bottom-nav-label[data-v-6bcc5d18]{line-height:1}.mobile-overlay[data-v-6bcc5d18]{z-index:400;background:#00000080;position:fixed;inset:0}.mobile-menu[data-v-6bcc5d18]{background:var(--surface-1);border-top:1px solid var(--hairline);padding:12px 0 calc(12px + env(safe-area-inset-bottom,0));z-index:401;border-radius:16px 16px 0 0;flex-direction:column;gap:2px;display:flex;position:fixed;bottom:56px;left:0;right:0}.mobile-menu-item[data-v-6bcc5d18]{color:var(--ink-muted);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:12px 20px;font-family:inherit;font-size:15px;font-weight:500;text-decoration:none;transition:background .12s;display:flex}.mobile-menu-item[data-v-6bcc5d18]:hover,.mobile-menu-item.active[data-v-6bcc5d18]{background:var(--surface-2);color:var(--ink)}.mobile-menu-item.active .nav-icon[data-v-6bcc5d18]{color:var(--primary)}.logout-mobile[data-v-6bcc5d18]{color:var(--ink-tertiary)}.logout-mobile[data-v-6bcc5d18]:hover{color:var(--semantic-error)}.mobile-menu-divider[data-v-6bcc5d18]{background:var(--hairline);height:1px;margin:4px 16px}.fade-enter-active[data-v-6bcc5d18],.fade-leave-active[data-v-6bcc5d18]{transition:opacity .15s}.fade-enter-from[data-v-6bcc5d18],.fade-leave-to[data-v-6bcc5d18]{opacity:0}.slide-up-enter-active[data-v-6bcc5d18],.slide-up-leave-active[data-v-6bcc5d18]{transition:transform .2s}.slide-up-enter-from[data-v-6bcc5d18],.slide-up-leave-to[data-v-6bcc5d18]{transform:translateY(100%)}@media (width<=768px){.sidebar[data-v-6bcc5d18]{display:none}.bottom-nav[data-v-6bcc5d18]{display:flex}}.app-shell[data-v-277d4096]{min-height:100vh;display:flex}.app-main[data-v-277d4096]{flex:1;min-width:0;overflow:auto}@media (width<=768px){.app-shell[data-v-277d4096]{flex-direction:column}.app-main[data-v-277d4096]{padding-bottom:56px}}:root{--canvas:#010102;--surface-1:#0f1117;--surface-2:#161920;--surface-3:#1d2028;--surface-4:#23262e;--hairline:#23252a;--hairline-strong:#2e3140;--hairline-tertiary:#383c4a;--primary:#5e6ad2;--primary-hover:#828fff;--primary-focus:#5e69d180;--brand-secure:#7a7fad;--ink:#f7f8f8;--ink-muted:#d0d6e0;--ink-subtle:#8a8f98;--ink-tertiary:#62666d;--semantic-success:#27a644;--semantic-error:#e5484d;--semantic-warning:#f76b15;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-xxl:24px;--r-pill:9999px;--sp-xxs:4px;--sp-xs:8px;--sp-sm:12px;--sp-md:16px;--sp-lg:24px;--sp-xl:32px;--sp-xxl:48px;--sp-section:96px;--font-display:"SF Pro Display", Inter, -apple-system, system-ui, "Segoe UI", Roboto, sans-serif;--font-text:"SF Pro Display", Inter, -apple-system, system-ui, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--fs-display-xl:80px;--fs-display-lg:56px;--fs-display-md:40px;--fs-headline:28px;--fs-card-title:22px;--fs-subhead:20px;--fs-body-lg:18px;--fs-body:16px;--fs-body-sm:14px;--fs-caption:12px;--fs-eyebrow:13px;--ls-display-xl:-3px;--ls-display-lg:-1.8px;--ls-display-md:-1px;--ls-headline:-.6px;--ls-card-title:-.4px;--ls-subhead:-.2px;--ls-body-lg:-.1px;--ls-body:-.05px;--ls-eyebrow:.4px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-text);background:var(--canvas);color:var(--ink);font-size:var(--fs-body-sm);letter-spacing:var(--ls-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink)}a{color:var(--primary)}a:hover{color:var(--primary-hover)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--canvas)}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--surface-4)}.btn{border-radius:var(--r-md);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:14px;font-weight:500;line-height:1.2;text-decoration:none;transition:background .15s,color .15s,border-color .15s,box-shadow .15s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--primary-focus);outline-offset:2px}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--surface-1);color:var(--ink);border:1px solid var(--hairline)}.btn-secondary:hover{background:var(--surface-2);border-color:var(--hairline-strong)}.btn-tertiary{color:var(--ink-subtle);background:0 0;border:1px solid #0000}.btn-tertiary:hover{background:var(--surface-1);color:var(--ink)}.btn-danger{background:var(--surface-1);color:var(--semantic-error);border:1px solid var(--hairline)}.btn-danger:hover{border-color:var(--semantic-error);background:#e5484d1a}.btn-sm{padding:5px 10px;font-size:13px}.btn-lg{padding:10px 20px;font-size:15px}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.input,.textarea,.select{background:var(--surface-1);color:var(--ink);border:1px solid var(--hairline);border-radius:var(--r-md);appearance:none;outline:none;width:100%;padding:8px 12px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.input::placeholder,.textarea::placeholder{color:var(--ink-tertiary)}.input:focus,.textarea:focus,.select:focus{border-color:var(--hairline-strong);box-shadow:0 0 0 2px var(--primary-focus)}.textarea{resize:vertical;min-height:80px;line-height:1.5}.select{cursor:pointer}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--ink-muted);font-size:13px;font-weight:500}.form-hint{color:var(--ink-subtle);font-size:12px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=540px){.form-row{grid-template-columns:1fr}}.card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);padding:var(--sp-lg);box-shadow:inset 0 1px #ffffff08}.card-featured{background:var(--surface-2);border-color:var(--hairline-strong)}.badge{border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-muted);align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.badge-success{color:var(--semantic-success);background:#27a64426}.badge-error{color:var(--semantic-error);background:#e5484d26}.badge-warning{color:var(--semantic-warning);background:#f76b1526}.badge-primary{color:var(--primary-hover);background:#5e6ad226}.divider{background:var(--hairline);width:100%;height:1px}.overlay{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000000b3;position:fixed;inset:0}.drawer{background:var(--surface-1);border-left:1px solid var(--hairline);z-index:200;flex-direction:column;width:520px;max-width:100vw;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden}.drawer-header{padding:var(--sp-lg);border-bottom:1px solid var(--hairline);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.drawer-body{padding:var(--sp-lg);gap:var(--sp-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.drawer-footer{padding:var(--sp-md) var(--sp-lg);border-top:1px solid var(--hairline);justify-content:flex-end;gap:var(--sp-xs);flex-shrink:0;display:flex}#app{min-height:100vh}.page-container{max-width:1280px;padding:var(--sp-xl);margin:0 auto}.eyebrow{font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--ink-subtle);font-weight:500}.mono{font-family:var(--font-mono);font-size:var(--fs-eyebrow)}.product-screenshot-card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--r-xl);padding:var(--sp-lg);box-shadow:inset 0 1px #ffffff08}.grid-3{gap:var(--sp-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (width<=1024px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){:root{--fs-display-xl:36px;--fs-display-lg:32px;--fs-display-md:28px}.page-container{padding:var(--sp-lg)}.grid-3{grid-template-columns:1fr}.drawer{border-left:none;border-top:1px solid var(--hairline);border-radius:16px 16px 0 0;width:100vw;max-width:100vw}.btn{min-height:44px;padding:10px 14px}.card{padding:var(--sp-md)}}.fade-enter-active,.fade-leave-active{transition:opacity .15s}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:transform .2s}.slide-enter-from,.slide-leave-to{transform:translate(100%)}@font-face{font-family:primeicons;font-display:block;src:url(/assets/primeicons-DMOk5skT.eot);src:url(/assets/primeicons-DMOk5skT.eot?#iefix)format("embedded-opentype"),url(/assets/primeicons-C6QP2o4f.woff2)format("woff2"),url(/assets/primeicons-WjwUDZjB.woff)format("woff"),url(/assets/primeicons-MpK4pl85.ttf)format("truetype"),url(/assets/primeicons-Dr5RGzOO.svg?#primeicons)format("svg");font-weight:400;font-style:normal}.pi{speak:none;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:primeicons;font-style:normal;font-weight:400;line-height:1;display:inline-block}.pi:before{--webkit-backface-visibility:hidden;backface-visibility:hidden}.pi-fw{text-align:center;width:1.28571em}.pi-spin{animation:2s linear infinite fa-spin}@media (prefers-reduced-motion:reduce){.pi-spin{transition-duration:0s;transition-delay:0s;animation-duration:1ms;animation-iteration-count:1;animation-delay:-1ms}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(359deg)}}.pi-folder-plus:before{content:""}.pi-receipt:before{content:""}.pi-asterisk:before{content:""}.pi-face-smile:before{content:""}.pi-pinterest:before{content:""}.pi-expand:before{content:""}.pi-pen-to-square:before{content:""}.pi-wave-pulse:before{content:""}.pi-turkish-lira:before{content:""}.pi-spinner-dotted:before{content:""}.pi-crown:before{content:""}.pi-pause-circle:before{content:""}.pi-warehouse:before{content:""}.pi-objects-column:before{content:""}.pi-clipboard:before{content:""}.pi-play-circle:before{content:""}.pi-venus:before{content:""}.pi-cart-minus:before{content:""}.pi-file-plus:before{content:""}.pi-microchip:before{content:""}.pi-twitch:before{content:""}.pi-building-columns:before{content:""}.pi-file-check:before{content:""}.pi-microchip-ai:before{content:""}.pi-trophy:before{content:""}.pi-barcode:before{content:""}.pi-file-arrow-up:before{content:""}.pi-mars:before{content:""}.pi-tiktok:before{content:""}.pi-arrow-up-right-and-arrow-down-left-from-center:before{content:""}.pi-ethereum:before{content:""}.pi-list-check:before{content:""}.pi-thumbtack:before{content:""}.pi-arrow-down-left-and-arrow-up-right-to-center:before{content:""}.pi-equals:before{content:""}.pi-lightbulb:before{content:""}.pi-star-half:before{content:""}.pi-address-book:before{content:""}.pi-chart-scatter:before{content:""}.pi-indian-rupee:before{content:""}.pi-star-half-fill:before{content:""}.pi-cart-arrow-down:before{content:""}.pi-calendar-clock:before{content:""}.pi-sort-up-fill:before{content:""}.pi-sparkles:before{content:""}.pi-bullseye:before{content:""}.pi-sort-down-fill:before{content:""}.pi-graduation-cap:before{content:""}.pi-hammer:before{content:""}.pi-bell-slash:before{content:""}.pi-gauge:before{content:""}.pi-shop:before{content:""}.pi-headphones:before{content:""}.pi-eraser:before{content:""}.pi-stopwatch:before{content:""}.pi-verified:before{content:""}.pi-delete-left:before{content:""}.pi-hourglass:before{content:""}.pi-truck:before{content:""}.pi-wrench:before{content:""}.pi-microphone:before{content:""}.pi-megaphone:before{content:""}.pi-arrow-right-arrow-left:before{content:""}.pi-bitcoin:before{content:""}.pi-file-edit:before{content:""}.pi-language:before{content:""}.pi-file-export:before{content:""}.pi-file-import:before{content:""}.pi-file-word:before{content:""}.pi-gift:before{content:""}.pi-cart-plus:before{content:""}.pi-thumbs-down-fill:before{content:""}.pi-thumbs-up-fill:before{content:""}.pi-arrows-alt:before{content:""}.pi-calculator:before{content:""}.pi-sort-alt-slash:before{content:""}.pi-arrows-h:before{content:""}.pi-arrows-v:before{content:""}.pi-pound:before{content:""}.pi-prime:before{content:""}.pi-chart-pie:before{content:""}.pi-reddit:before{content:""}.pi-code:before{content:""}.pi-sync:before{content:""}.pi-shopping-bag:before{content:""}.pi-server:before{content:""}.pi-database:before{content:""}.pi-hashtag:before{content:""}.pi-bookmark-fill:before{content:""}.pi-filter-fill:before{content:""}.pi-heart-fill:before{content:""}.pi-flag-fill:before{content:""}.pi-circle:before{content:""}.pi-circle-fill:before{content:""}.pi-bolt:before{content:""}.pi-history:before{content:""}.pi-box:before{content:""}.pi-at:before{content:""}.pi-arrow-up-right:before{content:""}.pi-arrow-up-left:before{content:""}.pi-arrow-down-left:before{content:""}.pi-arrow-down-right:before{content:""}.pi-telegram:before{content:""}.pi-stop-circle:before{content:""}.pi-stop:before{content:""}.pi-whatsapp:before{content:""}.pi-building:before{content:""}.pi-qrcode:before{content:""}.pi-car:before{content:""}.pi-instagram:before{content:""}.pi-linkedin:before{content:""}.pi-send:before{content:""}.pi-slack:before{content:""}.pi-sun:before{content:""}.pi-moon:before{content:""}.pi-vimeo:before{content:""}.pi-youtube:before{content:""}.pi-flag:before{content:""}.pi-wallet:before{content:""}.pi-map:before{content:""}.pi-link:before{content:""}.pi-credit-card:before{content:""}.pi-discord:before{content:""}.pi-percentage:before{content:""}.pi-euro:before{content:""}.pi-book:before{content:""}.pi-shield:before{content:""}.pi-paypal:before{content:""}.pi-amazon:before{content:""}.pi-phone:before{content:""}.pi-filter-slash:before{content:""}.pi-facebook:before{content:""}.pi-github:before{content:""}.pi-twitter:before{content:""}.pi-step-backward-alt:before{content:""}.pi-step-forward-alt:before{content:""}.pi-forward:before{content:""}.pi-backward:before{content:""}.pi-fast-backward:before{content:""}.pi-fast-forward:before{content:""}.pi-pause:before{content:""}.pi-play:before{content:""}.pi-compass:before{content:""}.pi-id-card:before{content:""}.pi-ticket:before{content:""}.pi-file-o:before{content:""}.pi-reply:before{content:""}.pi-directions-alt:before{content:""}.pi-directions:before{content:""}.pi-thumbs-up:before{content:""}.pi-thumbs-down:before{content:""}.pi-sort-numeric-down-alt:before{content:""}.pi-sort-numeric-up-alt:before{content:""}.pi-sort-alpha-down-alt:before{content:""}.pi-sort-alpha-up-alt:before{content:""}.pi-sort-numeric-down:before{content:""}.pi-sort-numeric-up:before{content:""}.pi-sort-alpha-down:before{content:""}.pi-sort-alpha-up:before{content:""}.pi-sort-alt:before{content:""}.pi-sort-amount-up:before{content:""}.pi-sort-amount-down:before{content:""}.pi-sort-amount-down-alt:before{content:""}.pi-sort-amount-up-alt:before{content:""}.pi-palette:before{content:""}.pi-undo:before{content:""}.pi-desktop:before{content:""}.pi-sliders-v:before{content:""}.pi-sliders-h:before{content:""}.pi-search-plus:before{content:""}.pi-search-minus:before{content:""}.pi-file-excel:before{content:""}.pi-file-pdf:before{content:""}.pi-check-square:before{content:""}.pi-chart-line:before{content:""}.pi-user-edit:before{content:""}.pi-exclamation-circle:before{content:""}.pi-android:before{content:""}.pi-google:before{content:""}.pi-apple:before{content:""}.pi-microsoft:before{content:""}.pi-heart:before{content:""}.pi-mobile:before{content:""}.pi-tablet:before{content:""}.pi-key:before{content:""}.pi-shopping-cart:before{content:""}.pi-comments:before{content:""}.pi-comment:before{content:""}.pi-briefcase:before{content:""}.pi-bell:before{content:""}.pi-paperclip:before{content:""}.pi-share-alt:before{content:""}.pi-envelope:before{content:""}.pi-volume-down:before{content:""}.pi-volume-up:before{content:""}.pi-volume-off:before{content:""}.pi-eject:before{content:""}.pi-money-bill:before{content:""}.pi-images:before{content:""}.pi-image:before{content:""}.pi-sign-in:before{content:""}.pi-sign-out:before{content:""}.pi-wifi:before{content:""}.pi-sitemap:before{content:""}.pi-chart-bar:before{content:""}.pi-camera:before{content:""}.pi-dollar:before{content:""}.pi-lock-open:before{content:""}.pi-table:before{content:""}.pi-map-marker:before{content:""}.pi-list:before{content:""}.pi-eye-slash:before{content:""}.pi-eye:before{content:""}.pi-folder-open:before{content:""}.pi-folder:before{content:""}.pi-video:before{content:""}.pi-inbox:before{content:""}.pi-lock:before{content:""}.pi-unlock:before{content:""}.pi-tags:before{content:""}.pi-tag:before{content:""}.pi-power-off:before{content:""}.pi-save:before{content:""}.pi-question-circle:before{content:""}.pi-question:before{content:""}.pi-copy:before{content:""}.pi-file:before{content:""}.pi-clone:before{content:""}.pi-calendar-times:before{content:""}.pi-calendar-minus:before{content:""}.pi-calendar-plus:before{content:""}.pi-ellipsis-v:before{content:""}.pi-ellipsis-h:before{content:""}.pi-bookmark:before{content:""}.pi-globe:before{content:""}.pi-replay:before{content:""}.pi-filter:before{content:""}.pi-print:before{content:""}.pi-align-right:before{content:""}.pi-align-left:before{content:""}.pi-align-center:before{content:""}.pi-align-justify:before{content:""}.pi-cog:before{content:""}.pi-cloud-download:before{content:""}.pi-cloud-upload:before{content:""}.pi-cloud:before{content:""}.pi-pencil:before{content:""}.pi-users:before{content:""}.pi-clock:before{content:""}.pi-user-minus:before{content:""}.pi-user-plus:before{content:""}.pi-trash:before{content:""}.pi-external-link:before{content:""}.pi-window-maximize:before{content:""}.pi-window-minimize:before{content:""}.pi-refresh:before{content:""}.pi-user:before{content:""}.pi-exclamation-triangle:before{content:""}.pi-calendar:before{content:""}.pi-chevron-circle-left:before{content:""}.pi-chevron-circle-down:before{content:""}.pi-chevron-circle-right:before{content:""}.pi-chevron-circle-up:before{content:""}.pi-angle-double-down:before{content:""}.pi-angle-double-left:before{content:""}.pi-angle-double-right:before{content:""}.pi-angle-double-up:before{content:""}.pi-angle-down:before{content:""}.pi-angle-left:before{content:""}.pi-angle-right:before{content:""}.pi-angle-up:before{content:""}.pi-upload:before{content:""}.pi-download:before{content:""}.pi-ban:before{content:""}.pi-star-fill:before{content:""}.pi-star:before{content:""}.pi-chevron-left:before{content:""}.pi-chevron-right:before{content:""}.pi-chevron-down:before{content:""}.pi-chevron-up:before{content:""}.pi-caret-left:before{content:""}.pi-caret-right:before{content:""}.pi-caret-down:before{content:""}.pi-caret-up:before{content:""}.pi-search:before{content:""}.pi-check:before{content:""}.pi-check-circle:before{content:""}.pi-times:before{content:""}.pi-times-circle:before{content:""}.pi-plus:before{content:""}.pi-plus-circle:before{content:""}.pi-minus:before{content:""}.pi-minus-circle:before{content:""}.pi-circle-on:before{content:""}.pi-circle-off:before{content:""}.pi-sort-down:before{content:""}.pi-sort-up:before{content:""}.pi-sort:before{content:""}.pi-step-backward:before{content:""}.pi-step-forward:before{content:""}.pi-th-large:before{content:""}.pi-arrow-down:before{content:""}.pi-arrow-left:before{content:""}.pi-arrow-right:before{content:""}.pi-arrow-up:before{content:""}.pi-bars:before{content:""}.pi-arrow-circle-down:before{content:""}.pi-arrow-circle-left:before{content:""}.pi-arrow-circle-right:before{content:""}.pi-arrow-circle-up:before{content:""}.pi-info:before{content:""}.pi-info-circle:before{content:""}.pi-home:before{content:""}.pi-spinner:before{content:""}
