*{box-sizing:border-box}body{margin:0;font:14px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:#f4f6f9;color:#172033}header{background:#162844;color:#fff;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:9}.logo{display:flex;align-items:center;min-width:150px}.logo img{display:block;width:190px;max-width:34vw;height:auto;max-height:42px;object-fit:contain;object-position:left center}.online{font-size:12px;padding:5px 9px;border-radius:99px;background:#244b74}.online.off{background:#7a2e2e}nav{display:flex;gap:8px;overflow:auto;padding:10px;background:#fff;border-bottom:1px solid #dfe4ea;position:sticky;top:52px;z-index:10090}button{border:0;border-radius:8px;padding:10px 13px;background:#162844;color:#fff;font-weight:700;cursor:pointer}button.secondary{background:#edf1f6;color:#162844}button.danger{background:#b42318}button.success{background:#147a3e}nav button.active{background:#f5a623;color:#162844}.wrap{max-width:1180px;margin:auto;padding:16px}.card{background:#fff;border:1px solid #dfe4ea;border-radius:12px;padding:15px;margin-bottom:14px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}label{display:block;font-weight:700;margin-bottom:5px}input,select,textarea{width:100%;min-width:0;padding:10px;border:1px solid #cbd3dd;border-radius:8px;background:#fff;font:inherit}textarea{min-height:78px}.row{display:flex;gap:10px;justify-content:space-between;align-items:center}.muted{color:#687386}.hide{display:none!important}.tag{display:inline-block;padding:4px 8px;border-radius:99px;background:#eef2f7;font-size:12px}.approved{background:#e8f7ee;color:#147a3e}.rejected{background:#fdeaea;color:#a11212}.submitted{background:#fff4db;color:#8a5b00}.draft{background:#eef2f7;color:#45556c}.tree ul{list-style:none;padding-left:18px}.tree li{margin:6px 0}.tree details>summary{cursor:pointer;font-weight:700;padding:6px;border-radius:6px}.tree details>summary:hover{background:#f3f6fa}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:9px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:top}.small{font-size:12px}.damage{border:1px solid #dfe4ea;border-radius:10px;padding:12px;margin:12px 0;background:#fbfcfd}.damage.editing-damage{outline:3px solid rgba(22,40,68,.18);border-color:#162844;box-shadow:0 0 0 3px rgba(22,40,68,.06)}.photos{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.photos img{width:110px;height:85px;object-fit:cover;border-radius:8px;border:1px solid #dfe4ea}.photo-item{display:flex;flex-direction:column;gap:3px;max-width:118px}.photo-code{font-size:10px;font-weight:800;color:#162844;overflow-wrap:anywhere}.photo-actions{display:flex;gap:4px;flex-wrap:wrap}.photo-actions button{padding:5px 7px;font-size:10px;border-radius:6px}.photo-item.removed{opacity:.42}.history{margin:10px 0;border:1px solid #dfe4ea;border-radius:8px;padding:8px;background:#fafbfd}.history summary{cursor:pointer;font-weight:800}.history-entry{padding:6px 0;border-bottom:1px solid #e5e7eb}.history-entry:last-child{border-bottom:0}.damage-code{display:inline-block;background:#162844;color:#fff;border-radius:6px;padding:2px 6px}.blade-group{border-left:4px solid #162844;padding-left:10px;margin:14px 0 8px}.blade-group h4{margin:0 0 7px}.inspection-summary{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.req:after{content:" *";color:#b42318}.actions{display:flex;gap:8px;flex-wrap:wrap}.report-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:2px solid #162844;padding-bottom:10px;margin-bottom:12px}.letter{font-size:11px;color:#586579}.warn{background:#fff4db;border:1px solid #f4d98d;padding:10px;border-radius:8px}.ok{background:#e8f7ee;border:1px solid #bde4cb;padding:10px;border-radius:8px}.grid>*,.g3>*,.g4>*,.card,section{min-width:0}.scroll{display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;box-sizing:border-box}.scroll>.table{width:max-content;min-width:100%;max-width:none}.scroll>.table th,.scroll>.table td{white-space:nowrap}.scroll>.table td .actions{min-width:max-content}.stat{padding:10px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb}.time-timer-card .actions{display:flex;gap:8px;flex-wrap:wrap}.time-timer-card .actions button{min-width:110px}.time-form-grid>*{min-width:0}.time-form-grid>div{display:flex;flex-direction:column;align-self:start}.time-form-grid input,.time-form-grid select{height:42px;min-height:42px;line-height:20px}.time-form-grid select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#687386 50%),linear-gradient(135deg,#687386 50%,transparent 50%);background-position:calc(100% - 17px) 18px,calc(100% - 12px) 18px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:32px}.time-wt-detail{grid-column:1/-1;width:100%;margin-top:0}.time-wt-detail:empty{display:none}.time-wt-detail label{margin-top:0}.time-wt-detail input{width:100%}@media(max-width:1100px) and (min-width:781px){.time-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scroll{margin-left:0;margin-right:0}.report-head{flex-wrap:wrap}.report-head>div{min-width:0}.table th,.table td{font-size:12px;padding:8px}}@media(max-width:900px){.logo img{width:150px;max-width:38vw;max-height:36px}.grid,.g3,.g4{grid-template-columns:minmax(0,1fr)}.row{align-items:flex-start;flex-wrap:wrap}.wrap{padding:10px}.table{font-size:12px}.scroll>.table{min-width:680px}.scroll>.table th,.scroll>.table td{white-space:nowrap}.report-head{flex-direction:column;align-items:stretch}.photos img{width:92px;height:72px}nav{top:50px}}@media print{header,nav,.no-print{display:none!important}body{background:#fff}.card{border:0}.wrap{max-width:none;padding:0}}
body.auth-pending header,body.auth-pending nav,body.auth-pending main{display:none!important}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:#f4f6f9}.auth-box{width:min(420px,100%);background:#fff;border:1px solid #dfe4ea;border-radius:16px;padding:24px;box-shadow:0 12px 35px rgba(22,40,68,.12)}.auth-box h1{margin:12px 0 4px}.auth-box .brand{display:flex;justify-content:center;align-items:center}.auth-box .brand img{display:block;width:min(285px,86%);height:auto;max-height:105px;object-fit:contain}.auth-box form{display:grid;gap:12px;margin-top:20px}.auth-error{color:#b42318;min-height:18px}.account{display:flex;gap:8px;align-items:center}.account button{padding:7px 10px}.role-badge{font-size:11px;background:#eef2f7;color:#162844;padding:4px 7px;border-radius:99px}
#new-report .grid.g4{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
#new-report .grid.g4>div{min-width:0;width:100%;max-width:100%;overflow:hidden}
#new-report input,#new-report select,#new-report textarea{display:block;box-sizing:border-box;width:100%!important;max-width:100%!important;min-width:0!important}
#rDate,#rDateEnd,#rStart,#rFinish{-webkit-appearance:none;appearance:none;-webkit-min-logical-width:0!important;min-inline-size:0!important;width:100%!important;max-width:100%!important;min-width:0!important}
@media(max-width:700px){#new-report .grid.g4{grid-template-columns:minmax(0,1fr)}}
.monday-board{border:1px solid #dfe4ea;border-radius:12px;overflow:hidden;background:#fff}.monday-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px;border-bottom:1px solid #e5e7eb;background:#fbfcfd}.monday-summary{display:flex;gap:8px;flex-wrap:wrap}.monday-count{padding:7px 10px;border-radius:8px;background:#eef2f7;font-weight:800}.monday-table{width:100%;border-collapse:separate;border-spacing:0;min-width:980px}.monday-table th{position:sticky;top:0;background:#f7f8fa;color:#4b5563;font-size:12px;text-transform:uppercase;letter-spacing:.02em;padding:9px 10px;border-bottom:1px solid #dfe4ea;border-right:1px solid #eef0f3;white-space:nowrap}.monday-table td{padding:9px 10px;border-bottom:1px solid #eef0f3;border-right:1px solid #f2f3f5;vertical-align:middle}.monday-table tr:hover td{background:#fafcff}.monday-project{font-weight:800}.monday-sub{font-size:12px;color:#687386;margin-top:2px}.monday-status{display:inline-flex;align-items:center;justify-content:center;min-width:104px;padding:6px 10px;border-radius:7px;font-size:12px;font-weight:800}.monday-status.free{background:#e8f7ee;color:#147a3e}.monday-status.pending{background:#fff4db;color:#8a5b00}.monday-status.active{background:#e8eef9;color:#264f8f}.monday-people{display:flex;gap:5px;flex-wrap:wrap}.monday-person{display:inline-block;padding:4px 7px;border-radius:99px;background:#eef2f7;font-size:11px;font-weight:700}.monday-wtg{display:flex;gap:4px;flex-wrap:wrap;max-width:260px}.monday-board-empty{padding:24px;text-align:center;color:#687386}.project-panel-title{display:flex;align-items:center;gap:8px}.project-panel-title:before{content:'';width:5px;height:22px;border-radius:3px;background:#f5a623;display:inline-block}@media(max-width:900px){.monday-toolbar{align-items:flex-start}.monday-table{min-width:900px}}
.planning-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:end}.planning-board-wrap{width:100%;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid #dfe4ea;border-radius:10px;background:#fff}.planning-board{border-collapse:separate;border-spacing:0;min-width:1450px;width:100%;font-size:12px}.planning-board th,.planning-board td{border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:0;min-width:82px;height:52px;vertical-align:top}.planning-board th{position:sticky;top:0;background:#f8fafc;z-index:2;padding:7px;text-align:center}.planning-board .tech-col{position:sticky;left:0;z-index:3;background:#fff;min-width:190px;max-width:190px;padding:8px;text-align:left;font-weight:800}.planning-board th.tech-col{z-index:4;background:#f8fafc}.planning-cell{position:relative;height:52px;padding:3px;cursor:pointer}.planning-cell:hover{background:#f8fafc}.plan-block{height:100%;border-radius:7px;padding:5px 6px;overflow:hidden;font-size:11px;font-weight:700;line-height:1.2;border:1px solid rgba(22,40,68,.16);background:#eef2f7}.plan-block small{display:block;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-Project{background:#dce8f7}.plan-Available{background:#e8f7ee}.plan-Travel{background:#fff4db}.plan-Training{background:#eee7fa}.plan-Holiday{background:#e6f6fb}.plan-Sick{background:#fdeaea}.plan-Standby{background:#f1f3f5}.planning-legend{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.planning-legend span{padding:4px 7px;border-radius:7px;border:1px solid #dfe4ea;font-size:11px}.planning-tv body{}.planning-tv header,.planning-tv nav,.planning-tv #planningFormCard,.planning-tv #planningIntro,.planning-tv #availabilityCoordinatorPanel,.planning-tv #technicianTilePalette,.planning-tv #planningQualificationsCard,.planning-tv #projectBoardCard{display:none!important}.planning-tv main.wrap{max-width:none;padding:8px}.planning-tv main>section{display:none!important}.planning-tv #planning{display:block!important}.planning-tv #planningBoardCard{display:block!important;border:0;margin:0;padding:8px}.planning-tv #planningBoardCard>.row{display:none!important}.planning-tv #planningBoardCard .planning-controls{display:none!important}.planning-tv .planning-board-wrap{height:calc(100vh - 18px);margin-top:0!important}.planning-tv .planning-board{font-size:13px}.planning-tv .planning-board th,.planning-tv .planning-board td{height:58px}.planning-tv .planning-cell{height:58px}@media(max-width:900px){.planning-toolbar>*{flex:1 1 150px}.planning-board .tech-col{min-width:150px;max-width:150px}}
.planning-controls{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin-top:10px}.planning-controls>div{min-width:150px}.planning-board.compact .planning-board th,.planning-board.compact .planning-board td{height:38px;min-width:64px}.planning-board.compact .planning-cell{height:38px}.planning-board.compact .tech-col{min-width:165px;max-width:165px;padding:5px}.planning-board.compact .plan-block{padding:3px 4px;font-size:10px}.tech-badges{display:flex;gap:3px;flex-wrap:wrap;margin-top:4px}.tech-badge{font-size:9px;padding:2px 4px;border-radius:4px;background:#eef2f7;border:1px solid #dfe4ea;font-weight:800}.planning-drop{outline:2px dashed #162844;outline-offset:-3px;background:#eef4fb!important}.plan-block[draggable="true"]{cursor:grab}.plan-block[draggable="true"]:active{cursor:grabbing}.planning-group-row td{background:#162844;color:#fff;font-weight:800;padding:6px 8px!important;height:auto!important}.planning-board .today-col{background:#fff8e6}.planning-board th.today-col{background:#fff0c2}.planning-board .weekend-col{background:#fafafa}.planning-board th.weekend-col{background:#f1f3f5}.planning-qual-card{margin-top:10px}.planning-qual-card .grid{align-items:end}
.project-board-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.project-board-card{border:1px solid #dfe4ea;border-radius:12px;padding:12px;background:#fff}.project-board-card h4{margin:0 0 4px}.project-meta{font-size:11px;color:#687386;margin-bottom:8px}.project-team{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.project-person{padding:5px 7px;border-radius:7px;background:#eef2f7;border:1px solid #dfe4ea;font-size:11px}.req-line{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.req-chip{padding:3px 6px;border-radius:6px;font-size:10px;font-weight:800;border:1px solid #dfe4ea;background:#f8fafc}.req-ok{background:#e8f7ee;color:#147a3e}.req-bad{background:#fdeaea;color:#a11212}.project-board-alert{margin-top:7px;font-size:11px;font-weight:700}.project-board-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:end}.project-board-toolbar>div{min-width:160px;flex:1 1 160px}
.service-van-label{display:inline-flex;align-items:center;gap:6px}.van-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#687386}.van-free{background:#e8f7ee}.van-busy{background:#dce8f7}.van-off{background:#fdeaea}.plan-Service{background:#fff0c2}.plan-Unavailable{background:#fdeaea}.fleet-status{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}.fleet-status.free{background:#e8f7ee;color:#147a3e}.fleet-status.busy{background:#dce8f7;color:#162844}.fleet-status.off{background:#fdeaea;color:#a11212}.planning-subtitle{font-size:11px;font-weight:800;background:#162844;color:#fff;padding:7px 9px;margin:10px 0 0;border-radius:8px 8px 0 0}.planning-board-wrap+.planning-subtitle{margin-top:12px}
.grid > div,
.g3 > div,
.g4 > div,
.time-form-grid > div,
#new-report .grid > div,
#planning .grid > div {
min-width:0 !important;
max-width:100% !important;
width:100% !important;
overflow:visible;
}
input, select, textarea,
input[type="date"], input[type="time"], input[type="datetime-local"] {
display:block !important;
width:100% !important;
max-width:100% !important;
min-width:0 !important;
min-inline-size:0 !important;
box-sizing:border-box !important;
}
input[type="date"], input[type="time"], input[type="datetime-local"] {
-webkit-appearance:none !important;
appearance:none !important;
height:44px !important;
line-height:22px !important;
padding:10px 12px !important;
font-size:16px !important;
text-align:left !important;
overflow:hidden !important;
}
input[type="date"]::-webkit-date-and-time-value,
input[type="time"]::-webkit-date-and-time-value,
input[type="datetime-local"]::-webkit-date-and-time-value {
text-align:left;
min-width:0;
}
#new-report .grid.g4,
.time-form-grid {
grid-template-columns:repeat(2,minmax(0,1fr)) !important;
gap:14px !important;
align-items:start !important;
}
#planning .grid.g4,
#planningFormCard .grid.g4 {
grid-template-columns:repeat(2,minmax(0,1fr)) !important;
gap:14px !important;
}
@media (max-width:700px){
#new-report .grid.g4,
.time-form-grid,
#planning .grid.g4,
#planningFormCard .grid.g4 {
grid-template-columns:minmax(0,1fr) !important;
}
}
.sales-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.sales-kpi{border:1px solid #dfe4ea;border-radius:10px;padding:12px;background:#fbfcfd}
.sales-kpi b{display:block;font-size:20px;margin-top:4px}
.sales-item{display:grid;grid-template-columns:minmax(260px,3fr) 80px 90px 100px 110px 44px;gap:8px;align-items:end;padding:9px 0;border-bottom:1px solid #e5e7eb}
.sales-item:last-child{border-bottom:0}
.sales-pricebox{border:2px solid #162844;border-radius:12px;padding:14px;background:#f9fbfd}
.sales-pricebox .big{font-size:26px;font-weight:900;color:#162844}
.sales-status{font-weight:800}
.sales-status.pending{color:#8a5b00}.sales-status.won{color:#147a3e}.sales-status.lost{color:#a11212}
.offer-print{background:#fff;color:#111;font-family:Arial,sans-serif;padding:28px}
@media(max-width:850px){.sales-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-item{grid-template-columns:1fr 1fr}.sales-item .wide{grid-column:1/-1}}
.tech-live-line{display:flex;align-items:center;gap:6px;margin-top:5px;font-size:10px;font-weight:700}.tech-live-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:0 0 10px;box-shadow:0 0 0 2px #fff,0 0 0 3px rgba(15,23,42,.12)}.tech-live-on{background:#16a34a}.tech-live-off{background:#dc2626}.tech-live-on-text{color:#15803d}.tech-live-off-text{color:#b91c1c}
nav{align-items:stretch}
.nav-topic{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding:0 9px 0 0;border-right:1px solid #dfe4ea}
.nav-topic:last-child{border-right:0;padding-right:0}
.nav-topic-title{display:flex;align-items:center;align-self:stretch;padding:0 5px;color:#687386;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.nav-topic button{flex:0 0 auto;white-space:nowrap}
@media(max-width:900px){.nav-topic{gap:5px;padding-right:7px}.nav-topic-title{font-size:9px;padding:0 3px}}
