:root{--navy:#0a2342;--navy2:#12365f;--blue:#1c6de8;--bg:#f3f6fa;--line:#dce4ed;--text:#172334;--muted:#6c7b8d;--green:#16835d;--orange:#d97706;--red:#d33f49;--white:#fff;--shadow:0 10px 30px rgba(22,43,70,.08)}
*{box-sizing:border-box}html{font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--text);background:var(--bg)}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.topbar{height:72px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:10;box-shadow:0 4px 18px #07182b33}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:#fff;color:var(--navy);font-weight:900;letter-spacing:-1px}.brand strong{font-size:1rem;letter-spacing:.04em}.brand small{display:block;color:#aec3dc;margin-top:2px}.user{display:flex;align-items:center;gap:9px;font-size:.9rem}.online{width:8px;height:8px;border-radius:50%;background:#42d392}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#1f4874;font-weight:700}.icon-btn{display:none;border:0;background:transparent;color:white;font-size:1.5rem}.app-shell{display:grid;grid-template-columns:232px 1fr;min-height:calc(100vh - 72px)}.sidebar{background:#fff;border-right:1px solid var(--line);padding:22px 14px;display:flex;flex-direction:column;justify-content:space-between}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#425166;text-align:left;padding:13px 14px;border-radius:10px;font-weight:600;display:flex;align-items:center;gap:12px}.nav-item span{font-size:1.2rem;width:20px}.nav-item b{margin-left:auto;background:#e7eef7;color:#24466e;border-radius:20px;padding:2px 8px;font-size:.75rem}.nav-item.active{background:#eaf2ff;color:#145fc9}.nav-item.active b{background:#1c6de8;color:#fff}.side-note{background:#eef4fa;border-radius:12px;padding:14px;color:#35506d}.side-note strong,.side-note span{display:block}.side-note span{font-size:.79rem;line-height:1.4;margin-top:5px;color:#637990}main{padding:30px;max-width:1600px;width:100%;margin:0 auto}.view{display:none}.view.active{display:block}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:25px;gap:20px}.page-head.compact{align-items:center}.page-head h1{font-size:2rem;letter-spacing:-.04em;margin:2px 0 5px}.page-head p{margin:0;color:var(--muted)}.eyebrow{font-size:.72rem!important;font-weight:800;color:#3970ae!important;letter-spacing:.12em}.primary,.secondary{border:0;border-radius:10px;padding:12px 17px;font-weight:700}.primary{background:var(--blue);color:white;box-shadow:0 5px 14px #1c6de82b}.primary:hover{background:#145fc9}.secondary{background:#edf1f6;color:#31445a}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stats article{background:white;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;align-items:center;gap:14px;box-shadow:var(--shadow)}.stat-icon{width:43px;height:43px;border-radius:11px;display:grid;place-items:center;font-weight:900}.stat-icon.blue{background:#eaf2ff;color:var(--blue)}.stat-icon.orange{background:#fff2dd;color:var(--orange)}.stat-icon.green{background:#e4f5ee;color:var(--green)}.stat-icon.red{background:#fdebed;color:var(--red)}.stats small{font-size:.68rem;color:var(--muted);font-weight:800;letter-spacing:.07em}.stats strong{display:block;font-size:1.75rem;line-height:1.1;margin-top:3px}.stats p{font-size:.77rem;margin:1px 0 0;color:var(--muted)}.grid-two{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.panel-head{padding:19px 20px 15px;border-bottom:1px solid #e7edf3;display:flex;align-items:center;justify-content:space-between}.panel-head h2{font-size:1.03rem;margin:0 0 4px}.panel-head p{font-size:.78rem;margin:0;color:var(--muted)}.text-btn{border:0;background:none;color:var(--blue);font-weight:700}.job-list{padding:3px 20px}.job-row{display:grid;grid-template-columns:58px 1.2fr 1fr auto;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid #edf1f5}.job-row:last-child{border-bottom:0}.job-time{font-weight:800;color:#284667}.job-main strong,.job-device strong{display:block;font-size:.9rem}.job-main small,.job-device small{color:var(--muted);display:block;margin-top:3px}.pill{display:inline-flex;align-items:center;border-radius:20px;padding:6px 10px;font-size:.73rem;font-weight:800;white-space:nowrap}.pill.Νέα{background:#eaf2ff;color:#1762c4}.pill.Σε-εξέλιξη{background:#fff1d9;color:#ae6500}.pill.Αναμονή{background:#f3eafb;color:#7c3fb0}.pill.Ολοκληρώθηκε{background:#e4f5ee;color:#16714f}.team-list{padding:8px 18px 18px}.team-member{display:flex;align-items:center;gap:12px;padding:13px 2px;border-bottom:1px solid #edf1f5}.team-member:last-child{border:0}.tech-avatar{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;color:white;font-weight:800;background:var(--navy2)}.team-member div:nth-child(2){flex:1}.team-member strong,.team-member small{display:block}.team-member small{color:var(--muted);margin-top:3px}.count{font-size:.78rem;color:#52667d}.toolbar{display:flex;gap:12px;margin-bottom:16px}.search{height:44px;display:flex;align-items:center;gap:9px;background:white;border:1px solid var(--line);border-radius:10px;padding:0 13px;flex:1}.search input{border:0;outline:0;width:100%;background:transparent}.toolbar select{border:1px solid var(--line);background:white;border-radius:10px;padding:0 12px;color:#405168}.table-panel{overflow:hidden}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:.72rem;letter-spacing:.05em;color:#718095;background:#f7f9fc;padding:13px 16px}td{padding:14px 16px;border-top:1px solid #e8edf2;font-size:.86rem;vertical-align:middle}td strong,td small{display:block}td small{color:var(--muted);margin-top:4px}.map-btn,.more-btn{border:0;background:#edf4ff;color:#1764ca;border-radius:8px;padding:7px 9px;font-weight:700;text-decoration:none;display:inline-block}.more-btn{background:#edf1f5;color:#445871}.mobile-cards{display:none}.schedule-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.tech-column{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}.tech-head{padding:16px;background:var(--navy);color:white}.tech-head strong,.tech-head small{display:block}.tech-head small{color:#bad0e7;margin-top:4px}.schedule-items{padding:10px}.schedule-card{padding:13px;border:1px solid var(--line);border-radius:10px;margin-bottom:9px;border-left:4px solid var(--blue)}.schedule-card.done{border-left-color:var(--green)}.schedule-card.wait{border-left-color:var(--orange)}.schedule-card time{font-weight:800;color:#2f577f}.schedule-card strong,.schedule-card small{display:block;margin-top:5px}.schedule-card small{color:var(--muted)}.customers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.customer-card{background:#fff;padding:19px}.customer-card h3{margin:0 0 5px;font-size:1rem}.customer-card p{margin:4px 0;color:var(--muted);font-size:.84rem}.customer-card .customer-actions{display:flex;gap:8px;margin-top:13px}.customer-actions a{font-size:.78rem}.customer-actions .map-btn{background:#eaf6f0;color:#16714f}dialog{border:0;border-radius:16px;padding:0;width:min(680px,calc(100% - 28px));box-shadow:0 30px 90px #07182b55}dialog::backdrop{background:#07182b99;backdrop-filter:blur(3px)}dialog form{padding:23px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:15px}.dialog-head h2{margin:2px 0}.close{border:0;background:#edf1f5;width:34px;height:34px;border-radius:50%;font-size:1.4rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:20px 0}.form-grid label{font-weight:700;font-size:.8rem}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #ccd7e3;border-radius:9px;outline:0}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1c6de817}.form-grid .full{grid-column:1/-1}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.detail-dialog{width:min(620px,calc(100% - 28px))}.detail-box{padding:24px}.detail-top{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:16px}.detail-top h2{margin:4px 0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.detail-item{background:#f6f8fb;padding:13px;border-radius:10px}.detail-item small,.detail-item strong{display:block}.detail-item small{color:var(--muted);margin-bottom:4px}.detail-actions{display:flex;justify-content:flex-end;gap:9px}#toast{position:fixed;right:25px;bottom:25px;background:#133251;color:white;border-radius:10px;padding:13px 17px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:.25s;z-index:50}#toast.show{opacity:1;transform:translateY(0)}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px 14px;margin-bottom:14px}.calendar-toolbar>div{display:flex;align-items:center;gap:16px}.week-calendar{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}.calendar-day{background:#f8fafc;min-height:470px}.calendar-day.today{background:#eef5ff}.day-head{background:#fff;padding:13px;border-bottom:1px solid var(--line)}.day-head span,.day-head strong{display:block}.day-head span{font-size:.74rem;color:var(--muted);text-transform:uppercase}.day-head strong{font-size:1.25rem;margin-top:2px}.calendar-day.today .day-head strong{color:var(--blue)}.day-jobs{padding:8px}.appointment{display:block;width:100%;text-align:left;background:#fff;border:1px solid #dce5ef;border-left:4px solid var(--blue);border-radius:9px;padding:10px;margin-bottom:8px;color:var(--text)}.appointment:hover{box-shadow:0 5px 15px #17395f18}.appointment.done{border-left-color:var(--green);opacity:.78}.appointment.wait{border-left-color:var(--orange)}.appointment time,.appointment strong,.appointment small{display:block}.appointment time{font-weight:900;color:#1b609f}.appointment strong{font-size:.8rem;margin:5px 0}.appointment small{font-size:.7rem;color:var(--muted);line-height:1.35}.reschedule{grid-column:1/-1;background:#edf4ff;border:1px solid #cfe0f5;border-radius:11px;padding:14px}.reschedule>strong{display:block;margin-bottom:10px}.reschedule-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:8px}.reschedule input,.reschedule select{border:1px solid #bccbdb;border-radius:8px;padding:9px;min-width:0}.reschedule button{padding:9px 12px}.form-total{background:#e6f5ee;border:1px solid #b9e2cf;border-radius:10px;padding:10px 13px;display:flex;align-items:center;justify-content:space-between;color:#126342}.form-total span{font-size:.8rem;font-weight:700}.form-total strong{font-size:1.15rem}.cost-summary{grid-column:1/-1;background:#f6f9fc;border:1px solid var(--line);border-radius:11px;padding:14px}.cost-summary h3{margin:0 0 12px;font-size:.95rem}.cost-lines{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cost-lines div{background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px}.cost-lines small,.cost-lines strong{display:block}.cost-lines small{color:var(--muted);margin-bottom:4px}.cost-total{display:flex;align-items:center;justify-content:space-between;margin-top:11px;padding-top:11px;border-top:2px solid #d7e2ec}.cost-total strong{font-size:1.2rem;color:#126342}.cost-editor{display:grid;grid-template-columns:1.5fr 1.5fr repeat(3,1fr) auto;gap:8px}.cost-editor input,.cost-editor select{border:1px solid #bccbdb;border-radius:8px;padding:9px;min-width:0}
.customer-lookup{position:relative;background:#f1f6fc;border:1px solid #d4e2f1;border-radius:11px;padding:13px}.customer-matches{position:absolute;left:13px;right:13px;top:76px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 16px 36px #102b4b2b;z-index:5;display:none;max-height:220px;overflow:auto}.customer-matches.show{display:block}.customer-match{width:100%;border:0;border-bottom:1px solid #edf1f5;background:#fff;padding:11px;text-align:left;display:flex;justify-content:space-between;gap:12px}.customer-match:hover{background:#edf5ff}.customer-match strong,.customer-match small{display:block}.customer-match small{color:var(--muted);margin-top:3px}.customer-history{display:none;background:#eef8f3;border:1px solid #c8e7d7;border-radius:12px;padding:14px}.customer-history.show{display:block}.history-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.history-head h3{margin:0}.history-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.history-metrics div{background:#fff;border-radius:8px;padding:9px}.history-metrics small,.history-metrics strong{display:block}.history-metrics small{color:var(--muted);margin-bottom:3px}.history-list{max-height:150px;overflow:auto}.history-row{display:grid;grid-template-columns:90px 1fr auto;gap:9px;padding:8px 0;border-top:1px solid #d5e8de;font-size:.78rem}.rating{border-radius:20px;padding:5px 9px;font-size:.72rem;font-weight:800}.rating.good{background:#dff3e9;color:#126342}.rating.watch{background:#fff0d7;color:#995800}.rating.bad{background:#fde7e9;color:#a52732}.rating-select{border:1px solid #bdd3c8;border-radius:8px;padding:7px}.search-customer-summary{display:none;background:#fff;border:1px solid #cfe0f2;border-left:5px solid var(--blue);border-radius:12px;padding:14px 16px;margin-bottom:14px;box-shadow:var(--shadow)}.search-customer-summary.show{display:flex;align-items:center;justify-content:space-between;gap:15px}.search-customer-summary h3,.search-customer-summary p{margin:0}.search-customer-summary p{color:var(--muted);font-size:.82rem;margin-top:4px}.summary-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.pill.Αναμονή-ανταλλακτικού{background:#fff0d7;color:#995800}.pill.Προς-μεταφορά{background:#e7efff;color:#2457a7}.pill.Στο-εργαστήριο{background:#e8e9fb;color:#4947a6}.workflow-panel{grid-column:1/-1;background:#fff8e9;border:1px solid #f0d69a;border-radius:12px;padding:15px}.workflow-panel h3{margin:0 0 4px}.workflow-panel>p{margin:0 0 13px;color:#745b29;font-size:.8rem}.workflow-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.workflow-form label{font-size:.75rem;font-weight:700}.workflow-form select,.workflow-form input,.workflow-form textarea{width:100%;display:block;margin-top:5px;border:1px solid #d7c28f;border-radius:8px;padding:9px;background:#fff}.workflow-form .wide{grid-column:1/-1}.workflow-form button{grid-column:1/-1}.completion-stamp{grid-column:1/-1;background:#e5f5ed;border:1px solid #bde2cf;border-radius:10px;padding:12px;color:#126342}.completion-stamp strong,.completion-stamp small{display:block}.completion-stamp small{margin-top:3px}.next-stage{grid-column:1/-1;background:#edf4ff;border:1px solid #cbdff5;border-radius:10px;padding:12px;color:#1c5795}.next-stage strong,.next-stage small{display:block}.next-stage small{margin-top:3px}
@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}.grid-two{grid-template-columns:1fr}.schedule-grid{grid-template-columns:repeat(2,1fr)}.customers-grid{grid-template-columns:repeat(2,1fr)}.week-calendar{overflow-x:auto;grid-template-columns:repeat(7,180px)}}
@media(max-width:760px){.topbar{height:64px;padding:0 15px}.brand small,.user>span:not(.avatar){display:none}.icon-btn{display:block;order:-1}.app-shell{display:block}.sidebar{display:none;position:fixed;top:64px;left:0;bottom:0;width:260px;z-index:20;box-shadow:10px 10px 30px #081b3044}.sidebar.open{display:flex}main{padding:20px 14px}.page-head{align-items:flex-start}.page-head h1{font-size:1.65rem}.page-head .primary{white-space:nowrap;padding:11px 12px}.stats{gap:10px}.stats article{padding:14px;gap:10px}.stat-icon{width:38px;height:38px}.stats strong{font-size:1.4rem}.grid-two{gap:14px}.job-row{grid-template-columns:48px 1fr auto}.job-device{display:none}.toolbar{flex-wrap:wrap}.search{flex-basis:100%}.toolbar select{height:42px;flex:1;min-width:140px}.table-wrap{display:none}.mobile-cards{display:grid;gap:10px;padding:10px;background:var(--bg)}.mobile-job{background:white;border:1px solid var(--line);border-radius:11px;padding:14px}.mobile-job-top{display:flex;justify-content:space-between;gap:10px}.mobile-job h3{font-size:.95rem;margin:0}.mobile-job p{font-size:.82rem;color:var(--muted);margin:7px 0}.mobile-job-actions{display:flex;gap:8px;margin-top:11px}.schedule-grid,.customers-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.detail-grid{grid-template-columns:1fr}.calendar-toolbar{gap:7px;padding:9px}.calendar-toolbar .secondary{font-size:0;width:42px}.calendar-toolbar .secondary:first-child::after{content:'←';font-size:1rem}.calendar-toolbar .secondary:last-child::after{content:'→';font-size:1rem}.calendar-toolbar>div{display:grid;gap:2px;text-align:center}.reschedule-fields{grid-template-columns:1fr 1fr}.reschedule-fields button{grid-column:1/-1}.cost-lines{grid-template-columns:1fr}.cost-editor{grid-template-columns:1fr 1fr}.cost-editor select,.cost-editor input:first-of-type{grid-column:1/-1}.cost-editor button{grid-column:1/-1}}
@media(max-width:430px){.stats{grid-template-columns:1fr 1fr}.stats article{align-items:flex-start}.stats p{display:none}.page-head{display:grid}.page-head .primary{justify-self:start}.job-row{grid-template-columns:45px 1fr}.job-row .pill{grid-column:2}.panel-head{padding:16px}.brand strong{font-size:.86rem}}
@media(max-width:600px){.search-customer-summary.show,.history-head{align-items:flex-start;display:grid}.history-metrics{grid-template-columns:1fr 1fr}.history-row{grid-template-columns:78px 1fr}.history-row strong{grid-column:2}.summary-actions{margin-top:8px}}

/* Καταστάσεις και οικονομικός συμψηφισμός */
.price-history{display:block;margin-top:6px;padding:5px 7px;border-radius:7px;font-size:.72rem;font-weight:800}.price-history.up{background:#fde7e9;color:#b4232f}.price-history.down{background:#e4f5ee;color:#16714f}.price-history.neutral{background:#edf1f5;color:#52667d}
.parts-alert{display:none;margin-bottom:14px;border-radius:11px;padding:13px 15px}.parts-alert.show{display:flex;justify-content:space-between;gap:12px;background:#fff0f1;border:1px solid #f1b9bf;color:#a32431}.parts-alert strong,.parts-alert span{display:block}.pill.Καθυστέρηση{background:#c92936;color:#fff}.pill.Προς-παραγγελία{background:#fff0d7;color:#995800}.pill.Παραγγέλθηκε{background:#e8efff;color:#2457a7}.pill.Παραλήφθηκε,.pill.Τοποθετήθηκε{background:#e4f5ee;color:#16714f}.delayed-part{background:#fff8f8!important}.part-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px;display:grid;gap:12px}.part-card.delayed-part{border-left:4px solid #c92936}.part-card h3{margin:9px 0 5px}.part-card p{font-size:.8rem;color:var(--muted)}.part-card>a{justify-self:start}@media(max-width:640px){.parts-alert.show{display:grid}}
.pill.Πωλήθηκε---Παραδόθηκε{background:#dff5e9;color:#11724d}
.role-switcher{display:flex;align-items:center;gap:7px;font-size:.75rem}.role-switcher select{border:1px solid #ffffff33;background:#173b63;color:#fff;border-radius:8px;padding:7px;max-width:260px}.nav-item[hidden]{display:none}.cash-panel{padding:20px}.cash-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cash-grid label{font-weight:700;font-size:.82rem}.cash-grid input,.cash-grid textarea{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:9px;padding:11px}.cash-grid .full{grid-column:1/-1}.cash-summary{display:grid;grid-template-columns:1fr auto;gap:8px;margin:18px 0;padding:14px;background:#f4f7fa;border-radius:10px}.cash-summary strong{font-size:1.1rem}.access-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.access-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;gap:12px}.access-card.owner{border-color:#79a9e7;background:#f2f7ff}.access-card h3{margin:0 0 3px}.access-card strong{color:var(--blue);font-size:.8rem}.access-card p{color:var(--muted);font-size:.82rem}.access-card small{color:#9b3841}.approval-panel{margin-top:16px}.approval-list{padding:12px}.approval-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border-bottom:1px solid var(--line)}.danger-btn{border:0;border-radius:8px;background:#b4232f;color:#fff;padding:9px 11px;font-weight:800}@media(max-width:760px){.role-switcher{font-size:0}.role-switcher select{font-size:.75rem;max-width:170px}.cash-grid,.access-grid{grid-template-columns:1fr}.cash-grid .full{grid-column:auto}.approval-row{align-items:flex-start;display:grid}}
.customer-actions button{font-size:.78rem}.customer-history-dialog{max-height:85vh;overflow:auto}.customer-history-totals{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.customer-history-totals>div{background:#eef4fa;border-radius:10px;padding:13px}.customer-history-totals small,.customer-history-totals strong{display:block}.customer-history-totals small{color:var(--muted);margin-bottom:4px}.customer-jobs-list{display:grid;gap:9px;margin-bottom:18px}.customer-job-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;border:1px solid var(--line);border-radius:10px;padding:12px}.customer-job-row time,.customer-job-row strong,.customer-job-row small{display:block}.customer-job-row time,.customer-job-row small{color:var(--muted);font-size:.75rem}.customer-job-row>div:nth-child(2){text-align:right}.customer-job-row>div:nth-child(2) strong{margin-top:5px}@media(max-width:640px){.customer-job-row{grid-template-columns:1fr auto}.customer-job-row>button{grid-column:1/-1}.customer-history-totals{grid-template-columns:1fr}}
.balance-total{background:#fff1f2;border:1px solid #f2c0c5;border-radius:12px;padding:12px 16px;text-align:right}.balance-total small,.balance-total strong{display:block}.balance-total small{font-size:.72rem;color:#8e3941;font-weight:800}.balance-total strong{font-size:1.45rem;color:#b4232f;margin-top:3px}.amount-due{color:#b4232f;font-size:1rem}.paid-btn{border:0;border-radius:8px;background:#e4f5ee;color:#126342;padding:9px 11px;font-weight:800}.empty-balance{text-align:center;color:var(--muted);padding:30px!important}.balance-card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);border-radius:11px;padding:14px;display:grid;gap:12px}.balance-card h3{margin:0 0 4px}.balance-card small{color:var(--muted)}.balance-card-money{display:flex;justify-content:space-between;align-items:center}.balance-card-money strong{color:#b4232f;font-size:1.2rem}
.workshop-panel{grid-column:1/-1;background:#eef5ff;border:1px solid #bfd7f4;border-radius:12px;padding:15px}.workshop-panel h3{margin:0 0 4px}.workshop-panel>p{margin:0 0 13px;color:#365f8c;font-size:.8rem}.workshop-panel select,.workshop-panel textarea{border-color:#9fbeda}.device-number-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.device-number-grid label{font-size:.75rem;font-weight:800}.device-number-grid input{display:block;width:100%;margin-top:5px;border:1px solid #9fbeda;border-radius:8px;padding:9px;background:#fff}@media(max-width:640px){.device-number-grid{grid-template-columns:1fr}}
.pill.Αναμονή-ανταλλακτικού,.pill.Προς-μεταφορά,.pill.Στο-εργαστήριο,.pill.Εγγύηση{background:#fde7e9!important;color:#b4232f!important}.pill.Έτοιμο{background:#dff5e9;color:#11724d}.form-total{gap:18px}.form-total>div{display:grid;gap:3px}.form-total .balance{margin-left:auto;text-align:right}.form-total .balance strong,.balance-due strong{color:#b4232f}.cost-lines.four{grid-template-columns:repeat(4,1fr)}.payment-note{grid-column:1/-1;background:#fff3f3;border:1px solid #f4b9bf;border-radius:10px;padding:12px;color:#91252e}.status-badges{display:flex;gap:6px;flex-wrap:wrap}.cost-editor.extended{grid-template-columns:1.4fr 1.4fr repeat(4,1fr)}.cost-editor.extended button{grid-column:1/-1}@media(max-width:640px){.form-total{align-items:stretch;flex-direction:column}.form-total .balance{margin-left:0;text-align:left}.cost-lines.four{grid-template-columns:1fr}.cost-editor.extended{grid-template-columns:1fr}}
.part-edit-btn{margin-top:.45rem;width:100%;white-space:nowrap}
.part-actions{display:grid;gap:.4rem;margin-top:.45rem;min-width:180px}.part-actions small{color:var(--muted)}.part-received-btn{border:0;border-radius:8px;padding:8px 9px;background:#dfeeff;color:#145da9;font-weight:800}.part-received-btn:disabled{background:#e4f5ee;color:#16714f;cursor:default}.decision-actions{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.decision-btn{border:2px solid transparent;border-radius:8px;padding:8px 6px;color:#fff;font-size:.72rem;font-weight:900}.decision-btn.agree{background:#1b8a60}.decision-btn.decline{background:#c92936}.decision-btn.selected{border-color:#0a2342;box-shadow:0 0 0 2px #fff inset}.customer-progress{margin-top:.45rem!important;padding:.45rem .55rem;border-radius:7px;background:#eaf2ff;color:#195caa!important;line-height:1.4}.pill.Ανταλλακτικό-παραλήφθηκε{background:#dfeeff;color:#145da9}@media(max-width:640px){.part-actions{width:100%}}
.part-phone{display:block;margin:.35rem 0;color:#126342;font-weight:900;text-decoration:none}.part-phone:hover{text-decoration:underline}
.missing-phone{display:block;margin:.35rem 0;color:#b4232f!important;font-weight:800}
.legacy-history-panel{margin-bottom:18px}.legacy-history-body{padding:16px}.legacy-search{margin:0 0 10px}.legacy-history-body>p{margin:0;color:var(--muted);font-size:.82rem}.legacy-history-results{display:grid;gap:12px;margin-top:14px}.legacy-record{border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:11px;padding:14px;background:#fff}.legacy-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:11px;border-bottom:1px solid var(--line)}.legacy-record-head time{font-size:.75rem;color:var(--muted)}.legacy-record-head h3{margin:3px 0;font-size:1rem}.legacy-record-head a{color:#126342;font-weight:900;text-decoration:none}.legacy-record-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:11px}.legacy-record-grid>div{background:#f6f8fb;border-radius:8px;padding:10px;min-width:0}.legacy-record-grid small,.legacy-record-grid strong{display:block}.legacy-record-grid small{color:var(--muted);margin-bottom:4px}.legacy-record-grid p{margin:0;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.legacy-record-grid .legacy-notes{grid-column:1/-1;background:#fff8e9}@media(max-width:640px){.legacy-history-panel .panel-head{align-items:flex-start;display:grid}.legacy-record-grid{grid-template-columns:1fr}.legacy-record-grid .legacy-notes{grid-column:auto}}
.lookup-loading{padding:13px;color:var(--muted)}.customer-match.legacy-match{background:#f5f9ff}.customer-match.legacy-match:hover{background:#eaf2ff}.history-row span small{display:block;margin-top:3px;color:var(--muted)}.history-more{padding:10px;text-align:center;color:var(--muted);font-weight:700;font-size:.78rem}
.contact-phone{color:#126342;text-decoration:none}.contact-phone:hover{text-decoration:underline}
.technician-cash-panel{margin-bottom:16px}.technician-cash-head{display:flex;align-items:end;justify-content:space-between;gap:16px}.technician-cash-head h2{margin:0 0 5px}.technician-cash-head p{margin:0;color:var(--muted)}.technician-cash-head label{font-weight:700;font-size:.82rem;min-width:240px}.technician-cash-head select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:9px;padding:10px;background:white}.technician-cash-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.technician-cash-stats article{border:1px solid var(--line);border-radius:12px;padding:16px;background:#f7f9fc}.technician-cash-stats small,.technician-cash-stats strong{display:block}.technician-cash-stats small{color:var(--muted)}.technician-cash-stats strong{font-size:1.45rem;margin-top:5px}.cash-due-card{background:#fff3f3!important;border-color:#f2c4c8!important}.cash-due-card strong{color:#b4232f}.tech-cash-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.tech-cash-list{border-top:1px solid var(--line)}.tech-cash-row{display:grid;grid-template-columns:90px 1fr auto;gap:12px;padding:12px 2px;border-bottom:1px solid var(--line);align-items:center}.tech-cash-row small{color:var(--muted);display:block;margin-top:3px}.tech-cash-row strong:last-child{font-size:1rem}.technician-cash-panel.field-view #cashTechSelect{pointer-events:none;background:#eef2f6}@media(max-width:760px){.technician-cash-head{align-items:stretch;display:grid}.technician-cash-head label{min-width:0}.technician-cash-stats{grid-template-columns:1fr}.tech-cash-status-row{align-items:stretch;display:grid}.tech-cash-row{grid-template-columns:68px 1fr auto}}
.cash-period-panel{padding:18px 20px;margin-bottom:16px}.cash-period-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.cash-period-head h2{margin:0 0 4px}.cash-period-head p{margin:0;color:var(--muted);font-weight:700}.cash-period-presets{display:flex;gap:7px;flex-wrap:wrap}.cash-period-presets button{border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:9px;padding:9px 13px;font-weight:800;cursor:pointer}.cash-period-presets button.active{background:var(--blue);border-color:var(--blue);color:#fff}.cash-date-range{display:none;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}.cash-date-range.show{display:grid}.cash-date-range label{font-weight:700;font-size:.82rem}.cash-date-range input{display:block;width:100%;margin-top:5px;border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff}@media(max-width:760px){.cash-period-head{align-items:stretch;display:grid}.cash-period-presets{display:grid;grid-template-columns:repeat(2,1fr)}.cash-period-presets button:last-child{grid-column:1/-1}.cash-date-range{grid-template-columns:1fr}.cash-date-range .primary{width:100%}}
.jobs-collections-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:16px}.collection-summary-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 15px;box-shadow:var(--shadow)}.collection-summary-card small,.collection-summary-card strong{display:block}.collection-summary-card small{color:var(--muted);margin-bottom:4px}.collection-summary-card strong{font-size:1.2rem;color:#126342}.collection-summary-card.total{background:#eaf6f0;border-color:#b9dfcd}.job-received{color:#126342;font-size:1rem}.job-not-paid{color:var(--muted)}.mobile-job-payment{display:flex;justify-content:space-between;align-items:center;background:#eef8f3;border-radius:8px;padding:8px 10px;color:#126342!important}
.payment-history-panel{grid-column:1/-1;background:#eef8f3;border:1px solid #b9dfcd;border-radius:12px;padding:15px}.payment-history-panel h3{margin:0 0 10px}.payment-history-list>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid #cfe6db}.payment-history-list>div:first-child{border-top:0}.payment-history-list span strong,.payment-history-list span small{display:block}.payment-history-list span small{color:var(--muted);margin-top:3px}.payment-history-list>p{color:var(--muted)}.payment-history-total{display:flex;align-items:center;justify-content:space-between;border-top:2px solid #aed5c3;padding-top:11px;margin-top:7px}.payment-history-total strong{font-size:1.2rem;color:#126342}.payment-method-note{color:#126342!important;margin-top:5px!important;line-height:1.4}
.cash-expense-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.cash-expense-columns h2{margin:0 0 5px}.cash-expense-columns>section>p{color:var(--muted);margin:0 0 14px}.expense-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.expense-form label{font-weight:700;font-size:.8rem}.expense-form input,.expense-form select{display:block;width:100%;margin-top:5px;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff}.expense-form .full{grid-column:1/-1}.expense-list{margin-top:14px;border-top:1px solid var(--line)}.expense-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.expense-row small{display:block;color:var(--muted);margin-top:3px}.expense-row>strong{color:#b4232f}.expense-total{display:flex;justify-content:space-between;padding-top:11px;font-weight:900}.expense-total strong{color:#b4232f}@media(max-width:900px){.cash-expense-columns{grid-template-columns:1fr}}@media(max-width:600px){.expense-form{grid-template-columns:1fr}.expense-form .full{grid-column:auto}}
.part-payment-total{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#eef8f3;border:1px solid #b9dfcd;border-radius:10px;padding:11px}.part-payment-total span,.part-payment-total strong{display:block}.part-payment-total span{color:var(--muted);font-size:.78rem}.part-payment-total strong{color:#126342;margin-top:3px;font-size:1rem}.part-payment-total span:last-child strong{color:#b4232f}.part-payment-summary{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#f4f7fa;border-radius:8px;padding:8px}.part-payment-summary small{margin:0!important}.part-payment-summary strong{display:block;margin-top:2px}.part-payment-summary small:last-child strong{color:#b4232f}@media(max-width:600px){.part-payment-total{grid-template-columns:1fr}}
.parts-alert.filter-link{cursor:pointer;outline-offset:3px}.parts-alert.filter-link:hover,.parts-alert.filter-link:focus{box-shadow:0 0 0 3px rgba(180,35,47,.12)}
.warranty-alert{display:none;margin-bottom:16px;padding:15px 17px;border:1px solid #f1aeb5;border-radius:12px;background:#fff0f1;color:#a61f2b;justify-content:space-between;gap:14px;align-items:center}.warranty-alert.show{display:flex}.warranty-alert strong,.warranty-alert span{display:block}.warranty-alert span{font-size:.84rem;margin-top:3px}.warranty-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.warranty-stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px}.warranty-stat small{color:var(--muted);font-weight:800}.warranty-stat strong{display:block;font-size:1.55rem;margin-top:5px}.warranty-list{display:grid;gap:12px}.warranty-card{background:#fff;border:1px solid var(--line);border-left:5px solid var(--orange);border-radius:13px;padding:17px;box-shadow:var(--shadow);display:grid;grid-template-columns:1.25fr 1fr auto;gap:18px;align-items:center}.warranty-card.overdue{border-left-color:var(--red)}.warranty-card.ready{border-left-color:var(--green)}.warranty-card h3{margin:5px 0}.warranty-card p,.warranty-card small{color:var(--muted);margin:3px 0}.warranty-progress{display:grid;gap:7px}.warranty-progress-bar{height:8px;background:#e8edf3;border-radius:8px;overflow:hidden}.warranty-progress-bar i{display:block;height:100%;background:var(--blue)}.warranty-owner{font-weight:800;color:#38516e}.warranty-panel{grid-column:1/-1;background:#f5f9ff;border:1px solid #cfe0f6;border-radius:12px;padding:17px}.warranty-panel h3{margin:0 0 5px}.warranty-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.warranty-form label{font-weight:700;font-size:.8rem}.warranty-form input,.warranty-form select,.warranty-form textarea{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid #cbd8e7;border-radius:8px;background:#fff}.warranty-form .wide{grid-column:1/-1}.warranty-checks{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.warranty-check{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px;font-weight:700}.warranty-check input{display:inline;width:auto;margin:0 7px 0 0}.warranty-photo-preview{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.warranty-photo-preview img{width:86px;height:66px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}@media(max-width:760px){.warranty-stats{grid-template-columns:1fr 1fr}.warranty-card{grid-template-columns:1fr}.warranty-form,.warranty-checks{grid-template-columns:1fr}.warranty-form .wide{grid-column:auto}.warranty-alert{align-items:flex-start;flex-direction:column}}
.sidebar{position:sticky;top:72px;height:calc(100vh - 72px);min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.sidebar nav{flex:none}.side-note{flex:none;margin-top:14px}.nav-item{min-height:46px}@media(max-height:850px) and (min-width:761px){.sidebar{padding-top:12px;padding-bottom:12px}.sidebar nav{gap:2px}.nav-item{min-height:42px;padding:10px 12px}.side-note{padding:11px}}@media(max-width:760px){.sidebar{position:fixed;top:64px;height:auto}}
.part-warranty-badge{margin-top:7px;width:max-content}.toolbar #partsWarrantyFilter{border-color:#ef9da5;color:#a61f2b;font-weight:700;background:#fff7f7}
.calendar-filterbar{display:flex;align-items:center;gap:14px;margin-bottom:14px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px 14px}.calendar-filterbar label{font-weight:800;display:flex;align-items:center;gap:8px}.calendar-filterbar select{border:1px solid #cbd8e7;border-radius:8px;padding:9px 11px;min-width:270px;background:#fff}.calendar-filterbar>div{flex:1;color:var(--muted);font-size:.85rem}.calendar-filterbar>span{font-size:.76rem;color:var(--muted);white-space:nowrap}.calendar-filterbar i{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--green)}.calendar-filterbar i.busy{background:var(--red)}.day-head{position:relative}.day-capacity{position:absolute;right:10px;bottom:11px;background:#e7f5ee;color:#16714f;border-radius:14px;padding:4px 8px;font-size:.7rem!important;font-weight:900}.day-capacity.near{background:#fff1d9;color:#a95f00}.day-capacity.full{background:#fde7e9;color:#b4232f}.quick-move-appointment{width:100%;border:1px solid #bdd3ef;background:#edf5ff;color:#1762c4;border-radius:7px;padding:6px;margin:-3px 0 8px;font-size:.68rem;font-weight:800}.quick-move-appointment:hover{background:#dfeeff}.calendar-filter-empty{display:block;color:#8795a6;padding:4px}.appointment[hidden]{display:none!important}@media(max-width:760px){.calendar-filterbar{align-items:stretch;display:grid}.calendar-filterbar label{display:grid}.calendar-filterbar select{min-width:0;width:100%}.calendar-filterbar>span{white-space:normal}}
.appointment-draggable{cursor:grab;touch-action:pan-y;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.appointment-draggable:active{cursor:grabbing}.appointment-dragging{opacity:.48;transform:scale(.97);box-shadow:none!important}.calendar-drop-enabled{transition:background-color .15s ease,box-shadow .15s ease}.calendar-drop-target{background:#dcecff!important;box-shadow:inset 0 0 0 3px #2374e1}.calendar-drop-target .day-jobs::after{content:'Αφήστε εδώ το ραντεβού';display:block;border:2px dashed #2374e1;border-radius:9px;padding:12px 7px;text-align:center;color:#175fb9;background:#f2f7ff;font-size:.75rem;font-weight:900}
.calendar-toolbar .calendar-week-drag-target{background:#176be0!important;color:#fff!important;box-shadow:0 0 0 4px #cfe2ff}.calendar-toolbar .calendar-week-drag-target::before{content:'Αλλαγή εβδομάδας · ';font-size:.72rem;font-weight:900}@media(max-width:760px){.calendar-toolbar .calendar-week-drag-target::before{content:''}}
.job-received-date strong,.job-received-date small{display:block}.job-received-date strong{color:#173f6d;white-space:nowrap}.mobile-job-received{display:grid;grid-template-columns:1fr auto;gap:3px 12px;background:#edf5ff;border-radius:8px;padding:9px 10px}.mobile-job-received span{color:var(--muted);font-size:.78rem}.mobile-job-received strong{color:#173f6d}.mobile-job-received small{grid-column:2;color:var(--muted);font-size:.72rem}.job-received-detail strong,.job-received-detail small{display:block}.job-received-detail small:last-child{margin-top:4px}
.daily-routes{border-top:1px solid var(--line);background:#f5f9ff;padding:11px;display:grid;gap:7px}.daily-routes-title{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#24466e}.daily-routes-title small{color:var(--muted);font-size:.7rem}.daily-route-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;text-decoration:none;background:var(--blue);color:#fff;border-radius:9px;padding:10px 11px;box-shadow:0 4px 12px #1c6de826}.daily-route-btn:hover{background:#145fc9}.daily-route-btn small{color:#dceaff;font-size:.72rem;text-align:right}.daily-route-btn strong{font-size:.79rem}@media(max-width:760px){.daily-route-btn{min-height:48px}}
.schedule-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:16px;box-shadow:var(--shadow)}.schedule-day-tabs{display:flex;gap:6px;background:#edf2f8;border-radius:10px;padding:4px}.schedule-day-btn{border:0;background:transparent;color:#48617d;border-radius:8px;padding:10px 16px;font-weight:800}.schedule-day-btn.active{background:var(--blue);color:#fff;box-shadow:0 4px 12px #1c6de82b}.schedule-selected-date{text-align:right}.schedule-selected-date strong,.schedule-selected-date span{display:block}.schedule-selected-date span{color:var(--muted);font-size:.82rem;margin-top:3px}.schedule-empty{color:#16714f;background:#e8f6ef;border:1px solid #c4e7d6;border-radius:9px;padding:12px;margin:0;font-weight:700}@media(max-width:760px){.schedule-toolbar{align-items:stretch;display:grid}.schedule-day-tabs{display:grid;grid-template-columns:1fr 1fr}.schedule-day-btn{padding:10px 8px}.schedule-selected-date{text-align:left}}
.schedule-time-editor{display:grid;grid-template-columns:1fr auto;gap:7px;align-items:end;margin-top:10px;padding-top:9px;border-top:1px solid var(--line)}.schedule-time-editor label{font-size:.68rem;font-weight:800;color:#52667d}.schedule-time-editor input{display:block;width:100%;margin-top:4px;border:1px solid #b9cce3;border-radius:7px;padding:7px 8px;background:#fff;color:var(--navy);font:inherit}.schedule-time-editor button{border:0;border-radius:7px;background:#e1edff;color:#145da9;padding:8px 9px;font-size:.68rem;font-weight:900;cursor:pointer}.schedule-time-editor button:hover{background:#cfe1fb}@media(max-width:760px){.schedule-time-editor{grid-template-columns:1fr}.schedule-time-editor button{min-height:40px}}
.daily-import-dialog{width:min(1040px,94vw);max-height:88vh}.daily-import-body{padding:18px;display:grid;gap:15px}.import-notice{display:grid;gap:4px;background:#edf5ff;border:1px solid #bdd3ef;border-radius:11px;padding:14px;color:#24466e}.import-notice span{font-size:.84rem;color:#5f7185;line-height:1.45}.import-file{font-weight:800;border:2px dashed #b9cce3;border-radius:11px;padding:15px;background:#fafcff}.import-file input{display:block;margin-top:9px}.import-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.import-summary span{background:#f3f6fa;border:1px solid var(--line);border-radius:9px;padding:10px;font-size:.8rem}.import-summary strong{display:block;font-size:1.25rem;margin-top:3px}.import-preview-wrap{max-height:420px;overflow:auto;border:1px solid var(--line);border-radius:10px}.import-preview{min-width:820px}.import-preview tr.import-ready td:first-child{color:#16714f;font-weight:800}.import-preview tr.import-duplicate{background:#fff7e8}.import-preview tr.import-error{background:#fff0f1}.import-preview tr.import-duplicate td:first-child{color:#a95f00;font-weight:800}.import-preview tr.import-error td:first-child{color:#b4232f;font-weight:800}@media(max-width:760px){#schedule .page-head{align-items:stretch;flex-direction:column}#openDailyImport{width:100%}.import-summary{grid-template-columns:1fr}.daily-import-dialog{width:96vw}}
.calendar-head-actions{display:flex;align-items:center;gap:10px}@media(max-width:760px){#calendar .page-head{align-items:stretch;flex-direction:column}.calendar-head-actions{display:grid;grid-template-columns:1fr}.calendar-head-actions button{width:100%}}
.warranty-badge{display:inline-flex;width:max-content;align-items:center;border-radius:8px;background:#fde7e9;color:#b4232f;border:1px solid #f3b5bc;padding:6px 9px;margin:7px 0 3px;font-size:.72rem;font-weight:900}.warranty-badge.compact{float:right;margin:0 0 5px 7px;padding:4px 7px;font-size:.64rem}.preview-warranty{display:block!important;color:#b4232f!important;font-weight:900;margin-top:4px!important}
.reschedule-office-alert{width:100%;margin:0 0 14px;padding:14px 16px;border:1px solid #f0b44c;border-radius:14px;background:#fff8e8;color:#7a4b00;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer}.reschedule-office-alert span{display:grid;gap:3px}.reschedule-office-alert strong{font-size:1rem}.reschedule-office-alert small{font-size:.88rem;color:#8a641f}.reschedule-office-alert b{padding:8px 12px;border-radius:9px;background:#fff;color:#8a5700;white-space:nowrap}@media(max-width:640px){.reschedule-office-alert{align-items:flex-start;gap:10px}.reschedule-office-alert b{padding:6px 9px}}
#toast{left:50%;top:24px;bottom:auto;right:auto;width:max-content;max-width:min(560px,calc(100vw - 32px));border:2px solid #fff;border-radius:12px;padding:15px 19px;box-shadow:0 12px 36px #07182b66;transform:translate(-50%,-12px);z-index:9999;font-weight:800;text-align:center;line-height:1.35}#toast.show{transform:translate(-50%,0)}@media(max-width:640px){#toast{top:12px;width:calc(100vw - 24px);padding:14px 16px;font-size:.92rem}}

.partial-payment-panel{background:#fff3d9;border:1px solid #e4b95f;border-radius:10px;padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.partial-payment-panel[hidden]{display:none}.partial-payment-panel p{grid-column:1/-1;margin:0;color:#75500d;font-size:.78rem;line-height:1.45}.partial-payment-panel .partial-payment-choice{display:flex;align-items:center;gap:8px}.partial-payment-panel .partial-payment-choice:first-child{grid-column:1/-1;font-size:.9rem}.partial-payment-panel .partial-payment-choice input{width:auto;margin:0}.partial-balance-alert{grid-column:1/-1;background:#fff0d7;border:1px solid #e4b95f;border-left:5px solid #d97706;border-radius:10px;padding:12px;color:#7a4b00}.partial-balance-alert strong,.partial-balance-alert small{display:block}.partial-balance-alert small{margin-top:5px}.partial-balance-row{background:#fffaf0}@media(max-width:640px){.partial-payment-panel{grid-template-columns:1fr}.partial-payment-panel p,.partial-payment-panel .partial-payment-choice:first-child{grid-column:1}}

.transport-workflow-panel{grid-column:1/-1;background:#eef6ff;border:1px solid #bcd6f3;border-radius:12px;padding:15px}.transport-workflow-head,.transport-cash-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.transport-workflow-head span{font-size:.68rem;font-weight:900;letter-spacing:.1em;color:#3970ae}.transport-workflow-head h3,.transport-cash-title h2{margin:3px 0}.transport-workflow-head>strong{font-size:.78rem;color:#24466e}.transport-steps{display:grid;gap:8px;margin-top:12px}.transport-step{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;background:#fff;border:1px solid #d6e4f2;border-radius:10px;padding:11px}.transport-step>b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e7eff8;color:#2d5b87}.transport-step.done>b{background:#dff3e9;color:#126342}.transport-step h4,.transport-step p{margin:0}.transport-step p,.transport-step small{font-size:.76rem;color:#627488;margin-top:4px}.transport-delivery-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #c9ddef}.transport-delivery-form label{font-size:.75rem;font-weight:800}.transport-delivery-form input,.transport-delivery-form select{display:block;width:100%;margin-top:5px;border:1px solid #b9cce3;border-radius:8px;padding:9px;background:#fff}.transport-delivery-form .wide{grid-column:1/-1}.transport-confirm{display:flex;align-items:center;gap:8px}.transport-confirm input{width:auto;margin:0}.transport-cash-title>div:not(:first-child){background:#f3f7fb;border:1px solid var(--line);border-radius:9px;padding:10px 13px}.transport-cash-title small,.transport-cash-title strong{display:block}.transport-cash-title small{color:var(--muted);margin-bottom:4px}.transport-cash-due strong{color:#b4232f}.transport-cash-panel>.primary{margin-top:12px}@media(max-width:640px){.transport-workflow-head,.transport-cash-title{align-items:flex-start;display:grid}.transport-step{grid-template-columns:auto 1fr}.transport-step button{grid-column:1/-1}.transport-delivery-form{grid-template-columns:1fr}.transport-delivery-form .wide{grid-column:1}.transport-cash-title>div:not(:first-child){width:100%}}

.technician-price-panel{grid-column:1/-1;background:#fff8e9;border:1px solid #efcf87;border-radius:12px;padding:15px}.technician-price-panel span{font-size:.68rem;font-weight:900;letter-spacing:.1em;color:#9a6200}.technician-price-panel h3{margin:3px 0}.technician-price-panel>div>p{margin:4px 0 13px;color:#745b29;font-size:.78rem}.technician-price-form{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.technician-price-form label{font-size:.75rem;font-weight:800}.technician-price-form input{display:block;width:100%;margin-top:5px;border:1px solid #d7c28f;border-radius:8px;padding:9px;background:#fff}.technician-price-form .wide{grid-column:1/-1}.technician-price-total{background:#fff;border:1px solid #d7c28f;border-radius:8px;padding:8px 10px}.technician-price-total small,.technician-price-total strong{display:block}.technician-price-total small{color:#745b29;margin-bottom:3px}.technician-price-total strong{font-size:1.1rem;color:#126342}.price-audit-panel{grid-column:1/-1;background:#f7f9fc;border:1px solid var(--line);border-radius:11px;padding:14px}.price-audit-panel h3{margin:0 0 9px}.price-audit-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #e3eaf1}.price-audit-row:first-of-type{border-top:0}.price-audit-row span:last-child{text-align:right}.price-audit-row strong,.price-audit-row small{display:block}.price-audit-row small{color:var(--muted);margin-top:3px}.cost-editor .price-change-reason{grid-column:1/-2}@media(max-width:640px){.technician-price-form{grid-template-columns:1fr}.technician-price-form .wide{grid-column:1}.price-audit-row{align-items:flex-start}.cost-editor .price-change-reason{grid-column:1/-1}}
.warranty-billing-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:12px 14px;border:1px solid #9ad8bf;border-radius:12px;background:#eaf8f2;color:#075f43}.warranty-billing-notice strong{font-size:15px}.warranty-billing-notice span{font-size:14px;font-weight:700}.warranty-payment-disabled{opacity:.65}.warranty-payment-disabled input{background:#eef2f6;cursor:not-allowed}@media(max-width:640px){.warranty-billing-notice{align-items:flex-start;flex-direction:column;gap:4px}}
.identity-capture{border:1px solid #a8c8f1;border-radius:12px;background:#f3f8ff;padding:13px;display:grid;gap:11px}.identity-capture-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.identity-capture-head strong{display:block;color:#123b6d;font-size:.95rem}.identity-capture-head small{display:block;margin-top:4px;color:#58708d;line-height:1.35}.identity-capture-head>span{white-space:nowrap;background:#dcecff;color:#0b5fc6;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:800}.identity-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.identity-photo{border:1px dashed #7ca9df;border-radius:10px;background:#fff;padding:10px;display:grid!important;gap:7px;cursor:pointer}.identity-photo b{font-size:.82rem;color:#173b64}.identity-photo input{position:absolute;width:1px!important;height:1px;opacity:0;pointer-events:none}.identity-photo>span{display:block;text-align:center;background:#e7f1ff;color:#075fca;border-radius:8px;padding:9px;font-weight:800}.identity-photo img{width:100%;height:92px;object-fit:cover;border-radius:8px;border:1px solid #d4e0ee}.identity-photo small{color:#60748c;font-size:.73rem}.identity-status{margin:0;background:#fff;border-radius:8px;padding:9px;color:#38516e;font-size:.8rem}.identity-status strong{color:#08764d}.identity-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.identity-actions button{min-height:42px}@media(max-width:600px){.identity-photo-grid,.identity-actions{grid-template-columns:1fr}.identity-capture-head{flex-direction:column}.identity-photo img{height:120px}}
.external-handoff{grid-column:1/-1;background:#fff7df;border:1px solid #e7c66f;border-left:5px solid #d28a00;border-radius:12px;padding:15px;display:grid;gap:12px}.external-handoff-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.external-handoff-head span{font-size:.68rem;font-weight:900;letter-spacing:.09em;color:#9a6200}.external-handoff-head h3{margin:4px 0 0}.external-handoff-head>strong{font-size:.78rem;color:#6e4b09;text-align:right}.external-handoff-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.external-handoff-grid>div{background:#fff;border:1px solid #ead9aa;border-radius:9px;padding:10px}.external-handoff-grid small{display:block;color:#795813;font-weight:800;margin-bottom:5px}.external-handoff-grid p{margin:0;white-space:pre-wrap;line-height:1.45;color:#26384c}.external-handoff-important{grid-column:1/-1;border-left:4px solid #d28a00!important}.external-handoff-important p{font-weight:800}.external-handoff>button{justify-self:start}@media(max-width:640px){.external-handoff-head{display:grid}.external-handoff-head>strong{text-align:left}.external-handoff-grid{grid-template-columns:1fr}.external-handoff-important{grid-column:1}.external-handoff>button{width:100%}}
.list-warranty-badge{display:inline-flex;margin-left:6px;vertical-align:middle}
.backup-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px;border:1px solid #9bc8b3;background:#eef9f4}.backup-panel[hidden]{display:none}.backup-panel-copy{max-width:720px}.backup-panel-copy>span{font-size:.7rem;font-weight:900;letter-spacing:.1em;color:#13704d}.backup-panel-copy h2{margin:4px 0 6px}.backup-panel-copy p{margin:0 0 8px;color:var(--muted);line-height:1.5}.backup-panel-copy small{color:#126342;font-weight:800}.backup-panel-actions{display:grid;gap:9px;min-width:280px}.backup-import-label{display:flex;align-items:center;justify-content:center;cursor:pointer;text-align:center}.backup-import-label input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}@media(max-width:760px){.backup-panel{align-items:stretch;display:grid}.backup-panel-actions{min-width:0}.backup-panel-actions>*{width:100%;min-height:46px}}
.self-transport-choice{grid-column:1/-1;border:1px solid #9fc4ee;border-radius:11px;background:#f2f7ff;padding:11px;display:grid;gap:8px}.self-transport-choice[hidden]{display:none}.self-transport-choice legend{padding:0 6px;color:#173f6d;font-weight:900}.self-transport-choice label{display:flex!important;align-items:flex-start;gap:9px;background:#fff;border:1px solid #cfdef0;border-radius:9px;padding:10px;cursor:pointer}.self-transport-choice input{width:auto!important;margin:3px 0 0!important}.self-transport-choice span,.self-transport-choice strong,.self-transport-choice small{display:block}.self-transport-choice small{margin-top:3px;color:var(--muted);line-height:1.35}
.workshop-part-order{border:1px solid #efc467;border-left:5px solid #d88900;border-radius:10px;background:#fff7e3;padding:11px;display:grid;gap:10px}.workshop-part-order[hidden]{display:none}.workshop-part-order strong,.workshop-part-order small{display:block}.workshop-part-order small{margin-top:3px;color:#765816}.workshop-part-order label{font-size:.78rem;font-weight:800}.workshop-part-order input{display:block;width:100%;margin-top:5px;border:1px solid #dcb75f;border-radius:8px;padding:9px;background:#fff}
.workshop-board-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.workshop-stat{background:#fff;border:1px solid var(--line);border-left:5px solid #7b8fa6;border-radius:14px;padding:16px;box-shadow:var(--shadow)}.workshop-stat small,.workshop-stat strong{display:block}.workshop-stat small{color:var(--muted);font-weight:800}.workshop-stat strong{font-size:1.8rem;margin-top:5px}.workshop-stat.diagnosis{border-left-color:#2374e1}.workshop-stat.part{border-left-color:#d88900}.workshop-stat.ready{border-left-color:#16855e}.workshop-board-list{display:grid;gap:12px}.workshop-board-card{display:grid;grid-template-columns:minmax(260px,1fr) minmax(360px,1.3fr) auto;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-left:6px solid #7b8fa6;border-radius:14px;padding:17px 18px;box-shadow:var(--shadow)}.workshop-board-card.diagnosis{border-left-color:#2374e1}.workshop-board-card.part{border-left-color:#d88900}.workshop-board-card.approval{border-left-color:#a668c9}.workshop-board-card.repair{border-left-color:#2872b8}.workshop-board-card.ready{border-left-color:#16855e}.workshop-card-main h3,.workshop-card-main p{margin:5px 0}.workshop-card-main small{color:var(--muted)}.workshop-stage-badge{display:inline-flex;border-radius:999px;background:#edf2f8;color:#38516e;padding:5px 9px;font-size:.72rem;font-weight:900}.workshop-board-card.part .workshop-stage-badge{background:#fff2d8;color:#955900}.workshop-board-card.ready .workshop-stage-badge{background:#e4f5ed;color:#08704d}.workshop-card-details{display:grid;grid-template-columns:1fr 1fr;gap:10px}.workshop-card-details span{background:#f4f7fa;border-radius:9px;padding:9px 11px}.workshop-card-details span.wide{grid-column:1/-1}.workshop-card-details small,.workshop-card-details strong{display:block}.workshop-card-details small{color:var(--muted);margin-bottom:4px}.workshop-board-empty{display:grid;gap:4px;text-align:center;background:#fff;border:1px dashed #b9c7d7;border-radius:14px;padding:32px;color:#52677f}.workshop-board-toolbar .search{flex:1}@media(max-width:1050px){.workshop-board-stats{grid-template-columns:repeat(2,1fr)}.workshop-board-card{grid-template-columns:1fr 1fr}.workshop-board-card>button{grid-column:1/-1;width:100%}}@media(max-width:640px){.workshop-board-stats{grid-template-columns:1fr 1fr;gap:9px}.workshop-stat{padding:12px}.workshop-board-card{grid-template-columns:1fr;gap:12px;padding:14px}.workshop-card-details{grid-template-columns:1fr}.workshop-card-details span.wide{grid-column:1}.workshop-board-card>button{grid-column:1}.workshop-board-toolbar{display:grid}.workshop-board-toolbar select{width:100%}}
.danger,.danger-outline{border:0;border-radius:10px;padding:12px 17px;font-weight:800}.danger{background:#bd2633;color:#fff}.danger-outline{background:#fff0f1;color:#a91e2b;border:1px solid #ef9ba3;margin-right:auto}.part-cancellation-dialog{width:min(620px,calc(100% - 28px))}.part-cancellation-dialog form{padding:23px}.cancellation-warning{margin:16px 0 0;background:#fff3da;border:1px solid #efc46d;border-radius:10px;padding:12px;color:#76520d;line-height:1.45}.cancellation-amount{background:#f4f7fa;border-radius:10px;padding:12px;color:#40566e}.cancellation-amount strong{color:#bd2633}.cancelled-part{background:#fff8f8!important;opacity:.88}.cancellation-reason{color:#a91e2b!important;font-weight:800}.pill.Ακυρώθηκε{background:#fde7e9;color:#b4232f}@media(max-width:640px){#partForm .dialog-actions{display:grid;grid-template-columns:1fr 1fr}#partForm .dialog-actions .danger-outline{grid-column:1/-1;margin:0}.part-cancellation-dialog .dialog-actions{display:grid;grid-template-columns:1fr}.part-cancellation-dialog .dialog-actions button{width:100%}}
.job-assignment-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr minmax(210px,.7fr) auto;align-items:end;gap:12px;background:#edf5ff;border:1px solid #abcbed;border-left:5px solid #2374e1;border-radius:12px;padding:14px}.job-assignment-panel>div span,.job-assignment-panel>div strong,.job-assignment-panel>div small{display:block}.job-assignment-panel>div span{font-size:.68rem;font-weight:900;letter-spacing:.1em;color:#2d68aa}.job-assignment-panel>div strong{margin:4px 0;font-size:1rem}.job-assignment-panel>div small{color:#58708d;line-height:1.35}.job-assignment-panel label{font-size:.76rem;font-weight:800}.job-assignment-panel select{display:block;width:100%;margin-top:5px;border:1px solid #a9c6e6;border-radius:8px;padding:10px;background:#fff}@media(max-width:720px){.job-assignment-panel{grid-template-columns:1fr}.job-assignment-panel button{width:100%}}
.payment-office-alert{width:100%;margin:0 0 14px;padding:14px 16px;border:1px solid #8dcbb2;border-radius:14px;background:#edf9f4;color:#075f43;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer}.payment-office-alert span{display:grid;gap:3px}.payment-office-alert strong{font-size:1rem}.payment-office-alert small{font-size:.88rem;color:#39735e}.payment-office-alert b{padding:8px 12px;border-radius:9px;background:#fff;color:#08704d;white-space:nowrap}.payment-request-panel{margin:14px 0;background:#eef6ff;border:1px solid #a9cbed;border-left:5px solid #2374e1;border-radius:12px;padding:15px}.payment-request-panel.has-request,.payment-request-panel.office-request{background:#edf9f4;border-color:#9bcfb9;border-left-color:#16835d}.payment-request-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.payment-request-head span{font-size:.68rem;font-weight:900;letter-spacing:.1em;color:#2d68aa}.payment-request-head h3{margin:4px 0}.payment-request-head>strong{background:#fff;border:1px solid #b9d9ca;border-radius:999px;padding:6px 9px;color:#126342;font-size:.75rem;text-align:right}.payment-request-panel>p{margin:4px 0 12px;color:#58708d;line-height:1.45}.payment-request-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.payment-request-form label{font-size:.76rem;font-weight:800}.payment-request-form input,.payment-request-form select{display:block;width:100%;margin-top:5px;border:1px solid #a9c6e6;border-radius:8px;padding:10px;background:#fff}.payment-request-form .wide,.payment-request-summary .wide{grid-column:1/-1}.cash-confirm{display:flex;align-items:center;gap:8px;background:#fff7df;border:1px solid #e7c66f;border-radius:9px;padding:10px}.cash-confirm[hidden]{display:none}.cash-confirm input{width:auto;margin:0}.payment-request-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.payment-request-summary>div{background:#fff;border:1px solid #d8e5df;border-radius:9px;padding:10px}.payment-request-summary small,.payment-request-summary strong{display:block}.payment-request-summary small{color:#687b8d;margin-bottom:4px}.payment-request-note{margin:10px 0 0!important;font-weight:700;color:#39735e!important}.payment-request-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.payment-request-actions .danger-outline{margin-left:auto}@media(max-width:640px){.payment-office-alert,.payment-request-head{align-items:flex-start;gap:9px}.payment-request-form,.payment-request-summary{grid-template-columns:1fr}.payment-request-form .wide,.payment-request-summary .wide{grid-column:1}.payment-request-actions{display:grid}.payment-request-actions button{width:100%}.payment-request-actions .danger-outline{margin:0}.payment-request-head{display:grid}}
.part-installation-panel{margin:16px 0;padding:18px;border:1px solid #8fc9b0;border-radius:16px;background:#eefaf5}.part-installation-panel.completed{border-color:#65b38e;background:#e8f7f0}.part-installation-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.part-installation-head span{display:block;color:#08734b;font-size:12px;font-weight:800;letter-spacing:.08em}.part-installation-head h3{margin:4px 0}.part-installation-head>strong{color:#08734b;white-space:nowrap}.part-installation-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.part-installation-totals div{padding:10px;border:1px solid #cae8db;border-radius:10px;background:#fff}.part-installation-totals small,.part-installation-totals b{display:block}.part-installation-totals b{margin-top:4px;font-size:18px}.part-installation-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.part-installation-form label{display:grid;gap:5px;font-weight:700}.part-installation-form input,.part-installation-form select{width:100%}.part-installation-form .wide,.installation-confirm{grid-column:1/-1}.installation-confirm{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.installation-confirm input{width:auto}.installation-success{margin:8px 0 0;color:#08734b;font-weight:700}.installation-warning{margin:8px 0 0;color:#8a5a00;font-weight:700}@media(max-width:640px){.part-installation-panel{padding:14px}.part-installation-head{display:block}.part-installation-head>strong{display:block;margin-top:8px}.part-installation-totals{grid-template-columns:1fr}.part-installation-form{grid-template-columns:1fr}.part-installation-form .wide,.installation-confirm{grid-column:auto}}
