
:root{
--navy:#0F1F3D;--navy-mid:#1a2f50;--navy-light:#e8ecf4;--navy-xlight:#f2f5fa;
--orange:#E8630A;--orange-dk:#c8520a;--orange-lt:#FDF0E8;--orange-mid:#f5a36b;
--bg:#F8F7F4;--surface:#FFFFFF;--border:#E2DED6;--border-mid:#C8C2B8;
--text:#1A1714;--muted:#6B6560;--hint:#A09B96;
--green:#1D6F42;--green-bg:#EAF4EE;--green-mid:#b8dfc9;
--red:#A32D2D;--red-bg:#FCEBEB;--red-mid:#f0c0c0;
--yellow:#7A5500;--yellow-bg:#FFF8E6;--yellow-mid:#f5d980;
--blue:#1a4f8a;--blue-bg:#EBF2FF;--blue-mid:#b3ccee;
--teal:#0e6e6e;--teal-bg:#e6f4f4;
--radius:8px;--radius-lg:12px;
--shadow:0 1px 3px rgba(15,31,61,0.08);--shadow-md:0 4px 16px
rgba(15,31,61,0.12);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Georgia','Times New
Roman',serif;background:var(--bg);color:var(--text);min-height:100vh;}
.app{max-width:900px;margin:0 auto;padding:1rem 1rem 5rem;}
/* NAV */
.top-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:0.875rem;border-bottom:1px
solid var(--border);}
.logo-wrap{display:flex;align-items:center;gap:10px;}
.logo-mark{width:32px;height:32px;background:var(--navy);border-radius:6px;display:flex;align-items:center;justify-content:center;color:white;font-size:12px;font-weight:bold;font-family:'Helvetica
Neue',sans-serif;}
.logo-text{font-size:14px;color:var(--navy);font-family:'Helvetica
Neue',sans-serif;font-weight:600;}
.logo-sub{font-size:11px;color:var(--hint);font-family:'Helvetica
Neue',sans-serif;}
.weg-selector{display:flex;align-items:center;gap:8px;}
.weg-selector select{padding:5px 10px;border:1px solid
var(--border);border-radius:var(--radius);font-size:12px;font-family:'Helvetica
Neue',sans-serif;color:var(--navy);background:var(--surface);cursor:pointer;margin-bottom:0;width:auto;}
/* TABS */
.tab-bar{display:flex;gap:2px;margin-bottom:1.1rem;background:var(--surface);border:1px
solid
var(--border);border-radius:var(--radius-lg);padding:4px;overflow-x:auto;scrollbar-width:none;}
.tab-bar::-webkit-scrollbar{display:none;}
.tab-btn{flex-shrink:0;padding:6px
10px;border-radius:7px;font-size:11px;font-family:'Helvetica
Neue',sans-serif;font-weight:500;cursor:pointer;border:none;background:transparent;color:var(--muted);transition:all
.15s;white-space:nowrap;}
.tab-btn.active{background:var(--navy);color:white;}
.tab-btn:hover:not(.active){color:var(--navy);background:var(--bg);}
.tab-btn
.bdg{display:inline-block;background:var(--red);color:white;font-size:9px;font-weight:700;padding:1px
5px;border-radius:10px;margin-left:3px;vertical-align:middle;}
.screen{display:none;}.screen.active{display:block;}
h1{font-size:20px;font-weight:normal;color:var(--navy);margin-bottom:0.15rem;}
h2{font-size:16px;font-weight:normal;color:var(--navy);margin-bottom:0.75rem;}
h3{font-size:13px;font-weight:600;color:var(--text);margin-bottom:0.4rem;font-family:'Helvetica
Neue',sans-serif;}
p.sub{font-size:12.5px;color:var(--muted);font-family:'Helvetica
Neue',sans-serif;}
.card{background:var(--surface);border:1px solid
var(--border);border-radius:var(--radius-lg);padding:0.9rem
1.05rem;box-shadow:var(--shadow);margin-bottom:9px;}
.card-sm{padding:0.65rem 0.85rem;}
.acc-orange{border-top:3px solid var(--orange);}
.acc-navy{border-top:3px solid var(--navy);}
.acc-green{border-top:3px solid var(--green);}
.acc-red{border-top:3px solid var(--red);}
.acc-yellow{border-top:3px solid var(--yellow);}
.acc-teal{border-top:3px solid var(--teal);}
label{display:block;font-size:11.5px;color:var(--muted);margin-bottom:3px;font-family:'Helvetica
Neue',sans-serif;}
input,textarea,select{width:100%;padding:8px 11px;border:1px solid
var(--border);border-radius:var(--radius);font-size:13px;color:var(--text);background:var(--surface);outline:none;transition:border-color
.15s;font-family:'Helvetica Neue',sans-serif;margin-bottom:9px;}
input:focus,textarea:focus,select:focus{border-color:var(--navy);}
textarea{min-height:60px;resize:vertical;}
input[type=number]{text-align:right;}
input[type=checkbox]{width:auto;margin:0 5px 0
0;accent-color:var(--navy);}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:9px;}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;}
.row4{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:9px;}
@media(max-width:540px){.row2,.row3,.row4{grid-template-columns:1fr;}}
.btn{display:inline-flex;align-items:center;gap:5px;padding:7px
14px;border-radius:var(--radius);font-size:12px;font-family:'Helvetica
Neue',sans-serif;font-weight:500;cursor:pointer;transition:all
.15s;border:1px solid transparent;}
.btn-primary{background:var(--navy);color:white;}.btn-primary:hover{background:var(--navy-mid);}
.btn-orange{background:var(--orange);color:white;}.btn-orange:hover{background:var(--orange-dk);}
.btn-green{background:var(--green);color:white;}.btn-green:hover{opacity:.9;}
.btn-teal{background:var(--teal);color:white;}.btn-teal:hover{opacity:.9;}
.btn-outline{background:transparent;color:var(--navy);border-color:var(--border-mid);}.btn-outline:hover{border-color:var(--navy);background:var(--navy-light);}
.btn-danger{background:transparent;color:var(--red);border-color:var(--red-mid);}.btn-danger:hover{background:var(--red-bg);}
.btn-sm{padding:4px 10px;font-size:11px;}.btn-xs{padding:2px
7px;font-size:10.5px;}
.btn-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px;}
.back-btn{background:none;border:none;cursor:pointer;color:var(--muted);font-size:12px;padding:0
0 10px;display:flex;align-items:center;gap:4px;font-family:'Helvetica
Neue',sans-serif;}.back-btn:hover{color:var(--navy);}
.tag{display:inline-flex;align-items:center;font-size:10.5px;padding:2px
7px;border-radius:4px;font-family:'Helvetica
Neue',sans-serif;font-weight:600;margin-right:3px;}
.tag-green{background:var(--green-bg);color:var(--green);border:1px
solid var(--green-mid);}
.tag-red{background:var(--red-bg);color:var(--red);border:1px solid
var(--red-mid);}
.tag-yellow{background:var(--yellow-bg);color:var(--yellow);border:1px
solid var(--yellow-mid);}
.tag-navy{background:var(--navy-light);color:var(--navy);border:1px
solid #b8c8e0;}
.tag-orange{background:var(--orange-lt);color:var(--orange-dk);border:1px
solid var(--orange-mid);}
.tag-teal{background:var(--teal-bg);color:var(--teal);border:1px solid
#9ed0d0;}
.tag-gray{background:var(--bg);color:var(--muted);border:1px solid
var(--border);}
.alert{padding:8px
12px;border-radius:var(--radius);font-size:12.5px;font-family:'Helvetica
Neue',sans-serif;margin-bottom:9px;line-height:1.5;}
.alert-ok{background:var(--green-bg);color:var(--green);border:1px solid
var(--green-mid);}
.alert-err{background:var(--red-bg);color:var(--red);border:1px solid
var(--red-mid);}
.alert-warn{background:var(--yellow-bg);color:var(--yellow);border:1px
solid var(--yellow-mid);}
.alert-info{background:var(--navy-light);color:var(--navy);border:1px
solid #b8c8e0;}
.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:7px;margin-bottom:12px;}
.kpi-card{background:var(--surface);border:1px solid
var(--border);border-radius:var(--radius);padding:9px
10px;text-align:center;}
.kpi-val{font-size:17px;font-weight:700;color:var(--navy);font-family:'Helvetica
Neue',sans-serif;line-height:1.2;}
.kpi-lbl{font-size:9.5px;color:var(--muted);font-family:'Helvetica
Neue',sans-serif;margin-top:2px;}
/* TABELLEN */
.t{width:100%;border-collapse:collapse;font-family:'Helvetica
Neue',sans-serif;font-size:12px;}
.t
th{font-size:9.5px;text-transform:uppercase;font-weight:700;color:var(--muted);padding:5px
8px;border-bottom:2px solid var(--border);text-align:left;}
.t td{padding:6px 8px;border-bottom:1px solid
var(--border);vertical-align:middle;}
.t tr:last-child td{border-bottom:none;}
.t tr:hover td{background:var(--navy-xlight);}
.t .sum-row
td{font-weight:700;background:var(--navy-light);border-top:2px solid
var(--navy);}
.t .soll{color:var(--red);font-weight:600;}
.t .haben{color:var(--green);font-weight:600;}
.t .right{text-align:right;}
.t .mono{font-family:'Courier New',monospace;font-size:11px;}
.t input{margin-bottom:0;padding:4px 7px;font-size:11.5px;}
.t select{margin-bottom:0;padding:4px 7px;font-size:11.5px;}
/* EIGENTÜMER */
.et-row{border:1px solid
var(--border);border-radius:var(--radius-lg);padding:11px
14px;margin-bottom:7px;background:var(--surface);cursor:pointer;transition:border-color
.15s,box-shadow .15s;display:flex;align-items:center;gap:11px;}
.et-row:hover{border-color:var(--orange);box-shadow:0 2px 8px
rgba(232,99,10,.1);}
.et-av{width:36px;height:36px;border-radius:50%;background:var(--navy);color:white;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;font-family:'Helvetica
Neue',sans-serif;flex-shrink:0;}
.et-info{flex:1;min-width:0;}
.et-name{font-size:13.5px;font-weight:600;color:var(--navy);font-family:'Helvetica
Neue',sans-serif;}
.et-meta{font-size:10.5px;color:var(--muted);font-family:'Helvetica
Neue',sans-serif;margin-top:2px;}
.saldo-box{text-align:right;flex-shrink:0;}
.saldo-val{font-size:15px;font-weight:700;font-family:'Helvetica
Neue',sans-serif;}
.saldo-lbl{font-size:9.5px;color:var(--muted);font-family:'Helvetica
Neue',sans-serif;}
/* WIRTSCHAFTSPLAN */
.wp-pos-row{display:flex;gap:8px;align-items:flex-start;padding:8px
0;border-bottom:1px solid var(--border);}
.wp-pos-row:last-child{border-bottom:none;}
/* RÜCKLAGEN */
.rl-bar{height:12px;background:var(--border);border-radius:6px;overflow:hidden;margin-top:6px;}
.rl-fill{height:100%;background:var(--teal);border-radius:6px;transition:width
.5s;}
/* IMPORT */
.imp-drop{border:2px dashed
var(--border-mid);border-radius:var(--radius-lg);padding:1.5rem;text-align:center;cursor:pointer;transition:border-color
.15s;font-family:'Helvetica Neue',sans-serif;}
.imp-drop:hover,.imp-drop.drag-over{border-color:var(--orange);background:var(--orange-lt);}
.imp-row{display:flex;align-items:center;gap:8px;padding:7px
0;border-bottom:1px solid var(--border);font-family:'Helvetica
Neue',sans-serif;font-size:11.5px;}
.imp-row:last-child{border-bottom:none;}
.imp-match{color:var(--green);font-size:10.5px;font-weight:600;}
.imp-nomatch{color:var(--red);font-size:10.5px;}
.sep{border-top:1px solid var(--border);margin:10px 0;}
.empty-state{text-align:center;padding:1.75rem;color:var(--muted);font-family:'Helvetica
Neue',sans-serif;}
.empty-icon{font-size:32px;margin-bottom:8px;}.empty-text{font-size:12.5px;}
/* KONTOAUSZUG LAUFENDER SALDO */
.saldo-pos{color:var(--blue);}.saldo-neg{color:var(--red);font-weight:700;}.saldo-null{color:var(--green);}
.ih-card-hoch{border-left:4px solid
var(--red);}.ih-card-mittel{border-left:4px solid
var(--yellow);}.ih-card-niedrig{border-left:4px solid var(--green);}
/* BANKKONTEN */
.bank-card{border:1px solid
var(--border);border-radius:var(--radius-lg);padding:12px
15px;margin-bottom:8px;background:var(--surface);}
.bank-card.giro{border-top:3px solid var(--navy);}
.bank-card.rl{border-top:3px solid var(--teal);}
.bank-stand{font-size:22px;font-weight:700;font-family:'Helvetica
Neue',sans-serif;}
.bank-iban{font-size:11px;color:var(--muted);font-family:'Courier
New',monospace;margin-top:2px;}
/* MAHN AMPEL */
.mahn-0{color:var(--green);}.mahn-1{color:var(--yellow);}.mahn-2{color:var(--orange-dk);}.mahn-3{color:var(--red);font-weight:700;}
