:root{--bg:#08111f;--panel:#111c2e;--panel2:#16243a;--line:#2b3d55;--text:#e8eef7;--muted:#9fb0c5;--accent:#f59e0b;--blue:#1d4ed8;--green:#15803d;--red:#b91c1c}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(135deg,#06101e,#0c1728 55%,#15243a);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}.layout{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{background:#07101d;border-right:1px solid var(--line);padding:18px 14px;position:sticky;top:0;height:100vh}.logo{padding:10px 10px 20px}.logo b{font-size:20px}.logo small{display:block;color:var(--muted);margin-top:5px}.nav a{display:block;padding:11px 12px;border-radius:10px;margin:4px 0;color:#dbe7f5}.nav a:hover{background:#14243a}.main{padding:24px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:12px}.topbar h1{font-size:26px;margin:0}.user{color:var(--muted)}.card{background:rgba(17,28,46,.95);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px;box-shadow:0 12px 30px rgba(0,0,0,.18)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.metric strong{display:block;font-size:32px;margin-top:8px}.muted{color:var(--muted)}.badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:bold}.open{background:#7f1d1d}.done{background:#166534}.acil{background:#991b1b}.yuksek{background:#9a3412}.normal{background:#334155}input,textarea,select{width:100%;background:#0b1627;color:white;border:1px solid #40516a;border-radius:10px;padding:10px 11px;font-size:14px}textarea{min-height:100px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.field label{display:block;font-weight:bold;font-size:13px;margin-bottom:6px;color:#d8e2ef}.span-2{grid-column:span 2}.span-4{grid-column:1/-1}.btn{display:inline-block;border:0;border-radius:10px;padding:10px 13px;font-weight:bold;cursor:pointer;background:#334155;color:white}.btn.primary{background:var(--accent);color:#111827}.btn.success{background:var(--green)}.btn.danger{background:var(--red)}.btn.blue{background:var(--blue)}.actions{display:flex;gap:8px;flex-wrap:wrap}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 9px;border-bottom:1px solid var(--line);vertical-align:top}th{color:#f7d48a;font-size:13px}.flash{padding:11px 13px;border-radius:10px;margin-bottom:12px}.flash.success{background:#064e3b}.flash.danger{background:#7f1d1d}.login-wrap{max-width:480px;margin:8vh auto;padding:18px}.login-title{text-align:center;margin-bottom:22px}.checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 18px}.check{display:flex;gap:8px;align-items:flex-start;font-size:13px}.check input{width:auto;margin-top:2px}.wo{border-left:5px solid #b45309}.wo.ACIL{border-left-color:#ef4444}.wo.YUKSEK{border-left-color:#f97316}.wo.DONE{opacity:.72;border-left-color:#22c55e}.iframe-card{padding:0;overflow:hidden}.fuelbar{padding:12px 16px;background:#0a1424;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:center}.fuel-frame{width:100%;height:calc(100vh - 150px);border:0;background:white}.search-help{font-size:12px;color:var(--muted);margin-top:5px}.perm-card{border:1px solid var(--line);padding:14px;border-radius:12px;margin-top:10px}.nowrap{white-space:nowrap}@media(max-width:900px){.layout{display:block}.sidebar{height:auto;position:relative}.nav{display:flex;flex-wrap:wrap}.nav a{margin:2px}.main{padding:14px}.grid,.form-grid{grid-template-columns:1fr}.span-2,.span-4{grid-column:auto}.checkbox-grid{grid-template-columns:1fr}.fuel-frame{height:75vh}}
.section-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}.section-head h2{margin-top:0}.date-link{color:#fde68a;text-decoration:underline;font-weight:800}.report-job{border-left:5px solid #1d4ed8}.report-job-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.report-job-head h3{margin:5px 0 0;font-size:22px}.job-no{font-size:12px;color:var(--muted);font-weight:bold}.report-meta{display:flex;gap:16px;flex-wrap:wrap;padding:10px 0 14px;color:#c9d6e6;font-size:13px}.job-description{white-space:pre-wrap;line-height:1.6;background:#0b1627;border:1px solid var(--line);border-radius:12px;padding:15px;font-size:16px}.motor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.motor-card{margin-bottom:0}.motor-card.inactive{opacity:.62}.motor-card.overdue-card{border-color:#7f1d1d}.motor-card.due-card{border-color:#9a3412}.motor-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.motor-card-head h2{margin:0 0 7px}.motor-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.motor-stats>div{background:#0b1627;border:1px solid var(--line);border-radius:12px;padding:12px}.motor-stats span{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}.motor-stats strong{font-size:25px}.motor-stats small{margin-left:4px;color:var(--muted)}.hour-entry{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;background:#0a1424;border:1px solid var(--line);border-radius:13px;padding:12px}.hour-entry label{font-size:12px;font-weight:bold;color:#d8e2ef}.number-entry{display:flex;align-items:center;gap:8px}.number-entry input{font-size:25px;font-weight:800;text-align:center;padding:9px}.number-entry span{color:var(--muted);font-weight:bold}.motor-note{font-size:12px;margin-top:10px}.manage-box{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.manage-box summary{cursor:pointer;color:#f7d48a;font-weight:bold}.compact-date{min-width:180px}.danger-text{color:#fca5a5!important}.warn-text{color:#fdba74!important}.motor-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.motor-mini{display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);background:#0b1627;border-radius:12px;padding:12px}.motor-mini span{font-size:12px;color:var(--muted)}.motor-mini strong{font-size:13px}.motor-mini.overdue{border-color:#991b1b}.motor-mini.due-soon{border-color:#9a3412}.detail-stats{max-width:800px}.dashboard-metrics small{display:block;margin-top:6px}@media(max-width:900px){.motor-grid,.motor-mini-grid,.motor-stats{grid-template-columns:1fr}.hour-entry{grid-template-columns:1fr}.section-head .compact-date{width:100%}.report-meta{display:grid;gap:8px}}
.single-number{grid-template-columns:1fr}.bulk-save{align-self:flex-end;min-height:40px}.section-head>.actions{align-items:flex-end}.single-number .number-entry input{font-size:30px;min-height:58px}

/* V4 - Excel benzeri motor tablosu */
.motor-setup-card>summary{cursor:pointer;color:#f7d48a;font-size:16px;list-style:none}.motor-setup-card>summary::-webkit-details-marker{display:none}.setup-inner{padding-top:16px}.motor-sheet-card{overflow:hidden}.motor-sheet-wrap{border:1px solid var(--line);border-radius:12px;margin-top:10px}.motor-sheet{min-width:920px;background:#0b1627}.motor-sheet thead th{background:#214f78;color:#fff;font-size:14px;white-space:nowrap;border-right:1px solid rgba(255,255,255,.14)}.motor-sheet td{border-right:1px solid var(--line);vertical-align:middle}.motor-sheet tbody tr:nth-child(even){background:rgba(255,255,255,.018)}.motor-name-cell{min-width:185px}.motor-name-cell a{color:#fff}.motor-name-cell small{display:block;color:#fca5a5;margin-top:4px}.number-cell{text-align:center;font-size:18px;font-weight:800;white-space:nowrap}.maintenance-cell{background:rgba(29,78,216,.15);color:#93c5fd}.current-cell{background:rgba(255,255,255,.035)}.remaining-cell{font-size:20px}.status-cell{min-width:135px;text-align:center}.sheet-status{display:inline-block;border-radius:8px;padding:7px 10px;font-weight:800;white-space:nowrap}.sheet-status.normal-status{background:#d8ead0;color:#163b17}.sheet-status.maintenance{background:#f4d7c9;color:#7f1d1d}.sheet-status.passive{background:#334155;color:#e2e8f0}.motor-row-overdue{background:rgba(185,28,28,.08)!important}.motor-row-inactive{opacity:.58}.daily-hour-cell{min-width:145px}.daily-hour-input{min-width:112px;text-align:center;font-size:21px;font-weight:900;background:#fff;color:#111827;border:2px solid #64748b;padding:8px 6px}.daily-hour-input:focus{border-color:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.18)}.motor-actions-cell{min-width:150px}.small-btn{padding:7px 9px;font-size:12px}.motor-sheet-note{margin-top:12px;color:#cbd5e1;font-size:13px;line-height:1.5}.motor-date-actions{align-items:flex-end}.motor-settings-dialog{width:min(900px,94vw);border:1px solid var(--line);border-radius:16px;background:#111c2e;color:var(--text);padding:18px;box-shadow:0 25px 80px rgba(0,0,0,.55)}.motor-settings-dialog::backdrop{background:rgba(0,0,0,.72)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.dialog-head h2{margin:0}

/* V4 - arama sonucunda gün gün açık mekanik işler */
.report-open-toggle{margin-top:15px;display:flex;gap:10px;align-items:flex-start;border:1px solid #40516a;border-radius:12px;background:#0b1627;padding:12px;cursor:pointer}.report-open-toggle input{width:auto;margin-top:3px;transform:scale(1.25)}.report-open-toggle span{display:flex;flex-direction:column;gap:3px}.report-open-toggle small{color:var(--muted);font-weight:normal}.search-results-detail{border-color:#315780}.report-search-day{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:14px 0;background:#0a1424}.report-search-day-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;background:#10223a;border-bottom:1px solid var(--line)}.report-search-date{font-size:19px}.report-search-day-head .small-btn{margin-left:auto}.report-search-jobs{padding:10px}.report-search-job{border-left:4px solid #1d4ed8;background:#0b1627;border-radius:10px;padding:12px 13px;margin:8px 0}.report-search-job-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.report-search-description{white-space:pre-wrap;line-height:1.55;font-size:16px;padding:10px 0;color:#f1f5f9}.report-search-meta{font-size:12px;color:var(--muted);border-top:1px solid #263950;padding-top:8px}.report-hour{font-size:12px;color:#fde68a;align-self:center}.search-actions-field{align-self:end}

@media(max-width:900px){.motor-sheet-card{padding:12px}.motor-sheet-wrap{margin-left:-2px;margin-right:-2px}.motor-sheet{min-width:810px}.motor-date-actions{width:100%}.motor-date-actions .compact-date{flex:1;min-width:160px}.motor-date-actions .bulk-save{flex:1}.report-search-day-head .small-btn{margin-left:0}.report-search-job-top{display:block}.report-search-job-top .actions{margin-top:8px}.daily-hour-input{font-size:20px}.dialog-head{align-items:flex-start}}

/* V5 - Son mekanik rapor PNG/PDF dışa aktarma */
.recent-report-actions{align-items:center}.export-note{margin-top:12px;padding:10px 12px;border:1px dashed #40516a;border-radius:10px;background:#0b1627;color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:900px){.recent-report-actions{width:100%}.recent-report-actions .btn{flex:1;text-align:center;min-width:130px}}

/* V6 - günlük / tarih aralığı mekanik rapor PNG-PDF */
.report-export-card{border-color:#365b83}.report-export-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.report-export-box{background:#0b1627;border:1px solid var(--line);border-radius:14px;padding:15px}.report-export-box h3{margin:0 0 6px;color:#f7d48a}.report-export-box p{min-height:38px;line-height:1.45}.range-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.export-buttons{margin-top:12px}.export-buttons .btn{flex:1;text-align:center}.day-report-actions{align-items:center}
@media(max-width:900px){.report-export-grid,.range-date-grid{grid-template-columns:1fr}.report-export-box p{min-height:0}.export-buttons .btn{width:100%}.day-report-actions{width:100%}.day-report-actions .btn,.day-report-actions a{flex:1;text-align:center;min-width:130px}}
