/* EDLY V3 – visual refresh, developed without third-party fonts/scripts.
   This stylesheet intentionally leaves existing forms/templates intact. */
:root {
  --navy:#101b3c; --navy-deep:#0b1430; --navy-light:#1c2d55;
  --primary:#315cb8; --primary-dark:#244e9f; --primary-soft:#edf3ff;
  --page:#f3f5f9; --ink:#19243b; --muted:#6a7790;
  --line:#dde4ef; --line-soft:#ebf0f6;
  --shadow:0 7px 30px rgba(18,34,68,.045),0 2px 6px rgba(18,34,68,.035);
  font-size:14px;
}
body {background:var(--page)}
.sidebar {background:linear-gradient(175deg,#172957 0%,#0d1837 72%,#0a1430 100%);padding-top:26px;}
.sidebar::after {content:'';position:absolute;pointer-events:none;top:0;right:0;left:0;height:3px;background:linear-gradient(90deg,#9bc8ff,#4772d6,#244b99);}
.side-navigation a {border-radius:9px;min-height:39px;}
.side-navigation a.active:not(.report-link) {background:rgba(112,155,248,.19);}
.side-navigation a.report-link {background:#345cbd;box-shadow:none;}
.nav-section-label {margin-top:17px}
.layout {grid-template-columns:276px minmax(0,1fr)}
.top {background:rgba(255,255,255,.96);border-bottom:1px solid #e8edf5;}
.top .tag {letter-spacing:.12em}
.content {width:100%;max-width:1540px;margin:0 auto;}
h1,h2,h3 {letter-spacing:-.02em}
.card {border-radius:16px;border:1px solid #e3e9f2;box-shadow:var(--shadow);}
.button,button {border-radius:9px}
input:not([type="checkbox"]):not([type="radio"]),select,textarea {border-radius:9px;}
.tablewrap {border-radius:9px;border:1px solid #e7ecf5;}
thead {background:#f4f7fb}
th {color:#61728f;text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:790}
td {vertical-align:middle}
tr:hover td {background:#fafcff}
.v3-banner {display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(120deg,#12274f 0%,#1f4584 63%,#3159a7 100%);border-radius:18px;padding:31px 36px;color:#fff;box-shadow:0 12px 30px #203a681d;margin-bottom:20px;position:relative;overflow:hidden;}
.v3-banner::after {content:'';position:absolute;right:-70px;bottom:-145px;width:360px;height:360px;border:1px solid #ffffff20;border-radius:100%;pointer-events:none;box-shadow:0 0 0 60px #ffffff06,0 0 0 120px #ffffff03;}
.v3-banner > * {position:relative;z-index:1}
.v3-banner .mini {color:#a3c2f7;letter-spacing:.13em}
.v3-banner h2 {margin:8px 0 7px;font-size:28px;font-weight:790;}
.v3-banner p {margin:0;max-width:680px;color:#d4e2fa;font-size:13px;line-height:1.65}
.v3-banner .button {background:#fff;color:#183b7e;white-space:nowrap;padding:12px 18px;border:none;}
.v3-stat-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 19px;}
.v3-stat-grid.compact {grid-template-columns:repeat(2,minmax(0,1fr));max-width:650px}
.v3-stat {display:flex;flex-direction:column;gap:6px;background:#fff;padding:18px 20px;border:1px solid var(--line);border-radius:15px;text-decoration:none;box-shadow:var(--shadow);min-width:0;color:inherit;}
a.v3-stat:hover {text-decoration:none;border-color:#bccdf1;transform:translateY(-1px)}
.v3-stat span {font-size:12px;font-weight:660;color:#63738d}
.v3-stat strong {font-size:29px;font-weight:800;line-height:1.3;letter-spacing:-.06em;color:#162957}
.v3-stat strong small {font-size:13px;letter-spacing:0;font-weight:600}
.v3-stat small {font-size:11px;color:#8a96aa}
.v3-metric-small {font-size:22px!important;letter-spacing:-.03em!important}
.v3-panelgrid {display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:18px;margin:16px 0;}
.v3-linkgrid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px;}
.v3-linkgrid a {display:grid;gap:6px;min-width:0;position:relative;border:1px solid #e5ecf7;background:linear-gradient(115deg,#f8faff,#fff);border-radius:12px;padding:17px 17px 16px;color:#233e73;text-decoration:none;}
.v3-linkgrid a:hover {border-color:#b9cbef;background:#eff4ff;text-decoration:none;}
.v3-linkgrid span {font-size:23px;color:#3a65be;font-weight:800;}
.v3-linkgrid b {font-size:13px;color:#1e3156}
.v3-linkgrid small {font-size:11px;color:#71819a}
.v3-note {background:#f3f7ff;border:1px solid #dbe7fa;border-left:3px solid #668fe4;border-radius:11px;padding:15px 17px;margin:17px 0;color:#37547f;line-height:1.7;font-size:12px}
.v3-pagehead {display:flex;justify-content:space-between;align-items:center;gap:18px;margin:4px 0 20px;padding:4px 0 2px;}
.v3-pagehead h2 {font-size:22px;margin:6px 0 4px;color:#172e58;}
.v3-pagehead p {margin:0;font-size:12.5px}
.v3-pagehead .mini {color:#5d78a5;font-weight:760;letter-spacing:.12em}
.v3-filterrow {display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:16px;}
.v3-filterrow label {flex:1 1 190px;max-width:310px;min-width:150px}
.v3-filterrow button,.v3-filterrow .button {flex:0 0 auto;min-height:38px}
.v3-checklabel {display:flex;align-items:center;gap:10px;padding:12px;flex:0 0 auto!important}
.v3-formgrid {grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;}
.v3-formgrid label {min-width:0}
.v3-actions {display:flex;justify-content:flex-start}
.v3-actions button {width:auto;}
.v3-logline {border-bottom:1px solid #e8edf4;padding:13px 1px;display:block;line-height:1.5}
.v3-logline:last-child {border-bottom:0}
.v3-logline strong,.v3-logline b {display:block;color:#1d2f51;font-size:13px;margin-bottom:5px}
.v3-logline p {margin:7px 0;color:#5c6c84;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}
.v3-logline small {display:block;font-size:11px;color:#8090a4}
.v3-loghead {display:flex;justify-content:space-between;gap:16px;align-items:center;}
.v3-timeline {max-width:1050px}
.v3-attachmentlist {display:grid;gap:8px;margin:15px 0}
.v3-attachmentlist a {padding:11px;border:1px solid #e5ecf8;border-radius:9px;overflow-wrap:anywhere}
.v3-deflist {display:grid;gap:0;margin:10px 0 20px}
.v3-deflist>div {display:grid;grid-template-columns:minmax(115px,1fr) 2fr;padding:10px 0;border-bottom:1px solid #edf1f6;gap:10px}
.v3-deflist dt {color:#8190a6;font-size:12px}
.v3-deflist dd {margin:0;font-weight:650;font-size:12.5px;overflow-wrap:anywhere}
.v3-inlineform {min-width:210px;max-width:350px}
.v3-inlineform button {width:auto}
.v3-two {display:grid;grid-template-columns:1fr 1fr;gap:10px}
.v3-countertiles {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:6px 0 20px}
.v3-countertiles>div {border:1px solid #e5eaf4;background:#f9faff;border-radius:10px;padding:13px;min-width:0}
.v3-countertiles small {display:block;color:#7485a0;font-size:11px}
.v3-countertiles strong {font-size:23px;color:#1d3f80}
.v3-monthpicker {display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0 20px}
.v3-monthpicker strong {font-size:20px;font-variant-numeric:tabular-nums}
@media (max-width:1200px) {.v3-stat-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .v3-panelgrid {grid-template-columns:1fr}}
@media (max-width:960px) {.layout {grid-template-columns:minmax(0,1fr)} }
@media (max-width:650px) {.v3-stat-grid,.v3-stat-grid.compact,.v3-linkgrid {grid-template-columns:1fr 1fr;} .v3-banner {padding:23px;align-items:start;flex-direction:column}.v3-banner h2{font-size:23px}.v3-formgrid,.v3-two{grid-template-columns:1fr}.v3-pagehead{align-items:start;flex-direction:column}.v3-countertiles{grid-template-columns:1fr 1fr}.v3-deflist>div {grid-template-columns:1fr;gap:3px}}
@media print {.v3-linkgrid,.v3-banner .button {display:none!important}.v3-banner {color:#000;background:#fff;box-shadow:none;border:1px solid #ddd}.v3-banner p {color:#000}}
.v3-steps {position:relative;display:grid;gap:18px;margin:20px 0;}
.v3-step {display:flex;gap:16px;padding:18px;background:#fafcff;border:1px solid #e5eaf4;border-radius:13px;}
.v3-step-number {flex:0 0 34px;height:34px;display:grid;place-items:center;font-weight:850;border-radius:11px;color:#2c5ab7;background:#e6efff;}
.v3-step-content {min-width:0;flex:1;}
.v3-step-content h3 {font-size:15px;margin:0 0 10px;}
.v3-step-content details {margin-top:14px;}
.v3-photo-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:14px 0;}
.v3-photo-grid .photo {display:flex;flex-direction:column;gap:5px;overflow:hidden;border:1px solid #e1e7f2;border-radius:10px;padding:6px;max-width:250px;}
.v3-photo-grid img {width:100%;height:116px;object-fit:cover;border-radius:6px;}
.v3-photo-grid .photo span {font-size:10px;color:#566784;overflow-wrap:anywhere;}


/* V3.1 desktop workspace refinement */
#main-content {background:linear-gradient(180deg,#f4f6fa 0,#eef2f7 100%)}
.content {padding:24px 28px 36px}
.top {padding:18px 28px}
.top-end {display:flex;align-items:center;gap:14px}
.card {background:#fff}
.desktop-toolbar {padding:14px 16px;margin:0 0 18px}
.desktop-filterrow {margin:0}
.desktop-form label {max-width:none}
.desktop-workspace {display:grid;grid-template-columns:minmax(0,1.65fr) 360px;gap:18px;align-items:start}
.workspace-main,.workspace-side {min-width:0}
.workspace-side {display:grid;gap:18px}
.touch-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.touch-card {border:1px solid #e4eaf4;border-radius:14px;background:linear-gradient(180deg,#fff,#fbfcff);padding:14px;box-shadow:0 1px 0 rgba(16,27,60,.03)}
.touch-card-head {display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:10px}
.desktop-inline-form {gap:10px}
.desktop-inline-form button {width:auto}
.desktop-subactions {display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 18px}
.desktop-subactions .button {min-height:38px}
.desktop-linkgrid {grid-template-columns:1fr}
.digest-preview {white-space:pre-wrap;background:#0f1732;color:#dbe7ff;border-radius:12px;padding:14px;max-height:540px;overflow:auto;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}
.qr-image {width:min(100%,360px);height:auto;border:1px solid #e2e8f4;border-radius:18px;padding:20px;background:#fff;box-shadow:var(--shadow)}
@media (max-width:1180px){.desktop-workspace{grid-template-columns:1fr}.workspace-side{grid-template-columns:1fr 1fr}.touch-grid{grid-template-columns:1fr}}
@media (max-width:760px){.content{padding:18px 14px 30px}.top{padding:14px 16px}.workspace-side{grid-template-columns:1fr}.touch-grid{grid-template-columns:1fr}.desktop-subactions{margin-top:12px}}

/* Desktop-Leitstand, Version 3.1.1 */
.desk-header{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 23px;margin-bottom:18px;background:#fff;border:1px solid #dde5f0;border-radius:13px;box-shadow:var(--shadow)}
.desk-header h2{font-size:24px;margin:5px 0}.desk-header h2 small{font-weight:500;color:#64748b;font-size:15px;letter-spacing:0}.desk-header p{margin:0;color:#66748d}
.desk-actions{display:flex;gap:9px;flex-wrap:wrap}.desk-actions .button{white-space:nowrap}
.desk-link-list{display:grid;gap:4px}.desk-link-list a{display:block;padding:11px 13px;background:#f7f9fc;border:1px solid #e9edf5;border-radius:8px;color:#22436f;text-decoration:none}.desk-link-list a:hover{background:#edf3ff}
.workshop-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;margin-bottom:20px}
.board-lane{background:#e9edf5;border:1px solid #dce3ef;border-radius:13px;padding:11px;min-height:240px}
.board-lane-head{display:flex;justify-content:space-between;align-items:center;padding:7px 7px 14px}.board-lane-head h2{margin:4px 0 0;font-size:15px}.board-count{background:#fff;padding:5px 11px;border-radius:14px;color:#24427a;font-weight:750}
.board-task{display:grid;gap:8px;padding:15px;margin-bottom:10px;background:#fff;border:1px solid #dfe6f1;border-radius:11px;text-decoration:none;color:#1b2942;box-shadow:0 2px 6px #1d31590d}.board-task:hover{border-color:#acc1ec;text-decoration:none}.board-task b{line-height:1.4}.board-task small{color:#72829a}.board-task-top{display:flex;justify-content:space-between;gap:8px}
.board-empty{padding:25px 12px;color:#697c96;font-size:12px;text-align:center}
.label-print-sheet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.aircraft-qr-label{min-height:315px;border:1px dashed #aabbd3;background:#fff;border-radius:8px;padding:14px;display:flex;align-items:center;flex-direction:column;gap:6px;text-align:center;break-inside:avoid}
.label-title{display:flex;gap:10px;align-items:center;align-self:stretch;text-align:left}.label-title img{width:47px;height:47px;object-fit:contain}.label-title strong{display:block;font-size:12px}.label-title small{display:block;font-size:10px;color:#657892}
.label-qr{width:154px;height:154px;object-fit:contain;margin:8px auto}.label-registration{font-size:21px;color:#132d58}.aircraft-qr-label>small{font-size:11px;color:#5a6880;max-width:100%;overflow-wrap:anywhere}
@media(max-width:1180px){.workshop-board{grid-template-columns:1fr 1fr}.label-print-sheet{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.desk-header{align-items:flex-start;flex-direction:column}.workshop-board,.label-print-sheet{grid-template-columns:1fr}.desk-actions a{min-height:42px;display:flex;align-items:center}}
@media print {
  @page{size:A4;margin:10mm}
  .no-print,.sidebar,.top,footer,.nav-scrim,.sidebar-bottom{display:none!important}
  .layout{display:block!important} #main-content,.content{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important}
  .label-print-sheet{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:3mm!important}
  .aircraft-qr-label{width:auto;min-height:73mm;padding:3mm;border:1px solid #a0a9bb;box-shadow:none!important;border-radius:0}
  .label-qr{width:36mm;height:36mm;margin:1mm auto}
  .label-registration{font-size:15pt}
  .label-title img{width:12mm;height:12mm}
}

/* V3.1.2 account management + installable desktop/tablet PWA */
.account-details{min-width:min(520px,calc(100vw - 100px));padding:8px 0}
.account-details summary{cursor:pointer;font-weight:700;color:#274982}
.account-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:16px;background:#f5f8fd;border:1px solid #e3e9f3;border-radius:12px;margin-top:12px}
.account-edit-grid form{min-width:0}
.account-edit-grid input,.account-edit-grid select{max-width:100%}
.password-form{max-width:600px}
.pwa-install{border:1px solid #c7d5ec;background:#eef4ff;color:#1d4689;padding:8px 12px;font-weight:700;border-radius:8px;cursor:pointer}
@media(max-width:800px){.account-edit-grid{grid-template-columns:1fr}.account-details{min-width:0}.pwa-install{min-height:44px}}
