:root{font-family:Arial,Helvetica,sans-serif;color:#203e35;background:#f6f5ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:linear-gradient(110deg,rgba(24,139,80,.17),rgba(255,255,255,.7) 43%,rgba(255,255,255,.7) 59%,rgba(208,55,61,.16));min-height:100vh}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;border-radius:10px;padding:12px 16px;background:#e8eee8;color:#204e3e;font-weight:600}button:disabled{opacity:.5;cursor:wait}button:hover:not(:disabled){filter:brightness(.96)}button:focus-visible,a:focus-visible,input:focus,select:focus{outline:3px solid #79bfa2;outline-offset:2px}.shell{max-width:1220px;padding:0 40px;margin:auto}header{height:105px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #28483720}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit;font-size:23px;font-weight:700;letter-spacing:-.6px}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:6px}.logo{background:#0d6248;color:white;border-radius:15px;width:45px;height:48px;display:grid;place-items:center;font-size:28px;box-shadow:0 4px 10px #07543e22}.subtle{background:#ffffffa8;border:1px solid #ffffff;font-size:12px}main{padding-top:38px}.intro{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:30px;gap:15px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#547367;margin:0 0 14px}h1{font-family:Georgia,serif;font-size:43px;letter-spacing:-1.5px;font-weight:400;line-height:1.07;margin:0 0 16px}h1 em{color:#16734f;font-style:normal}.intro p:last-child{color:#65766d;font-size:13px}.sync{font-size:11px;background:#ffffff80;border:1px solid #ffffff;margin-bottom:8px;font-weight:400}.overview{display:grid;grid-template-columns:1.45fr 1fr;gap:22px;margin-bottom:25px}.balance{color:#fff;background:radial-gradient(ellipse at 100% 0%,#39866a,#0b5941 65%);border-radius:22px;padding:26px 30px;box-shadow:0 12px 30px #0c503518;position:relative;overflow:hidden}.balance-top{display:flex;align-items:center;justify-content:space-between;font-size:14px}.flag{display:flex;width:34px;height:19px;overflow:hidden;border-radius:3px;flex-shrink:0}.flag i{flex:1;background:#15945f}.flag i:nth-child(2){background:#fff}.flag i:nth-child(3){background:#d74650}.balance>strong{display:block;font-size:47px;letter-spacing:-1px;margin:20px 0 10px;font-weight:500;overflow-wrap:anywhere}.balance>span{font-size:11px;color:#d3e8dd}.balance-actions{display:flex;gap:10px;margin-top:24px}.balance-actions button{background:#ffffff19;color:white;border:1px solid #ffffff38;font-size:12px;min-width:116px}.balance-actions button:first-child{background:#fff;color:#165a43}.stats{border:1px solid #fff;border-radius:22px;padding:24px 28px;background:#ffffffbd}.stats>p{font-size:10px;letter-spacing:1px;font-weight:700;margin:2px 0 22px}.stats>p span{float:right;color:#738278;font-weight:400;letter-spacing:0}.stats>div{display:flex;gap:15px;align-items:center;margin:19px 0}.stats>div>span:last-child{font-size:12px;color:#68776e}.stats strong{display:block;font-size:26px;margin-top:6px;font-weight:500;color:#384b41}.round{display:grid;place-items:center;border-radius:12px;width:42px;height:42px;flex-shrink:0;font-size:22px}.green{color:#227b55;background:#e8f2eb}.red{color:#b45450;background:#fbebe7}.green-text{color:#198058!important}.columns{display:grid;grid-template-columns:380px 1fr;align-items:start;gap:24px}.panel{background:#fffdf9;border:1px solid white;border-radius:20px;padding:24px;box-shadow:0 4px 22px #284d3010}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}h2{font-size:18px;letter-spacing:-.4px;margin:0}.count{font-size:10px;color:#879187}.tabs{display:flex;gap:4px;background:#f0f1eb;border-radius:10px;padding:4px;margin-bottom:20px}.tabs button{font-size:11px;flex:1;background:transparent;padding:10px 4px}.tabs .selected{background:white;box-shadow:0 2px 4px #0000000c;color:#146045}fieldset{padding:0;margin:0;border:0;min-width:0}label{display:block;font-size:11px;font-weight:600;margin-bottom:17px}input,select{width:100%;min-width:0;border:1px solid #dfe5dc;background:#fff;border-radius:9px;padding:12px 10px;margin-top:8px;color:#273e32;font-size:12px}.amount-input{display:flex;align-items:center;border:1px solid #dfe5dc;border-radius:10px;background:white;margin-top:8px;padding-left:14px;font-size:23px;font-weight:400}.amount-input input{border:0;margin:0;font-size:26px;padding:14px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.primary{background:#0f6548;color:white;display:flex;justify-content:space-between;width:100%;font-size:12px;padding:15px}.cancel{width:100%;margin-top:8px}.hint{font-size:10px;color:#7a857c;line-height:1.6;margin:16px 0 0}.filters{display:flex;gap:10px;margin-bottom:10px}.filters input{margin:0;flex:1}.filters select{margin:0;width:125px}.entry{display:flex;align-items:center;gap:12px;padding:20px 0;border-bottom:1px solid #eff0e9}.entry:last-child{border:0}.entry-info{flex:1;min-width:0}.entry-info>strong{font-size:13px;display:block;overflow-wrap:anywhere}.entry-info small{font-size:10px;color:#859085;display:block;margin-top:7px}.entry>strong{font-size:14px;white-space:nowrap;font-weight:600}.entry-actions{display:flex;gap:12px;margin-top:8px}.entry-actions button{background:none;padding:0;font-size:10px;color:#7b887e;font-weight:400}.debit{color:#994c45}.empty{text-align:center;padding:48px 20px;color:#7a877c}.empty>span{display:grid;place-items:center;margin:auto;background:#eff3eb;border-radius:50%;width:56px;height:56px;font-size:32px}.empty h3{font-size:16px;color:#415c4d;font-weight:500}.empty p{font-size:12px;line-height:1.8;max-width:280px;margin:auto}.welcome{background:#eaf4e9;border-radius:10px;padding:12px;font-size:12px;line-height:1.6;margin-bottom:15px}.welcome button{display:block;padding:8px 0 0;background:none;font-size:12px}.help{background:#fff;border-radius:16px;padding:22px;margin-top:20px;font-size:14px;line-height:1.7}.message{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#e5f4e9;border:1px solid #a1c9ab;box-shadow:0 6px 25px #0002;color:#124c35;border-radius:12px;padding:14px 24px;font-size:13px;max-width:90vw;z-index:10}.error{background:#fff1ee;color:#9e2929;border-color:#dcaaa0}footer{display:flex;align-items:center;justify-content:center;gap:10px;padding:35px 0 50px;color:#7d8b80;font-size:10px;flex-wrap:wrap}footer .flag{width:22px;height:12px}footer small{width:100%;text-align:center;font-size:10px}@media(max-width:900px){.shell{padding:0 24px}.columns{grid-template-columns:320px 1fr}.panel{padding:19px}.entry{flex-wrap:wrap}.entry>strong{margin-left:54px}.stats{padding:24px 20px}}@media(max-width:680px){.shell{padding:0 18px}header{height:82px}.brand{font-size:20px}.brand small{font-size:7px}.subtle{font-size:10px;max-width:120px;padding:10px}.intro{display:block}main{padding-top:28px}h1{font-size:37px}.sync{margin:8px 0 0}.overview{grid-template-columns:1fr;gap:15px}.balance{padding:25px}.balance>strong{font-size:42px}.stats{display:flex;flex-wrap:wrap;gap:0 20px;padding:20px}.stats>p{width:100%;margin:0 0 10px}.stats>div{flex:1;margin:8px 0;gap:10px}.stats strong{font-size:21px}.columns{grid-template-columns:1fr;gap:20px}.panel{padding:21px}.entry{flex-wrap:nowrap}.entry>strong{margin-left:0;font-size:13px}.entry .round{width:34px;height:34px;font-size:19px}.entry{gap:9px}.message{width:90vw}.filters select{width:108px}}
.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:25px}.auth-card{width:100%;max-width:460px;padding:35px}.auth-brand{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.auth-card h1{font-size:35px}.auth-intro{font-size:13px;line-height:1.7;color:#64776b;margin-bottom:26px}.auth-card h2{margin-bottom:20px}.auth-nav{display:flex;justify-content:space-between;flex-wrap:wrap;margin-top:15px;gap:8px}.auth-nav button{font-size:11px;background:none;padding:8px 0}.password-field{position:relative}.password-field input{padding-right:65px}.password-field button{position:absolute;right:4px;top:13px;font-size:10px;padding:8px;background:none}.auth-error{background:#fff0ee;padding:12px;border-radius:8px;color:#9b332c;font-size:12px;line-height:1.6}.auth-notice{background:#eaf5ec;padding:12px;border-radius:8px;color:#225c38;font-size:12px;line-height:1.6}.account-buttons{display:flex;gap:8px}@media(max-width:680px){.account-buttons{gap:4px}.account-buttons .subtle{font-size:9px;padding:9px 7px;max-width:82px}.auth-card{padding:25px}}

/* Inklapbare boeking en duidelijke acties */
.columns{grid-template-columns:1fr}.form-panel{scroll-margin-top:16px}.booking-heading{margin:0}.booking-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 0;background:transparent;text-align:left;font-size:18px;min-height:44px}.booking-toggle>span:last-child{font-size:27px;font-weight:400}.booking-toggle[aria-expanded="true"]{margin-bottom:20px}[hidden]{display:none!important}.entry-actions{flex-wrap:wrap;gap:8px;margin-top:12px}.entry-actions button{min-height:40px;padding:10px 14px;border-radius:8px;font-size:12px;font-weight:600}.entry-actions .edit-entry{color:#145e40;background:#e7f2e9;border:1px solid #c6dfce}.entry-actions .delete-entry{color:#a23831;background:#fff0ed;border:1px solid #edc8c0}.message{display:flex;gap:14px;align-items:center}.message.success{pointer-events:none}.message button{background:none;color:inherit;font-size:22px;flex-shrink:0;padding:3px 7px}@media(max-width:680px){.entry{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:start}.entry-info{display:contents}.entry-info>strong{grid-column:2;grid-row:1;align-self:center}.entry-info small{grid-column:2 / 4;grid-row:2;margin-top:0}.entry-info .entry-actions{grid-column:2 / 4;grid-row:3;margin-top:3px}.entry>strong{grid-column:3;grid-row:1;align-self:center}.entry-actions button{min-height:44px}}

/* Donkere Italia-uitvoering */
:root{color-scheme:dark;color:#edf5ef;background:#101715}body{background:radial-gradient(ellipse at 0 0,#123d2d80,transparent 55%),radial-gradient(ellipse at 100% 70%,#4d202033,transparent 60%),#101715;color:#edf5ef}header{border-bottom-color:#ffffff1c}.brand{color:#edf5ef}.brand small{color:#a4bbae}.subtle,.sync{background:#202e28;border:1px solid #ffffff16;color:#d7e7dd}.eyebrow{color:#9bbba9}.intro p:last-child{color:#adc0b4}.italia-banner{display:flex;width:min(100%,330px);aspect-ratio:3/2;overflow:hidden;border-radius:13px;border:1px solid #ffffff26;box-shadow:0 12px 35px #0005;margin:18px 0 22px}.italia-banner span{flex:1;background:#009246}.italia-banner span:nth-child(2){background:#fff}.italia-banner span:nth-child(3){background:#ce2b37}.intro>div{flex:1;min-width:0}.stats,.panel{background:#1b2721;border:1px solid #ffffff13;box-shadow:0 4px 22px #0002}.stats>p span,.stats>div>span:last-child{color:#b1c3b7}.stats strong{color:#f1f5ef}.green-text{color:#7adea4!important}.green{color:#8bdfad;background:#253f30}.red{color:#ffaaa2;background:#402c2a}.debit{color:#ffaaa2}.count,.hint,.entry-info small,footer{color:#a6bbae}.tabs{background:#101c16}.tabs button{color:#b8cdbd}.tabs .selected{background:#355742;color:#f3fff6}.amount-input,input,select{background:#121d17;color:#edf5ef;border-color:#435a4c}input::placeholder{color:#91a798}.amount-input input{background:transparent}.primary{background:#26865a}.booking-toggle{color:#edf5ef}.entry{border-bottom-color:#35463a}.entry-actions .edit-entry{background:#284735;color:#a7edc1;border-color:#4b7059}.entry-actions .delete-entry{background:#472c2a;color:#ffbdb6;border-color:#78514c}.welcome{background:#253e2d;color:#dfefe2}.welcome button{color:#a9e7bd}.cancel{background:#324638;color:#ecf7ee}.empty{color:#a8bcae}.empty h3{color:#d9e8dd}.empty>span{background:#293d30;color:#a9cbb3}.help{background:#1b2721;color:#deebe1;border:1px solid #435a4c}.auth-intro{color:#adc0b4}.auth-card h1{color:#e6f1e9}.auth-card h1 em{color:#82d3a2}.auth-nav button,.password-field button{color:#a5d8b7}.balance{box-shadow:0 12px 30px #0003}.intro{align-items:center}@media(max-width:680px){.italia-banner{width:min(100%,285px);margin:16px 0 22px}}

/* Saldo direct onder de bovenbalk */
main{padding-top:22px}.balance-sync{display:block;background:transparent;color:#d3e8dd;border:0;padding:8px 0 0;font-size:11px;font-weight:400;text-align:left}.balance-sync:hover:not(:disabled){color:white;background:transparent}@media(max-width:680px){main{padding-top:18px}}
