.tech-tabs,.tech-id,.notify-icon{display:none}.tech-home,.tech-job-list,.tech-more{display:flex;flex-direction:column;gap:.85rem}.tech-push{display:grid;gap:.55rem}.tech-push-actions{display:flex;flex-wrap:wrap;gap:.45rem}.tech-push-actions button{flex:1 1 9.5rem;min-width:min(100%,9.5rem);min-height:2.75rem;white-space:normal}.tech-block{display:flex;flex-direction:column;gap:.65rem}.tech-home h2,.tech-more h1,.tech-more h2,.tech-block h2{margin:0;color:#6f1d2c;font-size:1rem}.tech-attendance,.tech-stats,.tech-more-lang,.tech-card{background:#fff;border:1px solid #e6e1da;border-radius:16px}.tech-attendance,.tech-more-lang,.tech-card{display:flex;flex-direction:column;gap:.5rem;padding:.85rem;box-shadow:0 1px 2px #2c241f0f}.tech-attendance{background:#f4f2ef;box-shadow:none}.tech-card-next{border-color:#e4d3a2}.tech-card-top,.tech-meta,.tech-attendance-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tech-ref,.tech-name{color:#6f1d2c;font-weight:700}.tech-card h3{margin:0;font-size:1.05rem;line-height:1.35;overflow-wrap:anywhere}.tech-fact{display:flex;align-items:flex-start;gap:.35rem;margin:0;color:#4e453e;overflow-wrap:anywhere}.tech-fact svg{width:1.05rem;height:1.05rem;flex:0 0 auto;margin-top:.15rem;fill:none;stroke:#6f1d2c;stroke-width:1.8}.tech-badge{border-radius:999px;padding:.22rem .6rem;font-size:.84rem;font-weight:700;line-height:1.3;text-align:center;max-width:12rem}.tech-badge[data-tone=wait]{background:#f8ead0;color:#5c3f04}.tech-badge[data-tone=active]{background:#f4e4e7;color:#6f1d2c}.tech-badge[data-tone=done]{background:#e5f2e8;color:#1d5c34}.tech-priority{border:1px solid #e6e1da;border-radius:999px;padding:.12rem .55rem;font-size:.84rem;font-weight:650}.tech-priority[data-level=high]{color:#6f1d2c;border-color:#e4c9cf}.tech-action,.tech-quiet,.tech-filters button,.tech-more-links a{font:inherit;min-height:2.75rem;border-radius:12px}.tech-action{display:flex;align-items:center;justify-content:center;background:#e2b043;color:#4c121c;font-weight:750;text-decoration:none;padding:.55rem .8rem;text-align:center}.tech-action-quiet{background:#fff;color:#6f1d2c;border:1px solid #e6e1da}.tech-secondary{display:flex;flex-wrap:wrap;align-items:stretch;gap:.55rem}.tech-secondary .tech-quiet{flex:1 1 9.5rem;min-width:min(100%,9.5rem);max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.3;text-align:center}.tech-filters,.tech-more-links{display:flex;flex-wrap:wrap;gap:.45rem}.tech-quiet,.tech-filters button,.tech-more-links a{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e6e1da;background:#fff;color:#6f1d2c;text-decoration:none;padding:.4rem .75rem;font-weight:650;cursor:pointer}.tech-filters button[aria-pressed=true]{background:#6f1d2c;border-color:#6f1d2c;color:#fff}.tech-stats{display:flex;flex-wrap:wrap;gap:.45rem .85rem;padding:.75rem .85rem;background:#f4f2ef;box-shadow:none}.tech-stats p{margin:0;display:flex;align-items:baseline;gap:.3rem}.tech-stats strong{color:#6f1d2c;font-size:.95rem}.tech-stats span,.tech-muted,.tech-status-line{color:#4e453e}.tech-muted,.tech-status-line{margin:0;font-size:.92rem}.tech-more .lang-switch{display:flex;flex-wrap:wrap;gap:.4rem}.tech-more .lang-btn{min-height:2.75rem}@media(max-width:960px){.tech-shell{background:#fff;color:#2c241f}.tech-shell .main,.tech-shell .content,.tech-shell .topbar{background:#fff}.tech-shell .nav-menu-btn,.tech-shell .sidebar,.tech-shell.nav-open .sidebar,.tech-shell .nav-backdrop,.tech-shell.nav-open .nav-backdrop,.tech-shell .topbar-copy,.tech-shell .topbar-actions .lang-switch,.tech-shell .topbar-logout{display:none!important;visibility:hidden;pointer-events:none}.tech-shell .tech-id{display:block;min-width:0}.tech-shell .tech-role{margin:.05rem 0 0;color:#4e453e;font-size:.8rem}.tech-shell .topbar{position:sticky;top:0;z-index:5;border-bottom:1px solid #e6e1da;padding-top:calc(.45rem + env(safe-area-inset-top))}.tech-shell .content{padding-bottom:calc(5.6rem + env(safe-area-inset-bottom))}.tech-shell .notify-toggle{width:2.75rem;height:2.75rem;min-height:2.75rem;padding:0;border-radius:999px;position:relative;color:#6f1d2c}.tech-shell .notify-icon{display:block;width:1.25rem;height:1.25rem;fill:currentColor}.tech-shell .notify-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.tech-shell .tech-tabs{position:fixed;inset-inline:0;bottom:0;z-index:6;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:min(100%,430px);margin-inline:auto;background:#fff;border-top:1px solid #e6e1da;padding-bottom:env(safe-area-inset-bottom)}.tech-shell .tech-tabs a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:3.7rem;min-width:0;padding:.35rem .1rem;color:#4e453e;text-decoration:none;font-size:.78rem;font-weight:700;line-height:1.2;text-align:center}.tech-shell .tech-tabs a span{display:block;max-width:100%;overflow-wrap:anywhere}.tech-shell .tech-tabs svg{width:1.25rem;height:1.25rem;fill:currentColor}.tech-shell .tech-tabs a[aria-current=page],.tech-shell .tech-tabs a.tech-tab-current{color:#6f1d2c;box-shadow:inset 0 2px #e2b043}.tech-shell .lang-btn.active{background:#6f1d2c;border-color:#6f1d2c;color:#fff}.tech-shell .btn-primary{background:#e2b043;color:#4c121c;border-color:transparent;min-height:2.75rem}.tech-shell input,.tech-shell textarea,.tech-shell select,.tech-shell #job-actions{scroll-margin-bottom:calc(6rem + env(safe-area-inset-bottom))}.tech-shell .page-header h1{color:#6f1d2c;font-size:1.15rem}.tech-shell .life-actions .btn-secondary,.tech-shell .form-actions .btn-secondary,.tech-shell .form-actions .btn-primary{min-height:2.75rem;white-space:normal}}.customers-page{display:grid;gap:.75rem;font-size:14px}.customers-page h1{margin:0;font-size:1.25rem}.customers-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem}.customers-toolbar label{display:grid;gap:.15rem;font-size:13px}.customers-toolbar input,.customers-toolbar select{font:inherit;font-size:14px;min-height:36px;min-width:14rem}.customers-table-wrap{overflow-x:auto;background:#fff;border:1px solid #d7deea;border-radius:10px}.customers-table{width:100%;border-collapse:collapse;font-size:14px}.customers-table th,.customers-table td{height:64px;padding:0 .65rem;border-bottom:1px solid #e6edf5;text-align:start;vertical-align:middle;white-space:nowrap}.customers-table th{font-size:13px;font-weight:650}.customers-badges{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.customers-badge,.customers-unassigned{display:inline-flex;align-items:center;min-height:26px;padding:.1rem .55rem;border-radius:999px;font-size:13px;line-height:1.2}.customers-badge{border:1px solid #c5d4ea;background:#f4f8fd;color:#1e3a5f}.customers-unassigned{border:1px solid #ead7a8;background:#fff8eb;color:#7a4e00}.customers-new{margin-inline-start:auto;min-height:36px}.customers-action{min-height:32px;padding:.3rem .7rem;width:auto}.customers-cards{display:none}.customer-dialog{width:min(28rem,calc(100vw - 2rem));border:0;border-radius:12px;padding:1rem 1.1rem;font-size:14px;color:#1f2937}.customer-dialog::backdrop{background:#0f172a59}.customer-dialog h2{margin:0 0 .35rem;font-size:1.05rem}.customer-choice,.customer-confirm{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.5rem;margin-top:.55rem;font-size:14px;font-weight:500;text-align:start}.customer-choice input,.customer-confirm input{width:1.05rem;height:1.05rem;margin:0;padding:0;flex:0 0 auto}.customer-field{display:grid;gap:.15rem;margin-top:.55rem;font-size:13px;font-weight:500}.customer-label{display:flex;flex-direction:row;align-items:baseline;justify-content:space-between;gap:.5rem}.customer-mark{font-size:12px;font-weight:600;color:#5b6b82}.customer-mark.required{color:#9b1c1c}.customer-field input{font:inherit;font-size:14px;font-weight:400;min-height:36px}.customer-hint{margin:.7rem 0 0;font-size:13px;color:#445069}.customer-warning{margin:.75rem 0 0;padding:.55rem .7rem;border-radius:8px;background:#fff8eb;color:#7a4e00;font-size:13px}.customer-warning p,.customer-warning ul{margin:0}.customer-warning ul{padding-inline-start:1.1rem}.customer-dialog-actions{display:flex;gap:.5rem;margin-top:.9rem}.customer-error{color:#9b1c1c;margin:.6rem 0 0}.customer-notice{color:#17663a;margin:0}@media(max-width:800px){.customers-new{width:100%;margin-inline-start:0}.customers-table-wrap{display:none}.customers-cards{display:grid;gap:.75rem}.customers-card{display:grid;gap:.45rem;justify-items:start;border:1px solid #d7deea;border-radius:12px;padding:.85rem 1rem;background:#fff;font-size:14px}.customers-card h2,.customers-card p{margin:0}.customers-card h2{font-size:14px}}@media(min-width:961px){.schedule-shell.app-shell{height:100dvh;min-height:0;overflow:hidden}.schedule-shell .sidebar{height:100dvh;min-height:0;padding:.35rem .45rem .3rem;gap:.35rem;overflow:hidden}.schedule-shell .brand{padding:.1rem .25rem;align-items:center}.schedule-shell .brand span{display:none}.schedule-shell .brand-logo{width:auto;max-width:100%;max-height:46px}.schedule-shell .sidebar nav{gap:0;overflow:auto}.schedule-shell .sidebar nav a,.schedule-shell .sidebar-collapse{gap:.4rem;min-height:0;padding:.22rem .45rem;font-size:13px}.schedule-shell .sidebar nav svg,.schedule-shell .sidebar-collapse svg{width:18px;height:18px}.schedule-shell .main{height:100dvh;min-height:0;overflow:hidden}.schedule-shell .topbar{min-height:40px;padding:.15rem .7rem}.schedule-shell .brand-logo-header{width:2.15rem}.schedule-shell .topbar-start,.schedule-shell .topbar-actions{gap:.45rem}.schedule-shell .topbar-copy{display:flex;align-items:baseline;gap:.45rem;min-width:0}.schedule-shell .topbar-title{font-size:14px}.schedule-shell .topbar-meta{margin:0;font-size:13px}.schedule-shell .branch-filter,.schedule-shell .lang-btn,.schedule-shell .topbar-logout{font-size:13px}.schedule-shell .lang-btn,.schedule-shell .topbar-logout,.schedule-shell .branch-filter select{min-height:0;padding:.15rem .4rem}.schedule-shell .content{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:.3rem .5rem .35rem}.schedule-shell .content>.pwa-install{margin:0 0 .25rem;padding:.3rem .45rem}}.schedule-page{display:flex;flex-direction:column;gap:.25rem;min-height:0;flex:1;font-size:13px;line-height:1.3;color:#1f2937}.schedule-page h1{margin:0;color:#6f1d2c;font-size:14px;line-height:1.2}.schedule-toolbar,.schedule-legend{display:flex;flex-wrap:wrap;gap:.3rem .4rem;align-items:center;margin:0}.schedule-toolbar label{display:flex;align-items:center;gap:.25rem;font-size:13px}.schedule-toolbar button,.schedule-toolbar input,.schedule-toolbar select,.schedule-help summary,.schedule-fold summary{min-height:1.7rem;font-size:13px;padding:.1rem .45rem}.schedule-nav{display:flex;gap:.25rem}.schedule-range,.schedule-notice{margin:0;color:#4c121c;font-size:13px}.schedule-help{position:relative}.schedule-help summary,.schedule-fold summary{cursor:pointer;color:#6f1d2c;font-weight:700}.schedule-help div{position:absolute;z-index:8;inset-inline-start:0;top:calc(100% + .2rem);width:min(36rem,72vw);padding:.55rem .7rem;border:1px solid #e6e1da;border-radius:8px;background:#fff;box-shadow:0 8px 20px #193b701f}.schedule-help p,.schedule-fold p{margin:0 0 .4rem;font-size:13px}.schedule-dialog{width:min(28rem,calc(100vw - 2rem));border:1px solid #e6e1da;border-radius:8px;padding:.75rem;font-size:14px;color:#1f2937}.schedule-dialog::backdrop{background:#140a0c59}.schedule-dialog h2{margin:0 0 .5rem;color:#6f1d2c;font-size:14px}.schedule-dialog label{display:grid;gap:.15rem;margin-bottom:.4rem;font-size:14px}.schedule-dialog input,.schedule-dialog select,.schedule-dialog button{font-size:14px;min-height:1.8rem}.schedule-dialog-actions{display:flex;gap:.4rem;margin-top:.45rem}.schedule-legend{list-style:none;padding:0}.schedule-legend li{border-radius:999px;padding:.05rem .45rem;background:#f4f2ef;border:1px solid #e6e1da;font-size:13px;line-height:1.4}.schedule-legend li[data-category=scheduled]{background:#f8e7b8;color:#5c3f04}.schedule-legend li[data-category=active]{background:#6f1d2c;color:#fff}.schedule-legend li[data-category=completed]{background:#e5f4ec;color:#146c43}.schedule-legend li[data-category=postponed]{background:#f6e4d4;color:#8a4b08}.schedule-legend li[data-category=cancelled]{background:#eceae6;color:#5c564e}.schedule-legend li[data-category=overlap]{outline:2px solid #9f1239}.schedule-legend li[data-kind=leave]{background:#f6e4d4}.schedule-legend li[data-kind=rest]{background:#e7eef8}.schedule-legend li[data-kind=other]{background:#eceae6}.schedule-board{flex:1;min-height:0;overflow:auto;border:1px solid #e6e1da;background:#fff}.schedule-grid{display:grid;grid-template-columns:10.75rem repeat(7,minmax(7.25rem,1fr));min-width:62rem}.schedule-corner,.schedule-dayhead,.schedule-tech,.schedule-cell{border-bottom:1px solid #e6e1da;border-inline-end:1px solid #e6e1da;padding:.15rem .25rem}.schedule-dayhead,.schedule-corner{position:sticky;top:0;z-index:3;background:#f4f2ef;font-weight:700;color:#6f1d2c;font-size:13px}.schedule-corner,.schedule-tech{position:sticky;inset-inline-start:0;z-index:2}.schedule-corner{z-index:4}.schedule-tech{display:grid;align-content:start;gap:.05rem;background:#fff;font-size:13px}.schedule-tech strong{font-size:14px;color:#4c121c}.schedule-dayhead{width:100%;text-align:inherit;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.schedule-agenda h2 button{font-size:14px;font-weight:700}.schedule-dayhead[aria-pressed=true]{background:#f8e7b8}.schedule-gap,.schedule-chip{color:#4c121c;margin:.1rem 0 0;font-size:13px;line-height:1.25}.schedule-chip[data-kind=leave]{color:#7c4a12}.schedule-chip[data-kind=rest]{color:#1d4f91}.assign-conflicts{display:grid;gap:.25rem;margin-top:.4rem;padding:.45rem .55rem;border:1px solid #e4ddd4;border-radius:8px;background:#fffdf8}.assign-conflicts p{margin:0;font-size:.78rem}.schedule-job{position:relative;display:grid;gap:0;margin-bottom:.15rem;padding:.12rem .28rem;border-radius:4px;color:inherit;background:#f8e7b8;font-size:13px;line-height:1.25;outline:none}.schedule-job:focus-visible{outline:2px solid #193b70;outline-offset:1px}.schedule-job-line{display:flex;align-items:center;gap:.2rem}.schedule-job-title,.schedule-job-time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-flag{width:.45rem;height:.45rem;border-radius:999px;display:inline-block}.schedule-flag[data-flag=overlap]{background:#9f1239}.schedule-flag[data-flag=unavailable]{background:#7c4a12}.schedule-flag[data-flag=continued],.schedule-flag[data-flag=continues]{background:#1d4f91}.schedule-job-detail{display:none;margin-top:.15rem;padding:.2rem .3rem;border-radius:4px;background:#fff;color:#1f2937;font-size:13px;white-space:normal}.schedule-job:focus .schedule-job-detail,.schedule-job:focus-within .schedule-job-detail{display:grid;gap:.12rem}.schedule-job-detail a{color:#6f1d2c;font-weight:700}.schedule-job[data-category=active]{background:#6f1d2c;color:#fff}.schedule-job[data-category=completed]{background:#e5f4ec}.schedule-job[data-category=postponed]{background:#f6e4d4}.schedule-job[data-category=cancelled]{background:#eceae6}.schedule-job[data-overlap=true]{outline:2px solid #9f1239}.schedule-job[data-unavailable=true]{box-shadow:inset 0 0 0 3px #7c4a12}.day-view{flex:0 0 auto;max-height:40vh;margin:0;min-height:0;display:flex;flex-direction:column}.day-view-head{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.day-view-head h2{margin:0;color:#6f1d2c;font-size:14px}.day-scroll{overflow:auto;flex:1;min-height:8rem;margin-top:.25rem;border:1px solid #e6e1da;background:#fff}.day-scale,.day-row{display:grid;grid-template-columns:14rem minmax(64rem,1fr);min-width:78rem}.day-scale{position:sticky;top:0;z-index:3;background:#f4f2ef}.day-name{position:sticky;inset-inline-start:0;z-index:2;display:grid;align-content:center;gap:.25rem;padding:.35rem .45rem;background:#fff;border-inline-end:1px solid #e6e1da;font-size:13px}.day-scale .day-name{z-index:4;background:#f4f2ef;color:#6f1d2c;font-weight:700}.day-hours{display:grid;grid-template-columns:repeat(24,minmax(2.6rem,1fr))}.day-hours span{padding:.25rem .1rem;border-inline-start:1px solid #e6e1da;font-size:13px;color:#4c121c}.day-track{position:relative;background-image:repeating-linear-gradient(90deg,transparent,transparent calc(100% / 24 - 1px),#eeeae4 calc(100% / 24 - 1px),#eeeae4 calc(100% / 24))}.day-unavailable,.day-block,.day-marker{position:absolute;z-index:1}.day-unavailable{top:0;bottom:0;inset-inline-start:calc(var(--start) / 1440 * 100%);width:calc((var(--end) - var(--start)) / 1440 * 100%);padding:.15rem .3rem;font-size:13px;color:#4c121c}.day-unavailable[data-kind=leave]{background:repeating-linear-gradient(135deg,#f6e4d4,#f6e4d4 8px,#f3d3b4 8px 16px)}.day-unavailable[data-kind=rest]{background:repeating-linear-gradient(135deg,#e7eef8,#e7eef8 8px,#d5e2f5 8px 16px)}.day-unavailable[data-kind=other]{background:repeating-linear-gradient(135deg,#eceae6,#eceae6 8px,#ddd9d3 8px 16px)}.day-block{z-index:2;top:calc(var(--lane) * 4.6rem + .25rem);height:4.3rem;inset-inline-start:calc(var(--start) / 1440 * 100%);width:calc((var(--end) - var(--start)) / 1440 * 100%);display:grid;align-content:center;overflow:hidden;padding:.15rem .4rem;border-radius:6px;text-decoration:none;color:inherit;background:#f8e7b8;font-size:13px;line-height:1.25}.day-block[data-category=active]{background:#6f1d2c;color:#fff}.day-block[data-category=completed]{background:#e5f4ec}.day-block[data-category=postponed]{background:#f6e4d4}.day-block[data-category=cancelled]{background:#eceae6}.day-block[data-overlap=true]{outline:2px solid #9f1239}.day-block[data-unavailable=true]{box-shadow:inset 0 0 0 3px #7c4a12}.day-marker{z-index:2;top:.3rem;inset-inline-start:calc(var(--start) / 1440 * 100%);width:max-content;max-width:9rem;padding:.25rem .4rem;border-radius:6px;background:#fff;border:1px dashed #9f1239;color:#4c121c;text-decoration:none;font-size:13px}.day-agenda,.schedule-agenda{display:none}.schedule-fold{flex:0 0 auto;margin:0}.schedule-fold ul{margin:.25rem 0 0;padding:0;list-style:none;display:grid;gap:.2rem}@media(max-width:800px){.schedule-timeline{display:none}.schedule-agenda,.day-agenda{display:grid;gap:.8rem}.day-scroll{display:none}.schedule-page,.schedule-board,.schedule-shell .main,.schedule-shell .content{height:auto;overflow:visible}.day-view{max-height:none}.day-agenda h3{margin-bottom:.35rem;font-size:14px}.schedule-agenda h2{color:#6f1d2c;font-size:14px}}.mail-page{display:flex;flex-direction:column;gap:.85rem;min-width:0;color:var(--blue-900, #10233f);font-size:.95rem}.mail-heading,.mail-actions,.mail-folder-row,.mail-chips{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.mail-heading{justify-content:space-between;align-items:flex-start}.mail-page h1,.mail-page h2,.mail-page p{margin:0}.mail-banner{font-weight:700}.mail-layout{display:grid;grid-template-columns:12rem minmax(14rem,18rem) minmax(0,1fr);gap:.75rem;min-width:0}.mail-folders,.mail-list,.mail-thread,.mail-settings{min-width:0;border:1px solid var(--line, #d7dde5);border-radius:.7rem;background:#fff;padding:.75rem}.mail-folders{display:flex;flex-direction:column;gap:.35rem}.mail-folder{display:flex;align-items:center;justify-content:space-between;gap:.4rem;width:100%;text-align:start;border:1px solid transparent;border-radius:.5rem;background:transparent;padding:.5rem .6rem;color:inherit;font:inherit;cursor:pointer}.mail-folder[aria-current=page]{background:#e7f0fb;border-color:#9ebbe0}.mail-count{display:inline-grid;place-items:center;width:max-content;min-width:1.3rem;height:1.3rem;padding:0 .35rem;border-radius:999px;background:#1d4f91;color:#fff;font-size:.75rem;line-height:1}.mail-row-top,.mail-row-meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:0}.mail-row-meta{justify-content:flex-start;color:#4d6078;font-size:.88rem}.mail-row{display:grid;gap:.15rem;width:100%;text-align:start;border:0;border-bottom:1px solid #e6ebf1;background:transparent;padding:.55rem .2rem;color:inherit;font:inherit;cursor:pointer}.mail-row[aria-current=true]{background:#f3f8fd}.mail-unread strong{font-weight:800}.mail-row strong,.mail-thread h2{overflow-wrap:anywhere}.mail-list{max-height:70vh;overflow:auto}.mail-compose,.mail-settings,.mail-thread{display:flex;flex-direction:column;gap:.65rem}.mail-compose textarea,.mail-thread textarea{width:100%;min-height:9rem;resize:vertical;font:inherit}.mail-compose input,.mail-compose select,.mail-settings input,.mail-settings select{width:100%;max-width:32rem;font:inherit}.mail-compose label,.mail-settings label,.mail-thread label{display:flex;flex-direction:column;gap:.3rem;font-weight:600}.mail-settings label.mail-check,.mail-check{display:flex;flex-direction:row;align-items:center;gap:.5rem;min-height:1.7rem;font-weight:500}.mail-check input{width:1.05rem;height:1.05rem;margin:0;flex:0 0 auto}.mail-results{display:flex;flex-direction:column;gap:.25rem;max-height:10rem;overflow:auto}.mail-results button{border:0;border-radius:.45rem;background:#f4f7fb;color:inherit;font:inherit;text-align:start;padding:.4rem .55rem;cursor:pointer}.mail-chip{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;background:#e7f0fb;padding-block:.15rem;padding-inline:.35rem .65rem}.mail-chip button{border:0;background:transparent;color:#1d4f91;font:inherit;font-size:.8rem;padding:.1rem .25rem;cursor:pointer}.mail-message{border-bottom:1px solid #e6ebf1;padding-bottom:.5rem}.mail-message p{overflow-wrap:anywhere;font-weight:400}.mail-error{padding:.6rem .75rem;border-radius:8px;background:#fdecec;color:#8d1d1d}.mail-success{padding:.6rem .75rem;border-radius:8px;background:#f3f8fd}.mail-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:1rem;background:#10233f73}.mail-dialog{display:grid;gap:.75rem;width:min(26rem,100%);padding:1rem;border-radius:.8rem;background:#fff}@media(max-width:800px){.mail-layout{grid-template-columns:1fr}.mail-folders{flex-direction:row;flex-wrap:wrap}.mail-folder{width:auto}.mail-list{max-height:16rem}}.docs-page{display:flex;flex-direction:column;gap:.85rem;min-width:0;color:var(--blue-900, #10233f);font-size:.95rem}.docs-heading,.docs-selected,.docs-actions,.docs-crumbs,.docs-folder-row{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.docs-heading,.docs-selected{justify-content:space-between;align-items:flex-start}.docs-page h1,.docs-page h2,.docs-page p{margin:0}.docs-page h2{font-size:1.05rem}.docs-error{margin:0;padding:.6rem .75rem;border-radius:8px;background:#fdecec;color:#8d1d1d}.docs-placeholder{padding:1.2rem .2rem;font-size:1rem}.docs-grid{display:grid;grid-template-columns:minmax(15rem,20rem) minmax(0,1fr);gap:.85rem;min-width:0}.docs-panel{min-width:0;border:1px solid var(--line, #d7dde5);border-radius:.7rem;background:#fff;padding:.85rem}.docs-folder-list{display:flex;flex-direction:column;gap:.35rem;margin-top:.6rem}.docs-folder-row{align-items:stretch}.docs-folder{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:.15rem;min-width:0;text-align:start;border:1px solid transparent;border-radius:.5rem;background:transparent;padding:.55rem .65rem;cursor:pointer;color:inherit;font:inherit}.docs-folder[aria-current=true]{background:#e7f0fb;border-color:#9ebbe0}.docs-search-label,.docs-dialog label,.docs-rename{display:flex;flex-direction:column;gap:.25rem;font-weight:600}.docs-search,.docs-dialog input,.docs-rename input{width:100%;max-width:28rem;font:inherit;font-weight:400}.docs-check{display:flex;flex-direction:row;align-items:center;gap:.5rem;min-height:1.7rem;font-weight:500}.docs-check input{width:1.05rem;height:1.05rem;margin:0;flex:0 0 auto}.docs-table{width:100%;border-collapse:collapse;font-size:.9rem}.docs-table th,.docs-table td{padding:.45rem .35rem;text-align:start;vertical-align:top;overflow-wrap:anywhere}.docs-file-label input{display:none}.docs-progress{height:.45rem;background:#e6ebf1;border-radius:999px;overflow:hidden}.docs-progress span{display:block;height:100%;background:#1d4f91}.docs-preview{display:flex;flex-direction:column;gap:.45rem;margin-top:.8rem}.docs-preview img,.docs-preview iframe{width:100%;min-height:18rem;max-height:70vh;border:1px solid #d7dde5;background:#f4f7fb}.docs-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:1rem;background:#10233f73}.docs-dialog{display:grid;gap:.7rem;width:min(28rem,100%);max-height:90vh;overflow:auto;padding:1rem;border-radius:.8rem;background:#fff}.docs-dialog fieldset{display:grid;gap:.35rem;margin:0;border:1px solid #d7dde5;border-radius:.5rem;padding:.6rem}@media(max-width:800px){.docs-grid,.docs-heading,.docs-selected{grid-template-columns:1fr;display:flex;flex-direction:column}.docs-table{display:block}.docs-table thead{display:none}.docs-table tr{display:grid;gap:.2rem;padding:.55rem 0;border-bottom:1px solid #e6ebf1}}.job-chat-panel{display:flex;flex-direction:column;gap:.75rem}.job-chat-list{list-style:none;margin:0;padding:.5rem;max-height:min(50vh,22rem);overflow-y:auto;border:1px solid var(--gray-100);border-radius:10px;background:var(--gray-50);display:flex;flex-direction:column;gap:.75rem}.job-chat-item{padding:.65rem .75rem;border-radius:8px;background:var(--white);border:1px solid var(--gray-100)}.job-chat-meta{display:flex;flex-wrap:wrap;gap:.35rem .75rem;align-items:baseline;margin-bottom:.35rem;font-size:.85rem;color:var(--gray-600)}.job-chat-meta strong{color:var(--blue-900)}.job-chat-body{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45;color:var(--gray-900)}.job-chat-compose textarea{width:100%;resize:vertical;min-height:4.5rem}@media(max-width:640px){.job-chat-list{max-height:40vh}}.job-media-stage{margin-top:1rem}.job-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.75rem}.job-media-grid figure{margin:0;display:flex;flex-direction:column;gap:.35rem}.job-media-grid figcaption span{display:block}.job-media-grid img,.job-media-video{width:100%;aspect-ratio:1;object-fit:cover;background:#e8eef2}.job-media-grid .is-hidden{opacity:.55}.job-media-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.job-media-actions input,.job-media-caption input{display:block;max-width:100%}.job-media-actions input{position:absolute;width:1px;height:1px;opacity:0}.job-media-progress{display:grid;grid-template-columns:minmax(0,1fr) 6rem;gap:.35rem .75rem;align-items:center}.job-media-progress.is-failed{color:#8d1d1d}.job-media-viewer{position:fixed;inset:0;background:#000000e0;display:flex;flex-direction:column;gap:.75rem;padding:1rem;z-index:30}.job-media-viewer img,.job-media-viewer video{max-width:100%;max-height:calc(100vh - 5rem);margin-inline:auto}@media(max-width:800px){.job-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.job-media-progress{grid-template-columns:1fr}}.payroll-page{display:grid;gap:.75rem;font-size:14px}.payroll-page h1{margin:0;font-size:1.25rem}.payroll-filters,.payroll-totals{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:end}.payroll-filters label{display:grid;gap:.15rem;font-size:13px}.payroll-filters input,.payroll-filters select{font:inherit;font-size:14px;min-height:32px;min-width:7rem}.payroll-totals span{display:grid;gap:.1rem;min-width:9rem;padding:.35rem .6rem;border:1px solid #d7deea;border-radius:8px;background:#fff;font-size:13px}.payroll-totals strong{font-size:14px}.payroll-table-wrap{overflow-x:auto;background:#fff;border:1px solid #d7deea;border-radius:10px}.payroll-table{width:100%;border-collapse:collapse;font-size:14px}.payroll-table th,.payroll-table td{height:64px;padding:0 .65rem;border-bottom:1px solid #e6edf5;text-align:start;vertical-align:middle;white-space:nowrap}.payroll-table th{font-size:13px;font-weight:650}.payroll-status,.payroll-action{font-size:13px;line-height:1.2;width:auto}.payroll-status{display:inline-flex;align-items:center;min-height:32px;padding:.2rem .7rem;border:1px solid #d7deea;border-radius:999px;background:#fff;color:#1f2937;cursor:pointer}.payroll-status.paid{color:#17663a;border-color:#b7e4c7;background:#f3fbf6}.payroll-action{min-height:32px;padding:.3rem .7rem}.payroll-cards{display:none}.payroll-dialog{width:min(28rem,calc(100vw - 2rem));border:0;border-radius:12px;padding:1rem 1.1rem;font-size:14px;color:#1f2937}.payroll-dialog::backdrop{background:#0f172a59}.payroll-dialog h2{margin:0 0 .25rem;font-size:1.05rem}.payroll-dialog label{display:grid;gap:.2rem;margin-top:.55rem;font-size:13px}.payroll-dialog input,.payroll-dialog select{font:inherit;font-size:14px;min-height:36px}.payroll-confirm{display:flex!important;flex-direction:row;align-items:center;justify-content:flex-start;gap:.45rem;text-align:start}.payroll-confirm input{width:1.05rem;height:1.05rem;margin:0;padding:0;flex:0 0 auto}.payroll-dialog-actions{display:flex;gap:.5rem;margin-top:.9rem}.payroll-dialog pre{white-space:pre-wrap;font:inherit;font-size:13px}.payroll-error{color:#9b1c1c;margin:0}.payroll-notice{color:#17663a;margin:0}.payroll-entered-only{margin:0;font-size:13px;color:#7a4e00}.payroll-dialog-meta{margin:0 0 .35rem;font-size:14px}@media(max-width:800px){.payroll-table-wrap{display:none}.payroll-cards{display:grid;gap:.75rem}.payroll-card{display:grid;gap:.45rem;justify-items:start;border:1px solid #d7deea;border-radius:12px;padding:.85rem 1rem;background:#fff;font-size:14px}.payroll-card h2,.payroll-card p{margin:0}.payroll-card h2{font-size:14px}}.branch-page{display:grid;gap:12px}.branch-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px}.branch-table td,.branch-table th{white-space:nowrap}.branch-actions{display:flex;gap:6px}.branch-dialog{position:fixed;inset:0;background:#0f172a73;display:grid;place-items:end center;z-index:30;padding:12px}.branch-dialog form{width:min(440px,100%);background:var(--surface, #fff);color:inherit;border-radius:12px 12px 0 0;padding:16px;display:grid;gap:10px}.branch-dialog label{display:grid;gap:4px;font-size:.9rem}@media(min-width:800px){.branch-dialog{place-items:center}.branch-dialog form{border-radius:12px}}:root{--primary: #193b70;--secondary: #2864a5;--bg: #f3f5f8;--surface: #ffffff;--text: #1f2937;--muted: #64748b;--border: #e2e8f0;--blue-900: var(--primary);--blue-700: var(--secondary);--blue-600: var(--secondary);--white: var(--surface);--gray-50: var(--bg);--gray-100: var(--border);--gray-300: #cbd5e1;--gray-600: var(--muted);--gray-800: var(--text);--danger: #b42318;--shadow: 0 8px 24px rgba(25, 59, 112, .08);--sidebar-width: 248px;--sidebar-collapsed: 76px;--header-height: 68px;--radius: 10px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Segoe UI,Tahoma,Arial,sans-serif;background:var(--bg);color:var(--text);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}h1{margin:0 0 .5rem;color:var(--blue-900);font-size:1.6rem}h2{margin:0 0 .75rem;color:var(--blue-900);font-size:1.15rem}.page-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.page-header h1{margin:0}.muted{margin:0 0 1.25rem;color:var(--gray-600)}a{color:inherit;text-decoration:none}.app-shell{display:grid;grid-template-columns:var(--sidebar-width) 1fr;min-height:100vh}.app-shell-collapsed{grid-template-columns:var(--sidebar-collapsed) 1fr}.sidebar{background:var(--primary);color:var(--white);padding:1.15rem .75rem 1rem;display:flex;flex-direction:column;gap:1.25rem;min-height:100vh;position:sticky;top:0}.brand{display:flex;flex-direction:column;gap:.2rem;padding:.35rem .65rem}.brand-logo{display:block;width:100%;max-width:100%;height:auto;object-fit:contain;object-position:center;background:#fff;border-radius:10px}.brand-logo-header{width:5.75rem;flex:0 0 auto}.brand-loading{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1rem}.brand-loading .brand-logo{width:min(100%,14rem)}.brand strong{font-size:1.05rem;line-height:1.3}.brand span{color:#d6e2f2;font-size:.8rem}.sidebar nav{display:flex;flex-direction:column;gap:.3rem;flex:1}.sidebar nav a{display:flex;align-items:center;gap:.7rem;padding:.65rem .75rem;border-radius:8px;color:#dbe7f5;min-height:42px}.sidebar nav a.active,.sidebar nav a:hover{background:var(--secondary);color:var(--white)}.sidebar-collapse{display:flex;align-items:center;gap:.55rem;width:100%;border:0;background:transparent;color:#dbe7f5;padding:.55rem .75rem;border-radius:8px;font:inherit;cursor:pointer}.sidebar-collapse:hover{background:#ffffff14}.app-shell-collapsed .brand span,.app-shell-collapsed .sidebar nav a span,.app-shell-collapsed .sidebar-collapse span{display:none}.app-shell-collapsed .sidebar nav a,.app-shell-collapsed .sidebar-collapse{justify-content:center;padding-inline:.5rem}.app-shell-collapsed .sidebar-collapse svg{transform:rotate(180deg)}[dir=rtl] .sidebar-collapse svg{transform:scaleX(-1)}[dir=rtl] .app-shell-collapsed .sidebar-collapse svg{transform:scaleX(-1) rotate(180deg)}.nav-backdrop,.nav-menu-btn{display:none}.main{display:flex;flex-direction:column;min-width:0;background:var(--bg)}.topbar{background:var(--surface);border-bottom:1px solid var(--border);min-height:var(--header-height);padding:.7rem 1.25rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;position:sticky;top:0;z-index:20}.pwa-install{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1rem;margin:0 0 1rem;padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.pwa-install-copy{flex:1 1 14rem;min-width:0}.pwa-install-copy strong{display:block;color:var(--primary);font-size:.95rem}.pwa-install-copy p{margin:.35rem 0 0;color:var(--muted);font-size:.85rem;line-height:1.45}.pwa-install-steps{color:var(--text)!important}.pwa-install-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.login-pwa{width:100%;margin:0}.login-pwa .pwa-install{margin-bottom:0;background:#fffffff5;border-color:#e2e8f0e6;box-shadow:0 10px 28px #0f274929}.login-pwa .pwa-install-actions .btn-primary,.login-pwa .pwa-install-actions .btn-secondary{min-height:2.5rem;min-width:5.5rem;padding-inline:.95rem}.login-pwa .btn-primary:focus-visible,.login-pwa .btn-secondary:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}.topbar-start{display:flex;align-items:center;gap:.75rem;min-width:0}.topbar-title{margin:0;font-size:1.05rem;color:var(--primary);font-weight:700}.topbar-meta{margin:.15rem 0 0;color:var(--muted);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(70vw,42rem)}.topbar-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.branch-filter{display:flex;flex-direction:row;align-items:center;gap:.45rem;font-size:.8rem;font-weight:600;color:var(--muted)}.branch-filter select{min-width:9.5rem;padding:.4rem .55rem}.lang-switch{display:flex;border:1px solid var(--gray-300);border-radius:8px;overflow:hidden;background:var(--white)}.lang-btn{border:0;background:transparent;color:var(--blue-900);padding:.4rem .7rem;font:inherit;cursor:pointer}.lang-btn.active{background:var(--blue-700);color:var(--white)}.login-lang{position:absolute;top:max(1rem,env(safe-area-inset-top));inset-inline-end:max(1rem,env(safe-area-inset-right));z-index:2}.login-lang .lang-switch{box-shadow:0 4px 14px #0f274938}.login-lang .lang-btn{min-height:2.5rem;min-width:2.75rem}.login-lang .lang-btn:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}.content{padding:1.25rem 1.35rem 1.75rem}.login-screen{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(165deg,#0f2749 0%,var(--blue-900) 45%,var(--blue-700) 100%);padding:1.5rem;position:relative;overflow-x:hidden}.login-screen:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 75% 45% at 15% 0%,rgba(255,255,255,.1),transparent 55%),radial-gradient(ellipse 55% 40% at 95% 100%,rgba(8,24,48,.35),transparent 50%)}.login-stage{position:relative;z-index:1;width:min(26.5rem,100%);display:flex;flex-direction:column;align-items:stretch;gap:.85rem}.login-card{width:100%;background:var(--white);border-radius:16px;padding:1.85rem 1.7rem 1.9rem;box-shadow:0 18px 42px #0f274947;border:1px solid rgba(255,255,255,.45);display:flex;flex-direction:column;gap:1rem;text-align:start}.login-brand{margin-bottom:.15rem;padding:0;color:var(--blue-900);gap:.3rem}.login-brand .brand-logo{width:min(100%,16.5rem);margin:0 auto .15rem}.login-brand span{color:var(--gray-600)}.login-hint{font-weight:500;font-size:.9rem;color:var(--muted)}.login-card label{font-size:.9rem}.login-card input{min-height:2.75rem;padding:.75rem .9rem;border-radius:10px;transition:border-color .15s ease,box-shadow .15s ease}.login-card input:focus{outline:none;border-color:var(--secondary);box-shadow:0 0 0 3px #2864a538}.login-card input:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}.login-card .btn-primary{min-height:2.85rem;margin-top:.15rem;border-radius:10px;font-size:1rem;transition:background-color .15s ease,box-shadow .15s ease}.login-card .btn-primary:hover:not(:disabled){background:var(--secondary)}.login-card .btn-primary:focus-visible{outline:2px solid var(--secondary);outline-offset:2px}.login-card .page-state-error{margin-bottom:0}@media(max-width:480px){.login-screen{justify-content:flex-start;padding:4.5rem 1rem 1.25rem}.login-card{padding:1.4rem 1.2rem 1.5rem}.login-brand .brand-logo{width:min(100%,12.5rem)}.brand-logo-header{width:4.25rem}.login-pwa .pwa-install{padding:.75rem .85rem}}.page-brand{margin-bottom:.85rem}.page-brand strong{color:var(--blue-900);font-size:1.15rem}.page-brand span{color:var(--gray-600)}label{display:flex;flex-direction:column;gap:.4rem;color:var(--gray-800);font-weight:600}input,select,textarea{border:1px solid var(--gray-300);border-radius:8px;padding:.7rem .8rem;font:inherit;background:var(--white)}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue-600);border-color:var(--blue-600)}.form-panel{background:var(--white);border:1px solid var(--gray-100);border-radius:12px;box-shadow:var(--shadow);padding:1.25rem;margin-bottom:1.25rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-span{grid-column:1 / -1}.form-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}.history-section{margin:1.5rem 0}.link-button{display:inline-block;margin-inline-end:.5rem;padding:0;border:0;background:none;color:var(--blue-700);font:inherit;cursor:pointer;text-decoration:underline}.file-inline{display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem;font-weight:600;font-size:.85rem}.nested-card{background:var(--white);border:1px solid var(--gray-100);border-radius:12px;padding:1rem 1.1rem;margin:1rem 0}.nested-complaint{border-top:1px solid var(--gray-100);margin-top:.85rem;padding-top:.85rem}.warranty-decision{margin:.85rem 0}.page-state-success{color:var(--blue-900);border-color:#cfe0f4;background:#f3f8fd;margin-bottom:.75rem}.btn-primary,.btn-secondary{border:0;border-radius:8px;padding:.65rem .95rem;font:inherit;font-weight:600;cursor:pointer}.btn-primary{background:var(--primary);color:var(--white)}.btn-primary:disabled{opacity:.7;cursor:wait}.btn-secondary{background:var(--gray-100);color:var(--blue-900)}.page-state{background:var(--white);border:1px solid var(--gray-100);border-radius:10px;padding:1rem 1.1rem;color:var(--gray-600)}.page-state-error{color:var(--danger);border-color:#f2c2be;background:#fff6f5;margin-bottom:.75rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.stat-card{background:var(--white);border:1px solid var(--gray-100);border-radius:12px;padding:1.1rem;box-shadow:var(--shadow)}.stat-card span{color:var(--gray-600)}.stat-card strong{display:block;margin-top:.4rem;font-size:1.8rem;color:var(--blue-900)}.dashboard{display:flex;flex-direction:column;gap:1rem}.dashboard .page-header{margin-bottom:0}.dashboard-intro,.dashboard-note{margin:0}.dashboard-note{font-size:.82rem}.dash-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.dash-stats .stat-card{min-height:6.1rem;padding:.85rem .95rem .9rem;display:flex;flex-direction:column;justify-content:space-between;gap:.35rem}.dash-stats .stat-card span{font-size:.78rem;font-weight:600;line-height:1.35}.dash-stats .stat-card strong{margin-top:.15rem;font-size:1.55rem;line-height:1.1}.stat-hint{display:block;margin-top:.15rem;font-size:.68rem;font-weight:500;line-height:1.35;color:var(--gray-600)}.dash-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.85rem;margin:0}.dash-grid-single{grid-template-columns:1fr}.dash-panel{background:var(--white);border:1px solid var(--gray-100);border-radius:12px;box-shadow:var(--shadow);padding:.9rem 1rem;margin:0}.dash-panel h2{margin:0 0 .65rem;font-size:.98rem}.dash-bars{display:flex;flex-direction:column;gap:.42rem}.dash-bar-row{display:grid;grid-template-columns:minmax(5.8rem,7.4rem) minmax(0,1fr) 1.8rem;gap:.5rem;align-items:center}.dash-bar-row span{color:var(--gray-600);font-size:.78rem;line-height:1.2}.dash-bar-row strong{font-size:.85rem;color:var(--blue-900);text-align:end}.dash-bar-track{height:.42rem;background:var(--gray-100);border-radius:99px;overflow:hidden}.dash-bar-fill{height:100%;background:var(--secondary);border-radius:99px}.dash-bar-fill-branch{background:var(--primary)}.dash-table{margin-top:.65rem}.dash-table th,.dash-table td{padding:.45rem .6rem;font-size:.85rem}.dash-datetime{font-variant-numeric:tabular-nums;white-space:nowrap}.dash-panel .muted{margin:0;font-size:.85rem}.table-wrap{overflow:auto;background:var(--white);border:1px solid var(--gray-100);border-radius:12px;box-shadow:var(--shadow)}.filter-bar{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem;margin-bottom:1rem}.filter-bar label{flex:1 1 140px;font-size:.8rem;font-weight:600;color:var(--muted)}.filter-bar input,.filter-bar select{padding:.45rem .55rem}.filter-bar .btn-secondary{align-self:end}.status-chip{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;padding:.28rem .7rem;background:var(--surface);color:var(--primary);font-size:.84rem;font-weight:700;line-height:1.35;white-space:nowrap}.status-chip[data-tone=wait]{background:#eef3f9;border-color:#b7c9e2;color:var(--primary)}.status-chip[data-tone=active]{background:#e4eef8;border-color:#8eadd4;color:#14325f}.status-chip[data-tone=done]{background:var(--bg);color:var(--text);border-color:var(--border)}.status-chip[data-tone=alert]{background:#fff6f5;border-color:#e7c4c0;color:var(--danger)}.equipment-page .compact-table,.travel-records-page .compact-table{width:100%}.equipment-page .compact-head,.equipment-page .compact-row,.travel-records-page .compact-head,.travel-records-page .compact-row{min-width:0}.equipment-page .compact-cell,.travel-records-page .compact-cell{white-space:normal;align-items:flex-start}.equipment-toolbar{display:grid;gap:.75rem;margin-bottom:1rem}.equipment-audit-summary{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.equipment-page .compact-cell .form-actions{flex-wrap:wrap}.equipment-search{display:flex;gap:.75rem}.equipment-search input{flex:1;min-width:0}.equipment-empty{padding:1.5rem}.equipment-empty p{margin:.4rem 0 0;color:var(--muted)}.equipment-modal-backdrop{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1rem;background:#193b7073}.equipment-modal{width:min(720px,100%);max-height:min(92vh,900px);overflow:auto;background:var(--surface);border-radius:12px;box-shadow:var(--shadow);padding:1.25rem}.equipment-group{margin:0 0 1rem;padding:0;border:0}.equipment-group legend{margin-bottom:.65rem;color:var(--primary);font-weight:700}.equipment-note{margin:.35rem 0 0;color:var(--muted);font-size:.85rem}.equipment-selected{background:#f3f7ff}.equipment-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.equipment-photos img{width:100%;height:110px;object-fit:cover;border-radius:8px}.equipment-thumb{display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer}.equipment-photo-preview{margin-top:1rem}.equipment-photo-preview img{width:min(100%,720px);height:auto;max-height:70vh;object-fit:contain;border-radius:12px;background:#f3f7ff}.equipment-hold{margin:.5rem 0;color:#8a3b12;font-weight:700}.equipment-upload-form{display:grid;gap:.75rem;margin-top:.75rem}.equipment-upload input{display:none}.equipment-history{padding-inline-start:1.1rem}.equipment-hidden{margin-top:1rem;padding:.9rem;border:1px dashed var(--border);border-radius:12px;background:#f8fafc}@media(max-width:720px){.equipment-audit-summary{flex-direction:column}.equipment-audit-summary>button{width:100%}.equipment-search,.equipment-modal .form-actions{flex-direction:column}.equipment-search .btn-primary,.equipment-modal .form-actions button{width:100%}}.travel-journey-open{background:#f3f7ff;box-shadow:inset 3px 0 0 var(--secondary)}.travel-open-mark{display:inline-block;margin-top:.2rem;color:var(--blue-900);font-size:.78rem}.travel-gps p,.travel-gps summary{margin:.15rem 0 0}.travel-exception-approved{color:var(--blue-700);font-weight:800}.travel-result-verified{color:var(--blue-900);font-weight:800}.travel-result-unverified{color:var(--gray-600);font-weight:700}.compact-table{overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.compact-head,.compact-row{display:grid;align-items:stretch;min-width:1180px}.compact-head{position:sticky;top:0;background:#f8fafc;color:var(--primary);font-size:.78rem;font-weight:700}.compact-cell{display:flex;align-items:center;min-height:2.75rem;padding:.35rem .6rem;border-bottom:1px solid var(--border);text-align:start;min-width:0}.compact-cell-start{align-items:flex-start}.compact-table .table-select{width:100%;min-width:0;max-width:100%;padding:.35rem .45rem}.compact-table .table-select-technician{min-width:15rem}.clamp-text{min-width:0;width:100%}.clamp-text p{margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.35;white-space:normal}.clamp-text.is-open p{display:block;-webkit-line-clamp:unset;overflow:visible}.clamp-text .link-button{margin-top:.15rem;font-size:.78rem}.compact-actions{display:inline-flex;flex-wrap:nowrap;gap:.35rem;align-items:center}.dispatch-jobs{display:flex;flex-wrap:wrap;gap:.35rem .75rem}.dispatch-jobs a{color:var(--secondary);font-weight:700}.attendance-panel{background:var(--white);border:1px solid var(--gray-100);border-radius:12px;box-shadow:var(--shadow);padding:1.25rem;margin-bottom:1.25rem;display:grid;gap:.85rem;max-width:28rem}.attendance-panel p{margin:0}.attendance-label{display:block;color:var(--muted);font-size:.78rem;font-weight:700}.attendance-panel select,.attendance-panel button{min-height:2.75rem;width:100%}.attendance-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:720px){.attendance-actions{grid-template-columns:1fr}}@media(max-width:720px){.attendance-panel{max-width:none}}.hour-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.75rem;margin:.75rem 0 1rem}.hour-card{background:var(--white);border:1px solid var(--gray-100);border-radius:12px;padding:.75rem .85rem}.hour-card span{display:block;color:var(--muted);font-size:.78rem;font-weight:700}.hour-card strong{display:block;margin-top:.25rem;color:var(--blue-900);font-size:1.05rem}.report-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.report-filters label{display:grid;gap:.25rem;min-width:10rem;flex:1 1 10rem}.attendance-reminder{background:var(--white);border:1px solid var(--secondary);border-radius:12px;padding:.9rem 1rem;margin-bottom:1rem;color:var(--blue-900);font-weight:700}.dispatch-employment{display:block;color:var(--muted);font-weight:600;font-size:.78rem}.compact-actions .btn-primary,.compact-actions .btn-secondary,.compact-actions .maps-link{flex:0 0 auto;white-space:nowrap}.compact-cell-pin{position:sticky;inset-inline-end:0;z-index:2;min-width:max-content;justify-content:flex-end;background:var(--surface);border-inline-start:1px solid var(--border)}.compact-head .compact-cell-pin{z-index:3;background:#f8fafc}@media(max-width:720px){.compact-table{overflow:visible;background:transparent;border:0;box-shadow:none}.compact-head{display:none}.compact-head,.compact-row{display:flex;flex-direction:column;min-width:0}.compact-row{margin-bottom:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.compact-table .table-select,.compact-table .table-select-technician{width:100%;min-width:0;max-width:16rem}.compact-cell-pin{position:static;inset-inline-end:auto;z-index:auto;min-width:0;justify-content:flex-end;background:transparent;border-inline-start:0}.compact-actions{flex-wrap:wrap;justify-content:flex-end}.compact-cell{display:flex;justify-content:space-between;gap:.75rem;align-items:center}.compact-cell:before{content:attr(data-label);color:var(--primary);font-size:.75rem;font-weight:700}}table{width:100%;border-collapse:collapse}th,td{padding:.65rem .8rem;text-align:start;border-bottom:1px solid var(--border);white-space:nowrap}th{background:#f8fafc;color:var(--primary);font-size:.8rem;font-weight:700}.table-select{min-width:160px;padding:.45rem .55rem}.detail-card{background:var(--white);border:1px solid var(--gray-100);border-radius:12px;box-shadow:var(--shadow);padding:1.25rem;margin-bottom:1.25rem}.detail-card h3{margin:0 0 .75rem;color:var(--blue-900);font-size:1rem}.photo-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.photo-card{margin:0;border:1px solid var(--gray-100);border-radius:10px;overflow:hidden;background:var(--gray-50)}.photo-card img,.photo-fallback{display:block;width:100%;height:140px;object-fit:cover;background:var(--gray-100)}.photo-fallback{display:flex;align-items:center;justify-content:center;padding:.5rem;font-size:.8rem;color:var(--gray-600)}.photo-card figcaption{display:flex;flex-direction:column;gap:.2rem;padding:.5rem .6rem;font-size:.8rem;color:var(--gray-600)}.upload-btn{display:inline-flex;align-items:center;justify-content:center;margin-bottom:.75rem;padding:.7rem .9rem;border-radius:8px;background:var(--blue-700);color:var(--white);cursor:pointer;font-weight:600}.upload-btn input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.maps-link{display:inline-flex;align-items:center;text-decoration:none;white-space:nowrap}.maps-block{margin-top:.9rem}.maps-block h3{margin-bottom:.5rem}.history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.history-list li{display:flex;flex-direction:column;gap:.2rem;padding-bottom:.75rem;border-bottom:1px solid var(--gray-100)}@media(max-width:960px){.app-shell,.app-shell-collapsed{display:block}.nav-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;min-width:42px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--primary);cursor:pointer;touch-action:manipulation}.nav-backdrop{display:none;pointer-events:none}.app-shell.nav-open .nav-backdrop{display:block;position:fixed;inset:0;border:0;padding:0;margin:0;background:#0f172a66;z-index:30;pointer-events:auto;cursor:pointer;touch-action:manipulation}.sidebar{position:fixed;top:0;bottom:0;inset-inline-start:calc(min(280px,86vw)*-1 - 1rem);inset-inline-end:auto;width:min(280px,86vw);max-width:86vw;padding-bottom:env(safe-area-inset-bottom);z-index:1;visibility:hidden;pointer-events:none;box-shadow:var(--shadow);transition:inset-inline-start .2s ease,visibility .2s ease;overflow-y:auto;-webkit-overflow-scrolling:touch}.app-shell.nav-open .sidebar{inset-inline-start:0;visibility:visible;pointer-events:auto;z-index:40}.sidebar-collapse{display:none}.app-shell-collapsed .brand span,.app-shell-collapsed .sidebar nav a span,.app-shell-collapsed .sidebar-collapse span{display:inline}.app-shell-collapsed .sidebar nav a,.app-shell-collapsed .sidebar-collapse{justify-content:flex-start;padding-inline:.75rem}.topbar-actions{flex-wrap:wrap;justify-content:flex-end}.form-grid{grid-template-columns:1fr}.dash-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-grid{grid-template-columns:1fr}.content{padding:1rem}}@media(max-width:640px){.user-table td,.user-table th{white-space:normal}.topbar{align-items:flex-start;flex-direction:column}.topbar-meta{white-space:normal}.branch-filter{width:100%}.branch-filter select{flex:1}.dash-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-bar-row{grid-template-columns:minmax(5.2rem,6.5rem) minmax(0,1fr) 1.6rem}.dash-stats .stat-card strong,.stat-card strong{font-size:1.4rem}}@media(min-width:1280px){.dash-stats{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:420px){.dash-stats{grid-template-columns:1fr}}.life-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1.25rem;margin:0 0 1rem}.life-facts dt{margin:0;color:var(--muted);font-size:.85rem}.life-facts dd{margin:.2rem 0 0}.life-actions{display:grid;gap:1rem}.notify-wrap{position:relative}.notify-toggle{display:inline-flex;align-items:center;gap:.4rem}.notify-count{display:inline-flex;min-width:1.25rem;height:1.25rem;padding:0 .3rem;border-radius:999px;background:var(--danger);color:var(--white);font-size:.75rem;align-items:center;justify-content:center}.notify-panel{position:absolute;inset-inline-end:0;top:calc(100% + .4rem);width:min(22rem,80vw);max-height:22rem;overflow:auto;background:var(--white);border:1px solid var(--gray-100);border-radius:12px;box-shadow:var(--shadow);padding:.85rem;z-index:20}.notify-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.notify-list p{margin:0 0 .35rem}.notify-row-actions{display:flex;gap:.75rem;flex-wrap:wrap}.notify-read{opacity:.7}
