@font-face{font-family:"DM Sans";src:url("../fonts/dm-sans-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"DM Sans";src:url("../fonts/dm-sans-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"DM Sans";src:url("../fonts/dm-sans-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"DM Mono";src:url("../fonts/dm-mono-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url("../fonts/fraunces-variable.woff2") format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url("../fonts/fraunces-variable.woff2") format("woff2");font-weight:300 700;font-style:italic;font-display:swap}

:root{color-scheme:dark;--night:#0e0f12;--night-soft:#121318;--panel:#191a1f;--panel-light:#202127;--line:#2d2e35;--gold:#d8b85b;--gold-light:#f0d476;--cream:#f6f3eb;--muted:#9a9aa2;--green:#55b78a;--red:#df7171;--blue:#62a6d9;--radius:10px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--night);color:var(--cream);font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
.wordmark{font-size:20px;font-weight:600;letter-spacing:-.5px;white-space:nowrap}.wordmark span{color:var(--gold)}
.eyebrow{font-size:10px!important;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:#ddc778!important;display:flex;align-items:center;gap:10px}.eyebrow>span{width:22px;height:1px;background:var(--gold)}
.outline-button,.gold-button,.dark-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:9px;font-size:13px;font-weight:600;transition:transform .18s,border-color .18s,background .18s}
.outline-button{padding:12px 18px;border:1px solid #5d5131;color:#dfc66f}.outline-button:hover{border-color:var(--gold)}
.gold-button{background:var(--gold);color:#151514;padding:15px 20px;border:1px solid var(--gold)}.gold-button:hover{background:var(--gold-light);transform:translateY(-1px)}
.dark-button{background:#191a1f;border:1px solid #33343b;padding:15px 20px}.dark-button:hover{border-color:#5e5f68}.play{color:var(--gold);font-size:10px}

.site-header{height:78px;display:flex;align-items:center;gap:48px;border-bottom:1px solid #24252a;padding:0 clamp(24px,4vw,64px);position:relative;z-index:5}.site-header nav{display:flex;gap:36px;margin-left:auto;color:#aaaab1;font-size:14px}.site-header nav a:hover{color:var(--cream)}.site-header__actions{display:flex;align-items:center;gap:22px}.quiet-link{font-size:13px;color:#c4c4c8}
.hero{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr);gap:clamp(42px,6vw,96px);align-items:center;min-height:650px;padding:72px clamp(24px,4vw,64px) 78px;max-width:1500px;margin:0 auto}.hero h1{font-family:"Fraunces",serif;font-size:clamp(48px,5.3vw,76px);line-height:.98;font-weight:450;letter-spacing:-.045em;margin:28px 0;max-width:680px}.hero h1 em{display:block;color:var(--gold);font-weight:400;margin-top:8px}.hero__intro{color:#b6b5ba;line-height:1.7;font-size:16px;max-width:560px;margin:0}.hero__actions{display:flex;gap:12px;margin-top:32px}.trust-row{display:flex;gap:22px;margin-top:23px;color:#74757d;font-size:11px}
.product-preview{height:400px;border:1px solid #34353c;border-radius:14px;background:#17181d;position:relative;margin-top:30px;box-shadow:0 35px 70px rgba(0,0,0,.34)}.browser-bar{height:33px;border-bottom:1px solid #2d2e34;background:#212228;border-radius:14px 14px 0 0;display:flex;align-items:center;gap:6px;padding:0 13px}.browser-bar i{width:7px;height:7px;border-radius:50%;background:#51525a}.browser-bar span{position:absolute;left:50%;transform:translateX(-50%);background:#17181d;border-radius:5px;color:#55565d;font-size:8px;padding:5px 60px}.preview-body{height:365px;display:grid;grid-template-columns:58px 1fr}.preview-sidebar{border-right:1px solid #2b2c32;padding:14px 10px;display:flex;align-items:center;flex-direction:column;gap:15px}.preview-sidebar strong{display:grid;place-items:center;color:var(--gold);font-size:9px;width:30px;height:30px;border:1px solid #756127;border-radius:7px;margin-bottom:3px}.preview-sidebar span{display:grid;place-items:center;width:22px;height:15px;color:#5a5b63;font-size:7px;border-radius:3px}.preview-sidebar span:first-of-type{background:#5d512b;color:#e1cb79}.preview-main{padding:24px}.preview-heading{display:flex;align-items:center;justify-content:space-between;font-size:12px}.preview-heading b{font-size:13px}.preview-heading span{background:var(--gold);color:#171717;border-radius:5px;padding:8px 11px;font-size:8px;font-weight:600}.preview-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:20px}.preview-stats i{height:55px;border:1px solid #303138;border-radius:7px;background:#1d1e23}.preview-stats i:first-child{border-top:2px solid var(--gold)}.preview-grid{display:grid;grid-template-columns:1.6fr .8fr;gap:8px;margin-top:10px}.preview-chart,.preview-list{height:175px;border:1px solid #303138;border-radius:7px;background:#1d1e23}.preview-chart{display:flex;align-items:flex-end;gap:11px;padding:28px 18px 16px}.preview-chart i{flex:1;display:block;background:linear-gradient(#eed174,#a48129);border-radius:2px 2px 0 0}.preview-chart i:nth-child(1){height:46%}.preview-chart i:nth-child(2){height:67%}.preview-chart i:nth-child(3){height:53%}.preview-chart i:nth-child(4){height:76%}.preview-chart i:nth-child(5){height:70%}.preview-chart i:nth-child(6){height:91%}.preview-list{padding:25px 14px}.preview-list i{height:1px;background:#34353b;display:block;margin:18px 0}.payment-note{position:absolute;left:-32px;bottom:-19px;background:#202126;border:1px solid #36373e;border-radius:9px;padding:11px 15px;display:flex;align-items:center;gap:10px}.payment-note>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#193b2e;color:var(--green)}.payment-note b,.payment-note small{display:block}.payment-note b{font-size:10px}.payment-note small{font-size:8px;color:#85868e;margin-top:3px}.time-note{position:absolute;right:-18px;top:-18px;background:#24252a;border:1px solid #3a3b42;border-radius:10px;padding:16px 18px}.time-note strong,.time-note span{display:block}.time-note strong{font-family:"Fraunces",serif;color:#ecd075;font-size:21px}.time-note span{font-size:8px;color:#878890;margin-top:3px}
.possibilities{padding:100px clamp(24px,5vw,78px);background:var(--night-soft);border-top:1px solid #23242a}.section-heading{display:grid;grid-template-columns:70px minmax(0,1fr);gap:24px;max-width:1100px}.section-heading>span,.section-number{font-family:"DM Mono",monospace;color:var(--gold);font-size:11px;letter-spacing:.16em;padding-top:8px}.section-heading h2,.software-section h2{font-family:"Fraunces",serif;font-size:clamp(34px,4vw,56px);font-weight:430;letter-spacing:-.03em;line-height:1.05;margin:0}.section-heading p,.software-section>div>p:last-child{color:var(--muted);line-height:1.65;max-width:620px;margin-top:15px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#2a2b31;border:1px solid #2a2b31;margin:54px auto 0;max-width:1250px}.feature-grid article{background:#17181d;padding:34px}.feature-grid article>span{display:grid;place-items:center;width:36px;height:36px;border:1px solid #5e512a;border-radius:8px;color:var(--gold);font-family:"DM Mono",monospace;font-size:11px}.feature-grid h3{font-family:"Fraunces",serif;font-size:23px;font-weight:450;margin:28px 0 10px}.feature-grid p{color:var(--muted);line-height:1.6;font-size:13px;margin:0}.software-section{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:24px;align-items:end;padding:100px clamp(24px,5vw,78px);max-width:1400px;margin:0 auto}.software-section .gold-button{margin-bottom:5px}.marketing-page footer{display:flex;align-items:center;gap:26px;padding:34px clamp(24px,5vw,78px);border-top:1px solid #25262b;color:#777880}.marketing-page footer p{font-size:12px}.marketing-page footer small{margin-left:auto;font-size:10px}

.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,.9fr) minmax(460px,1.1fr)}.auth-branding{padding:42px clamp(32px,6vw,92px);border-right:1px solid var(--line);display:flex;flex-direction:column;background:var(--night-soft)}.auth-branding>div{margin:auto 0}.auth-branding h1{font-family:"Fraunces",serif;font-size:clamp(46px,5vw,68px);font-weight:450;line-height:1;letter-spacing:-.04em;margin:25px 0 20px}.auth-branding>div>p:last-child{color:#aaaab1;line-height:1.7;max-width:510px}.auth-branding ul{list-style:none;padding:0;margin:30px 0 0;color:#7f8088;font-size:12px;display:grid;gap:12px}.auth-branding li:before{content:"✓";color:var(--gold);margin-right:10px}.auth-panel{display:grid;place-items:center;padding:50px 24px;position:relative;background:#0e0f12}.auth-card{width:100%;max-width:430px}.auth-kicker{color:var(--gold)!important;text-transform:uppercase;letter-spacing:.16em;font-size:10px!important;font-weight:600}.auth-card h2{font-family:"Fraunces",serif;font-size:36px;font-weight:450;margin:8px 0}.auth-card>p{color:#888991;font-size:13px}.auth-card form{display:grid;gap:17px;margin-top:28px}.auth-card label{display:grid;gap:7px;color:#b9b9be;font-size:11px;font-weight:500;letter-spacing:.03em}.label-note{float:right;color:#676870;font-weight:400}.auth-card input{width:100%;height:46px;background:#191a1f;border:1px solid #34353c;border-radius:8px;color:var(--cream);padding:0 13px;outline:0}.auth-card input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,184,91,.12)}.form-submit{width:100%;margin-top:5px}.password-hint{font-size:10px!important;color:#777880!important;margin:-8px 0 0}.auth-switch{text-align:center;margin-top:22px!important}.auth-switch a{color:#e2ca75}.form-error{background:#3d2326;border:1px solid #6b3439;color:#f2b5b9;border-radius:8px;padding:11px 13px;font-size:12px;line-height:1.5;margin-top:20px}.back-link{position:absolute;left:24px;bottom:22px;color:#73747c;font-size:11px}

.app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr);background:#111216}.app-sidebar{background:#191a1f;border-right:1px solid #2a2b31;padding:25px 14px 16px;display:flex;flex-direction:column}
/* Vanaf tablet blijft de zijbalk op schermhoogte staan in plaats van mee te
   groeien met de paginainhoud; anders staat het onderste blok (administratie
   wisselen) bij een lang dashboard ver onder de vouw. Past het menu niet op
   een laag scherm, dan scrollt alleen de zijbalk zelf. Onder 761px geldt de
   uitschuifbare mobiele zijbalk verderop, die niet hierdoor geraakt wordt. */
@media(min-width:761px){.app-sidebar{position:sticky;top:0;align-self:start;height:100dvh;overflow-y:auto}}.sidebar-mobile-head{display:block}.sidebar-mobile-head .wordmark{display:block;padding:0 10px 22px}.sidebar-close,.sidebar-backdrop{display:none}.new-invoice{margin:8px 0 26px;padding:13px}.app-sidebar>p{color:#9a9aa2;text-transform:uppercase;letter-spacing:.17em;font-size:9px;font-weight:600;padding:0 12px;margin:0 0 7px}.app-sidebar nav{display:grid;gap:2px;margin-bottom:25px}.app-sidebar nav a{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:7px;color:#a6a6ad;font-size:12px}.app-sidebar nav a:hover,.app-sidebar nav a.active{background:#29291f;color:#ead27b}.app-sidebar nav a>span{width:19px;color:#a4a5ad;font-family:"DM Mono",monospace;font-size:8px}.sidebar-user{margin-top:auto;padding:14px 10px 0;border-top:1px solid #2a2b31;display:flex;align-items:center;gap:10px}.sidebar-user>b{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#2d2c23;color:var(--gold);font-size:10px}.sidebar-user span strong,.sidebar-user span small{display:block}.sidebar-user span strong{font-size:11px}.sidebar-user span small{font-size:9px;color:#a4a5ad;margin-top:2px}.app-main{min-width:0}.app-header{height:64px;border-bottom:1px solid #2a2b31;display:flex;align-items:center;gap:10px;padding:0 24px;color:#9a9aa2;font-size:10px}.app-header>span{margin-right:auto}.app-header>span b{color:#d5d5d8}.app-header button{height:34px;border:1px solid #2e2f35;background:#191a1f;color:#9c9ca4;border-radius:7px;padding:0 12px;font-size:10px}.app-header form{margin:0}.search-button{min-width:170px;text-align:left}.search-button kbd{float:right;color:#9a9aa2}.account-button{color:#d4bd6f!important;border-color:#5e512e!important}.mobile-menu{display:none}.dashboard{padding:36px;max-width:1480px;margin:0 auto}.dashboard-date{font-family:"DM Mono",monospace;font-size:9px;color:#d8b85b;text-transform:uppercase;letter-spacing:.17em;margin:0 0 9px}.dashboard-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:25px}.dashboard-title h1{font-family:"Fraunces",serif;font-size:29px;font-weight:450;margin:0}.dashboard-title p{font-size:10px;color:#7e7f87;margin:5px 0 0}.cloud-status{font-size:10px;color:#73c69b}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.dashboard-stats article,.onboarding-panel{background:#1b1c21;border:1px solid #2e2f36;border-radius:9px}.dashboard-stats article{padding:17px;border-top:2px solid var(--gold)}.dashboard-stats article:nth-child(2){border-top-color:var(--red)}.dashboard-stats article.stat-negative{border-top-color:var(--red)}.dashboard-stats article.stat-positive{border-top-color:var(--green)}.dashboard-stats article:nth-child(4){border-top-color:var(--green)}.dashboard-stats span{display:block;color:#85868e;font-size:9px}.dashboard-stats strong{display:block;font-family:"Fraunces",serif;font-size:24px;margin:15px 0}.dashboard-stats small{font-size:9px;color:#9a9aa2}.onboarding-panel{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(420px,1.3fr);gap:38px;padding:30px;margin-top:12px}.onboarding-panel h2{font-family:"Fraunces",serif;font-size:28px;font-weight:450;margin:17px 0 10px}.onboarding-panel>div>p:last-child{color:#85868e;line-height:1.6;font-size:12px}.onboarding-panel ol{list-style:none;padding:0;margin:0}.onboarding-panel li{display:flex;align-items:center;gap:13px;padding:14px 0;border-bottom:1px solid #2b2c32}.onboarding-panel li:last-child{border-bottom:0}.onboarding-panel li>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #5f512b;border-radius:7px;color:var(--gold);font-family:"DM Mono",monospace;font-size:9px}.onboarding-panel li>div{flex:1}.onboarding-panel li strong,.onboarding-panel li small{display:block}.onboarding-panel li strong{font-size:11px}.onboarding-panel li small{font-size:9px;color:#777880;margin-top:4px}.onboarding-panel li button{border:0;background:transparent;color:#d7be68;font-size:10px}.status-page{min-height:100vh;display:grid;place-items:center;padding:24px}.status-page main{max-width:620px}.status-page .wordmark{display:inline-block;margin-bottom:80px}.status-page h1{font-family:"Fraunces",serif;font-size:48px;font-weight:450;line-height:1.05;margin:20px 0}.status-page main>p:not(.eyebrow){color:#92939a;line-height:1.6;margin-bottom:30px}

.workspace-page{padding:36px;max-width:1480px;margin:0 auto}.workspace-title{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.workspace-title h1{font-family:"Fraunces",serif;font-size:32px;font-weight:450;margin:0}.workspace-title>div>p:last-child{color:#85868e;font-size:11px;margin:7px 0 0}.secondary-button,.quiet-action{display:inline-flex;align-items:center;justify-content:center;border:1px solid #3a3b42;background:#202126;color:#c9c9ce;border-radius:8px;padding:11px 15px;font-size:11px}.secondary-button:hover{border-color:#676872}.quiet-action{border:0;background:transparent;color:#898a92}.content-panel{background:#1b1c21;border:1px solid #2e2f36;border-radius:10px}.form-panel{padding:26px;margin-bottom:14px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.panel-heading h2{font-family:"Fraunces",serif;font-size:23px;font-weight:450;margin:6px 0 0}.page-message{margin:0 0 14px}.success-message{background:#173429;border:1px solid #2f6a51;color:#91dfb8;border-radius:8px;padding:12px 14px;font-size:12px}.info-message{background:#1e3140;border:1px solid #2f5a7a;color:#8fc9ef;border-radius:8px;padding:12px 14px;font-size:12px}.data-form{display:grid;gap:18px}.form-grid{display:grid;gap:17px}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.data-form label,.invoice-line label{display:grid;gap:7px;color:#aaaab1;font-size:10px;font-weight:600;letter-spacing:.03em}.data-form input,.data-form select,.data-form textarea,.invoice-line input,.invoice-line select{width:100%;background:#15161a;border:1px solid #34353c;border-radius:7px;color:#f2efe7;padding:11px 12px;outline:0}.data-form input,.data-form select,.invoice-line input,.invoice-line select{height:42px}.data-form textarea{resize:vertical}.data-form input:focus,.data-form select:focus,.data-form textarea:focus,.invoice-line input:focus,.invoice-line select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,184,91,.1)}.check-row{display:flex!important;align-items:center;gap:9px!important}.check-row input,.line-check input{width:15px!important;height:15px!important;accent-color:var(--gold)}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.row-action{display:flex;align-items:center;gap:10px;white-space:nowrap}.inline-form{display:inline}.archive-link{margin:-8px 0 16px}.archive-panel{padding:24px}.archive-list{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.archive-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px;background:var(--panel)}.archive-row strong{font-size:13px;font-weight:600}.filter-chips{display:flex;flex-wrap:wrap;gap:6px;margin:-6px 0 16px}.filter-chip{display:inline-flex;align-items:center;height:34px;padding:0 15px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--cream);font-size:12px;font-weight:600}.filter-chip:hover{border-color:#5e5f68}.filter-chip.active{background:var(--cream);color:var(--night);border-color:var(--cream)}.period-row,.filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}.filter-row .list-search{flex:1;min-width:220px;margin-bottom:0}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;height:42px}.segmented a{display:inline-flex;align-items:center;padding:0 15px;color:var(--cream);font-size:12px;font-weight:600;border-right:1px solid var(--line);white-space:nowrap}.segmented a:last-child{border-right:0}.segmented a:hover:not(.active){background:var(--panel-light)}.segmented a.active{background:var(--cream);color:var(--night)}.period-row select,.filter-row select{height:42px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--cream);font-size:12px;font-weight:600}.year-custom-form{display:flex;align-items:center;gap:8px}.year-custom-form[hidden]{display:none}.year-custom-form input{height:42px;width:120px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--cream);font-size:12px;font-weight:600}.year-custom-form button{height:42px}@media(max-width:760px){.period-row,.filter-row{gap:8px}.segmented{width:100%}.segmented a{flex:1;justify-content:center;padding:0 8px}.year-custom-form{width:100%}.year-custom-form input{flex:1;width:auto}.filter-row .list-search{width:100%}.period-row select,.filter-row select{width:100%}}.bulk-bar[hidden]{display:none}.bulk-bar{display:flex;align-items:center;gap:16px;padding:13px 18px;margin-bottom:14px;border:1px solid var(--gold);border-radius:9px;background:var(--panel-light)}.bulk-all{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--cream);cursor:pointer}.bulk-all input{width:17px;height:17px;accent-color:var(--gold)}.bulk-bar .bulk-all{margin-right:auto}.status-filter-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:14px}.bulk-hint{display:inline-flex;align-items:center;gap:8px;margin-left:auto;color:var(--muted);font-size:12px}.bulk-hint[hidden]{display:none}.bulk-hint-box{width:16px;height:16px;margin:0;accent-color:var(--gold);pointer-events:none}.bulk-cell{width:40px}.bulk-cell input,.card-select input{width:16px;height:16px;accent-color:var(--gold)}.card-select{display:block;margin-bottom:-4px}.search-limit-note{margin:-8px 0 14px;color:var(--muted);font-size:12px}.list-search{display:flex;align-items:center;gap:10px;margin-bottom:18px}.list-search input{flex:1;min-width:0;height:44px;padding:0 14px;border:1px solid var(--line);border-radius:9px;background:var(--panel-light);color:var(--cream);font-size:13px}.list-search input::placeholder{color:#9a9aa2}.list-search input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,184,91,.12)}.list-search .secondary-button{height:44px;flex:0 0 auto}.list-panel{overflow:hidden}.table-scroll{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:800px}.data-table th{text-align:left;padding:12px 18px;background:#202126;color:#9a9aa2;text-transform:uppercase;letter-spacing:.11em;font-size:9px}.data-table td{padding:15px 18px;border-top:1px solid #2b2c32;color:#a7a7ae;font-size:11px}.data-table tbody tr:hover{background:#1f2025}.data-table td strong,.data-table td small{display:block}.data-table td strong{color:#eeeeea;font-weight:500}.data-table td small{color:#9a9aa2;font-size:9px;margin-top:4px}.mono{font-family:"DM Mono",monospace}.gold-text{color:#e0c66e!important}.amount-cell{font-family:"Fraunces",serif;color:#f2efe7!important;font-size:14px!important}.type-badge,.status-badge,.draft-label{display:inline-flex;border-radius:20px;padding:5px 9px;background:#292a30;color:#b4b5bb;font-size:8px;text-transform:uppercase;letter-spacing:.06em}.status-concept,.draft-label{background:#343026;color:#d9c474}.status-verzonden{background:#1e3140;color:#8fc9ef}.status-betaald{background:#18372b;color:#78d3a3}.status-deelbetaling{background:#352f20;color:#e4c76d}.status-vervallen{background:#3c2326;color:#ef9ca2}.pro-badge{display:inline-flex;align-items:center;border-radius:20px;padding:2px 7px;font-size:8px;text-transform:uppercase;letter-spacing:.06em;vertical-align:middle;margin-left:6px;background:#3d2f12;color:#e0c66e}.app-sidebar nav a>span.pro-badge{width:auto;flex:0 0 auto;color:#e0c66e;font-family:"DM Sans",sans-serif;font-weight:600}.app-sidebar nav a>span.menu-badge{width:auto;color:#151514}
.sidebar-group{margin-bottom:25px}
.sidebar-group>nav{margin-bottom:0}
.sidebar-group>summary{display:flex;align-items:center;gap:12px;padding:9px 12px;margin-bottom:7px;border-radius:7px;color:#9a9aa2;text-transform:uppercase;letter-spacing:.17em;font-size:9px;font-weight:600;cursor:pointer;list-style:none}
.sidebar-group>summary::-webkit-details-marker{display:none}
.sidebar-group>summary:hover{background:#29291f;color:#ead27b}
.sidebar-group>summary>span{width:19px;flex:0 0 19px;color:#a4a5ad;font-family:"DM Mono",monospace;font-size:8px;letter-spacing:0}
.sidebar-group>summary::after{content:"";width:6px;height:6px;margin-left:auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .15s}
.sidebar-group[open]>summary::after{transform:translateY(1px) rotate(-135deg)}.empty-state{text-align:center;padding:68px 24px}.empty-state>span{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 18px;border:1px solid #67582e;border-radius:12px;color:var(--gold);font-family:"DM Mono",monospace}.empty-state h2{font-family:"Fraunces",serif;font-size:25px;font-weight:450;margin:0}.empty-state p{color:#85868e;font-size:12px;line-height:1.6;margin:10px auto 22px;max-width:440px}.empty-state .gold-button{display:inline-flex}.onboarding-panel li>a{color:#d7be68;font-size:10px}.dashboard-recent{margin-top:12px;padding:26px}.dashboard-recent .panel-heading{margin:0}

.invoice-detail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:24px}.invoice-detail-heading h1{font-family:"Fraunces",serif;font-size:34px;font-weight:450;margin:0}.invoice-detail-heading>div:first-child>p:last-child{color:#85868e;font-size:12px;margin:5px 0 0}.back-action{display:block;color:#85868e;font-size:10px;margin-bottom:22px}.back-action:hover,.invoice-link:hover{color:var(--gold-light)}.invoice-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.invoice-actions form{margin:0}.invoice-actions .gold-button,.paid-button{padding:11px 14px;font-size:10px;border-radius:8px}.paid-button{background:#24593f;border:1px solid #367757;color:#a9e9c7;font-weight:600}.paid-button:hover{background:#2c684b}.invoice-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.invoice-meta{padding:19px;border-top:2px solid #484950}.invoice-meta.total{border-top-color:var(--gold)}.invoice-meta>span,.invoice-meta>strong,.invoice-meta>small{display:block}.invoice-meta>span{color:#7d7e86;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.invoice-meta>strong{font-family:"Fraunces",serif;font-size:18px;font-weight:450;margin:12px 0 5px}.invoice-meta>small{color:#74757d;font-size:9px}.invoice-meta.total>strong{color:var(--gold-light);font-size:23px}.invoice-detail-lines{padding:25px;overflow:hidden}.invoice-detail-lines .panel-heading{margin-bottom:18px}.detail-totals{width:min(100%,340px);margin:20px 0 0 auto;display:grid;gap:10px}.detail-totals>div{display:flex;justify-content:space-between;color:#8a8b92;font-size:11px}.detail-totals>div:last-child{border-top:1px solid #393a40;padding-top:13px;color:#f0eee7}.detail-totals>div:last-child strong{font-family:"Fraunces",serif;color:var(--gold-light);font-size:20px}.totals-discount,.totals-discount strong{color:var(--red)}.invoice-notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.invoice-notes-grid article{padding:22px}.invoice-notes-grid article>span{color:#7d7e86;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.invoice-notes-grid article>p{color:#b0b0b5;line-height:1.6;font-size:11px;margin:10px 0 0}.invoice-notes-grid .internal{border-color:#5b4e27;background:#242117}.invoice-payments-panel{padding:25px;overflow:hidden}.invoice-payments-panel .panel-heading{margin-bottom:18px}.payment-summary{display:flex;gap:26px}.payment-summary span{display:block;color:#7d7e86;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.payment-summary strong{display:block;font-family:"Fraunces",serif;font-size:17px;margin-top:5px}.payment-add-form{margin-top:18px;padding-top:18px;border-top:1px solid #2b2c32}

.print-page{background:#dedede;color:#202020;min-height:100vh;padding:34px 20px;font-family:"DM Sans",sans-serif}.print-toolbar{max-width:794px;margin:0 auto 14px;display:flex;align-items:center;justify-content:space-between}.print-toolbar a{color:#454545;font-size:12px}.print-toolbar button{border:0;border-radius:8px;background:#1a1a1a;color:#fff;padding:11px 16px;font-weight:600}.invoice-paper{width:100%;max-width:794px;min-height:1123px;margin:0 auto;background:#fff;padding:58px 62px;box-shadow:0 12px 45px rgba(0,0,0,.18);display:flex;flex-direction:column}.paper-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #c4a84a;padding-bottom:28px}.paper-brand{font-size:23px;font-weight:650;letter-spacing:-.6px}.paper-brand span{color:#a78728}.paper-header>div:first-child>p{color:#6c6c6c;font-size:11px;margin:7px 0 0}.paper-header>div:last-child{text-align:right}.paper-header>div:last-child>p{color:#a78728;font-size:10px;font-weight:700;letter-spacing:.18em;margin:0 0 8px}.paper-header h1{font-family:"Fraunces",serif;font-size:28px;font-weight:500;margin:0}.paper-addresses{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:34px 0}.paper-addresses>div>span,.paper-meta span,.paper-notes>span{display:block;color:#999;font-size:8px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:8px}.paper-addresses strong{font-size:12px}.paper-addresses p{font-size:10px;line-height:1.55;color:#555;margin:7px 0}.paper-addresses small{display:block;color:#777;font-size:8px;margin-top:4px}.paper-meta{display:flex;gap:40px;background:#f5f3ed;padding:14px 16px;margin-bottom:28px}.paper-meta>div{min-width:115px}.paper-meta span{margin-bottom:5px}.paper-meta strong{font-size:10px}.paper-lines{width:100%;border-collapse:collapse}.paper-lines th{text-align:left;color:#888;font-size:8px;text-transform:uppercase;letter-spacing:.08em;padding:9px 8px;border-bottom:1px solid #bbb}.paper-lines th:nth-child(n+2),.paper-lines td:nth-child(n+2){text-align:right}.paper-lines td{font-size:9px;padding:13px 8px;border-bottom:1px solid #e5e5e5;vertical-align:top}.paper-lines td:first-child{font-weight:600}.paper-lines td small{display:block;font-weight:400;color:#888;margin-top:4px}.paper-summary{width:265px;margin:25px 0 25px auto;display:grid;gap:8px}.paper-summary>div{display:flex;justify-content:space-between;font-size:10px}.paper-summary>div:last-child{border-top:2px solid #c4a84a;padding-top:11px;font-size:14px}.paper-summary>div:last-child strong{font-family:"Fraunces",serif;color:#8d721f;font-size:19px}.paper-notes{background:#f8f8f6;padding:14px 16px;margin:5px 0 25px}.paper-notes>span{margin-bottom:6px}.paper-notes p{font-size:9px;line-height:1.5;color:#555;margin:0}.letter-to{margin:34px 0 0;padding-bottom:22px;border-bottom:2px solid #c4a84a}.letter-to span{display:block;color:#999;font-size:8px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:8px}.letter-to strong{font-size:12px}.letter-to p{font-size:10px;line-height:1.55;color:#555;margin:7px 0 0}.letter-salutation{font-size:10.5px;color:#333;margin:26px 0 14px}.letter-intro{font-size:10.5px;line-height:1.65;color:#444;margin:0 0 22px;white-space:pre-line}.letter-items{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:14px}.letter-items li{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:14px;border-bottom:1px solid #eee;font-size:10px}.letter-items li strong{font-weight:600;color:#222}.letter-items li span{color:#8d721f;white-space:nowrap;font-weight:600;font-size:9px}.letter-summary{margin-top:0}.letter-closing{font-size:10.5px;line-height:1.65;color:#444;margin:22px 0}.paper-signature{margin:5px 0 25px}.paper-signature>p{font-size:9px;line-height:1.55;color:#555;margin:0 0 16px}.signature-row{display:flex;gap:24px}.signature-row>div{flex:1;min-width:0}.signature-row span{display:block;color:#999;font-size:8px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:10px}.signature-line{border-bottom:1px solid #bbb;height:26px}.invite-link-row{display:flex;gap:8px;margin:-5px 0 14px}.invite-link-row input{flex:1;min-width:0;background:#15161a;border:1px solid #50472c;border-radius:8px;color:#d7c16f;padding:0 12px;font-family:"DM Mono",monospace;font-size:9px}
/* De publieke offerte-accepteerpagina (templates/quote-accept.php) draait in
   .print-page — die zet zelf al color:#202020 op body, dus deze blokken
   krijgen bewust hun eigen, expliciete kleuren i.p.v. de donkere
   .content-panel/.data-form-stijl te hergebruiken (die is afgestemd op de
   donkere app-achtergrond en zou hier onleesbaar worden). */
.quote-accept-missing{max-width:480px;margin:60px auto;text-align:center}
.quote-accept-missing h1{font-family:"Fraunces",serif;font-size:20px;color:#191a1b;margin:20px 0 10px}
.quote-accept-missing p{color:#555;font-size:12px}
.quote-response{background:#f8f8f6;padding:20px;margin:5px 0 25px;border-radius:6px}
.quote-response>span{display:block;color:#999;font-size:8px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:8px}
.quote-response h2{margin:0 0 16px;font-family:"Fraunces",serif;font-size:17px;font-weight:600;color:#191a1b}
.quote-response-form{margin-bottom:12px}
.quote-response-form:last-child{margin-bottom:0}
.quote-response-form label{display:grid;gap:6px;color:#555;font-size:10px;margin-bottom:14px}
.quote-response-form input{height:40px;width:100%;box-sizing:border-box;border:1px solid #ccc;border-radius:6px;padding:0 12px;font-size:11px;color:#222;background:#fff}.paper-footer{border-top:1px solid #ddd;padding-top:18px;margin-top:auto}.paper-footer p{font-size:9px;line-height:1.55;color:#555;margin:0 0 14px}.paper-footer small{font-size:8px;color:#999}
.paper-header-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;margin-bottom:26px;padding-bottom:26px;border-bottom:2px solid #cccccc}.paper-logo-col{display:flex;align-items:flex-start;overflow:hidden;min-width:0}.paper-org-info{display:grid;grid-template-columns:auto 1fr;column-gap:16px;row-gap:6px;font-size:11px;color:#333;align-content:start}.paper-org-info strong{font-size:12px}
.paper-client{margin-bottom:24px;font-size:11px;color:#333}.paper-client strong{display:block;font-size:13px;margin-bottom:2px}.paper-client p{margin:4px 0 0;line-height:1.5;color:#555}
.paper-title-block{margin-bottom:20px}.paper-title-block h1{font-family:"Fraunces",serif;font-size:20px;font-weight:700;margin:0 0 8px;color:#191a1b}.paper-title-block h1.credit-heading{color:var(--red,#c0392b)}.paper-meta-list{display:grid;gap:3px;font-size:11px}.paper-meta-list>div{display:grid;grid-template-columns:110px 1fr}.paper-meta-list span{color:#555}.paper-meta-list strong{font-size:11px}.paper-meta-list .paid-label{color:#16a34a}.paper-meta-list .credit-heading{color:#c0392b}
.paper-lines-service td:nth-child(1),.paper-lines-service th:nth-child(1),.paper-lines-service td:nth-child(2),.paper-lines-service th:nth-child(2),.paper-lines-service td:nth-child(3),.paper-lines-service th:nth-child(3){text-align:left}
.line-discount-note{display:block;color:#c0392b!important;font-weight:400}.line-project{font-size:9px;color:#888}

.catalog-grid,.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.catalog-card,.project-card{background:#1b1c21;border:1px solid #2e2f36;border-radius:10px;padding:23px}.catalog-card-head{display:flex;align-items:center;gap:8px}.catalog-card-head small{margin-left:auto}.catalog-card-head .card-select{display:block;margin-bottom:0}.catalog-card-head small{color:#777880;font-size:9px}.catalog-card h2,.project-card h2{font-family:"Fraunces",serif;font-size:21px;font-weight:450;margin:19px 0 8px}.catalog-card>p,.project-card>div>p{color:#9a9aa2;font-size:11px;line-height:1.55;min-height:35px;margin:0}.catalog-price{display:flex;align-items:baseline;gap:7px;border-top:1px solid #2d2e34;margin-top:20px;padding-top:17px}.catalog-price strong{font-family:"Fraunces",serif;font-size:22px;color:var(--gold-light)}.catalog-price span{color:#777880;font-size:9px}.project-card{display:grid;gap:20px}.project-card dl{display:grid;gap:10px;margin:0;padding-top:16px;border-top:1px solid #2d2e34}.project-card dl>div{display:grid;grid-template-columns:65px 1fr;gap:8px}.project-card dt{color:#9a9aa2;font-size:9px;text-transform:uppercase;letter-spacing:.07em}.project-card dd{color:#b5b5bb;font-size:10px;margin:0}.status-project-actief{background:#18372b;color:#78d3a3}.status-project-gepauzeerd{background:#352f20;color:#e4c76d}.status-project-afgerond{background:#292a30;color:#aaaab1}

.invoice-form{display:grid;gap:0}.invoice-lines{display:grid;gap:10px}.invoice-line{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(210px,2.1fr) .7fr 1fr .7fr .7fr 1fr 1fr auto 24px 58px;gap:9px;align-items:end;padding:14px;background:#17181c;border:1px solid #2d2e34;border-radius:8px}
/* Werkdatum verbergen op een product-/verzamelfactuur. De regel hieronder is
   dezelfde kolomlijst als .invoice-line hierboven, met de werkdatum-kolom (de
   zevende, 1fr) eruit — passen die niet meer bij elkaar, dan schuiven de
   velden een kolom op. Bewust alleen boven 1180px: daaronder geldt de
   4-koloms indeling uit de media query verderop, die vanzelf goed reflowt. */
.hide-work-date .line-work-date{display:none}
@media(min-width:1181px){.hide-work-date .invoice-line{grid-template-columns:minmax(150px,1.2fr) minmax(210px,2.1fr) .7fr 1fr .7fr .7fr 1fr auto 24px 58px}}.line-check{display:flex!important;align-items:center;gap:7px!important;height:42px;white-space:nowrap;font-size:9px!important}.remove-line{height:42px;width:30px;border:0;background:transparent;color:#777880;font-size:20px}.line-move{display:grid;gap:1px;height:42px;align-content:center}.move-line{width:24px;height:16px;padding:0;display:grid;place-items:center;border:0;background:transparent;color:#777880;font-size:9px;line-height:1}.move-line:hover:not(:disabled){color:var(--gold)}.move-line:disabled{opacity:.3;cursor:default}.remove-line:hover{color:var(--red)}.line-actions{display:flex;gap:6px;height:42px;align-items:center}.line-actions .remove-line{height:34px;width:26px;font-size:19px}.copy-line{width:26px;height:34px;padding:0;display:grid;place-items:center;border:0;background:transparent;color:#777880;font-size:16px;line-height:1}.copy-line:hover{color:var(--gold)}.invoice-bottom-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px}.invoice-bottom-grid .form-panel{margin:0}.invoice-total{padding:26px;align-self:stretch;display:flex;flex-direction:column;gap:16px}.invoice-total>div{display:flex;justify-content:space-between;color:#8e8f96;font-size:11px}.invoice-total>div strong{color:#e8e7e2;font-weight:500}.invoice-total .grand-total{border-top:1px solid #35363c;padding-top:18px;margin-top:4px;align-items:center}.invoice-total .grand-total span{color:#d7d7da}.invoice-total .grand-total strong{font-family:"Fraunces",serif;color:var(--gold-light);font-size:25px}.invoice-total .gold-button{width:100%;margin-top:auto}.invoice-editor{padding-bottom:70px}.invoice-total>div[hidden]{display:none}.invoice-discount-row{display:flex;gap:10px}.invoice-discount-row label{flex:1}.invoice-discount-row label[hidden]{display:none}.invoice-total .totals-discount strong{color:var(--red)}

.paper-logo{display:block}
@media(max-width:1180px){.catalog-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-line{grid-template-columns:repeat(4,minmax(90px,1fr))}.invoice-line .line-catalog,.invoice-line .line-description{grid-column:span 2}.invoice-line .line-check{height:auto}.line-actions{grid-column:-1}}
@media(max-width:980px){.site-header nav{display:none}.hero{grid-template-columns:1fr;padding-top:58px}.hero__copy{max-width:720px}.product-preview{margin:20px 20px 20px 34px}.feature-grid{grid-template-columns:1fr}.software-section{grid-template-columns:50px 1fr}.software-section .gold-button{grid-column:2;justify-self:start}.section-heading{grid-template-columns:50px 1fr}.app-shell{grid-template-columns:76px 1fr}.app-sidebar{padding:22px 8px}.app-sidebar .wordmark{font-size:0;text-align:center}.app-sidebar .wordmark span{font-size:15px}.app-sidebar .new-invoice{font-size:0}.app-sidebar .new-invoice:first-letter{font-size:18px}.app-sidebar>p,.app-sidebar nav a:not(.active){font-size:0}.app-sidebar nav a{justify-content:center;padding:10px}.app-sidebar nav a>span{font-size:9px;text-align:center}.sidebar-group>summary{justify-content:center;padding:10px;font-size:0;letter-spacing:0}.sidebar-group>summary>span{font-size:9px;text-align:center}.sidebar-group>summary::after{display:none}.app-sidebar nav a>span.pro-badge{display:none}.sidebar-user span{display:none}.dashboard-stats{grid-template-columns:repeat(2,1fr)}.onboarding-panel{grid-template-columns:1fr}.form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.span-3{grid-column:span 2}.invoice-bottom-grid{grid-template-columns:1fr}.invoice-overview-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.auth-shell{grid-template-columns:1fr}.auth-branding{display:none}.auth-panel{min-height:100vh}.app-shell{display:block}.app-sidebar{display:flex;position:fixed;inset:0 auto 0 0;width:min(86vw,330px);height:100dvh;overflow-y:auto;z-index:30;padding:18px 14px 16px;box-shadow:20px 0 50px rgba(0,0,0,.45);transform:translateX(-105%);visibility:hidden;transition:transform .2s ease,visibility .2s}.app-sidebar.open{transform:translateX(0);visibility:visible}.sidebar-mobile-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebar-mobile-head .wordmark{display:block;padding:0 10px 16px;font-size:20px;text-align:left}.sidebar-mobile-head .wordmark span{font-size:20px}.sidebar-close{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;margin:-5px 0 10px;border:1px solid #36373e;border-radius:9px;background:#202126;color:#e8e7e2;font-size:26px;line-height:1}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:25;border:0;background:rgba(0,0,0,.58);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s}.mobile-nav-open{overflow:hidden}.mobile-nav-open .sidebar-backdrop{opacity:1;visibility:visible;pointer-events:auto}.app-sidebar .new-invoice{font-size:13px}.app-sidebar .new-invoice:first-letter{font-size:inherit}.app-sidebar>p{font-size:9px}.app-sidebar nav a,.app-sidebar nav a:not(.active){justify-content:flex-start;padding:11px 12px;font-size:12px}.app-sidebar nav a>span{width:19px;font-size:9px;text-align:left}.app-sidebar nav{margin-bottom:20px}.sidebar-group>summary{justify-content:flex-start;padding:9px 12px;font-size:9px;letter-spacing:.17em}.sidebar-group>summary>span{text-align:left}.sidebar-group>summary::after{display:block}.sidebar-group>nav{margin-bottom:0}.app-sidebar nav a>span.pro-badge{display:inline-flex}.sidebar-user span{display:block}.sidebar-legal{display:flex}.mobile-menu{display:block}.app-header{padding:0 14px;position:sticky;top:0;z-index:15;background:#111216;transform:translateZ(0);-webkit-transform:translate3d(0,0,0);will-change:transform}.search-button{display:none}.dashboard,.workspace-page{padding:24px 14px}.dashboard-title h1{font-size:25px}.workspace-title{align-items:flex-start}.workspace-title h1{font-size:27px}.catalog-grid,.project-grid{grid-template-columns:1fr}.invoice-line{grid-template-columns:1fr 1fr}.invoice-line .line-catalog,.invoice-line .line-description{grid-column:span 2}.form-grid-3{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}.invoice-detail-heading{display:block}.invoice-actions{justify-content:flex-start;margin-top:18px}.invoice-overview-grid{grid-template-columns:1fr 1fr}.invoice-notes-grid{grid-template-columns:1fr}.print-page{padding:0}.invoice-paper{min-height:100vh;padding:35px 24px;box-shadow:none}.paper-addresses{gap:24px}.paper-meta{gap:18px;flex-wrap:wrap}.signature-row{flex-direction:column;gap:16px}.invite-link-row{align-items:stretch;flex-direction:column}.invite-link-row input{height:42px}}
@media print{@page{size:A4;margin:0}.print-page{background:#fff;padding:0}.print-toolbar{display:none}.invoice-paper{width:210mm;min-height:297mm;max-width:none;margin:0;padding:15mm 16mm;box-shadow:none}}

/* Juridische links en instemming */
.footer-legal{display:flex;gap:18px;margin-left:auto;font-size:10px}.footer-legal a:hover{color:var(--gold-light)}
.legal-acceptance{display:flex!important;align-items:flex-start;gap:10px!important;line-height:1.5;letter-spacing:0!important}.legal-acceptance input{width:16px!important;height:16px!important;flex:0 0 16px;margin-top:2px;padding:0;accent-color:var(--gold)}.legal-acceptance a{color:var(--gold-light);text-decoration:underline;text-underline-offset:2px}
.auth-legal-links{position:absolute;right:24px;bottom:22px;display:flex;gap:13px;color:#73747c;font-size:10px}.auth-legal-links a:hover{color:var(--gold-light)}
.sidebar-legal{margin-top:auto;display:flex;gap:10px;padding:9px 10px;color:#a4a5ad;font-size:9px}.sidebar-legal a:hover{color:var(--gold-light)}.sidebar-legal+.sidebar-user{margin-top:0}
@media(max-width:980px){.sidebar-legal{display:none}}
@media(max-width:640px){.list-search{flex-wrap:wrap}.bulk-bar{flex-wrap:wrap}.bulk-bar .secondary-button{margin-left:0;width:100%}.list-search input{flex:1 1 100%}.panel-heading{flex-wrap:wrap}.panel-heading>div{min-width:0}.panel-heading h2{overflow-wrap:break-word}.workspace-title{flex-wrap:wrap}.workspace-title>div{min-width:0}.workspace-title h1{overflow-wrap:break-word}.footer-legal{margin-left:0;flex-wrap:wrap}.auth-legal-links{position:static;justify-content:center;margin-top:22px;flex-wrap:wrap}.back-link{position:static;display:block;text-align:center;margin-top:16px}}
@media(max-width:640px){.site-header{height:66px;padding:0 18px}.site-header__actions .quiet-link{display:none}.outline-button{padding:10px 13px;font-size:11px}.hero{display:block;padding:58px 18px 72px}.hero h1{font-size:48px}.hero__intro{font-size:14px}.hero__actions{align-items:stretch;flex-direction:column}.trust-row{flex-wrap:wrap;gap:8px 16px}.product-preview{height:285px;margin:68px 0 20px}.preview-body{height:252px;grid-template-columns:44px 1fr}.preview-sidebar{padding:10px 6px;gap:8px}.preview-main{padding:15px}.preview-heading span{display:none}.preview-stats i{height:41px}.preview-grid{grid-template-columns:1fr}.preview-chart{height:121px}.preview-list{display:none}.payment-note{left:10px;bottom:-25px}.time-note{right:10px}.browser-bar span{padding:5px 28px}.possibilities{padding:72px 18px}.section-heading{display:block}.section-heading>span{display:block;margin-bottom:18px}.feature-grid{margin-top:36px}.software-section{display:block;padding:72px 18px}.software-section>div{margin:18px 0 28px}.marketing-page footer{align-items:flex-start;flex-direction:column;padding:28px 18px;gap:8px}.marketing-page footer small{margin-left:0}.dashboard-stats{grid-template-columns:1fr 1fr}.dashboard-stats article{padding:13px}.dashboard-stats strong{font-size:20px}.onboarding-panel{padding:20px}.onboarding-panel li{align-items:flex-start}.onboarding-panel li button{display:none}.account-button{max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-page h1{font-size:38px}}

/* BTW-uitsplitsing in het totalenblok. "BTW verlegd over" toont een grondslag,
   geen BTW-bedrag — cursief en gedempt, zodat het niet meetelt als bedrag. */
.detail-totals .totals-shifted,
.paper-summary .totals-shifted{font-style:italic;opacity:.85}.paper-summary .totals-discount{color:#c0392b}
.document-print-page .paper-summary>div:last-child{border-top-color:#cccccc}
.document-print-page .paper-summary>div:last-child strong{color:#333333}
.document-print-page .paper-lines td{vertical-align:middle}

/* "Afdrukken / opslaan als PDF" van facturen en offertes moet hetzelfde
   beeld geven als de knop "PDF openen" (src/InvoicePdf.php): alle tekst
   zwart, zodat ook een eenvoudige printer alles goed leesbaar afdrukt. Enige
   uitzondering is de regel "Betaald op:", die groen blijft. De dunne
   scheidingslijnen houden hun lichtgrijze tint. */
.document-print-page .invoice-paper,
.document-print-page .paper-org-info,
.document-print-page .paper-client,
.document-print-page .paper-client p,
.document-print-page .paper-title-block h1,
.document-print-page .paper-title-block h1.credit-heading,
.document-print-page .paper-meta-list span,
.document-print-page .paper-meta-list strong,
.document-print-page .paper-meta-list .credit-heading,
.document-print-page .paper-lines th,
.document-print-page .paper-lines td,
.document-print-page .paper-lines td small,
.document-print-page .paper-summary>div,
.document-print-page .paper-summary .totals-discount,
.document-print-page .paper-summary .totals-discount strong,
.document-print-page .paper-summary>div:last-child strong,
.document-print-page .paper-notes>span,
.document-print-page .paper-notes p,
.document-print-page .paper-footer p,
.document-print-page .paper-footer small,
.document-print-page .paper-signature>p,
.document-print-page .signature-row span{color:#000}
.document-print-page .paper-summary .totals-shifted{opacity:1}
/* .line-discount-note staat elders op !important (rode korting in het
   factuurformulier), dus hier is !important nodig om hem zwart te krijgen. */
.document-print-page .paper-lines .line-discount-note{color:#000!important}
.document-print-page .paper-meta-list .paid-label{color:#16a34a}

/* Potloodje bij Klant en Project op de factuurpagina. */
.invoice-meta>span{display:flex;align-items:center;gap:7px}
.meta-edit{display:inline-grid;place-items:center;width:19px;height:19px;border-radius:5px;color:var(--muted);opacity:.6;transition:opacity .15s,color .15s,background .15s}
.meta-edit svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.meta-edit:hover{opacity:1;color:var(--gold-light);background:rgba(216,184,91,.14)}
.meta-edit:focus-visible{opacity:1;outline:2px solid var(--gold);outline-offset:1px}

/* Project koppelen op de factuurpagina: uitklapper onder het projectblok. */
.invoice-project-change{margin-top:10px}
.invoice-project-change>summary{display:inline-block;cursor:pointer;color:var(--gold);font-size:11px;font-weight:600;list-style:none}
.invoice-project-change>summary::-webkit-details-marker{display:none}
.invoice-project-change>summary:hover{color:var(--gold-light)}
.invoice-project-form{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}
.invoice-project-form select{flex:1 1 140px;min-width:0;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:var(--panel-light);color:var(--cream);font-size:12px}
.invoice-project-form .secondary-button{padding:8px 12px;font-size:11px}
.invoice-project-empty{margin:8px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.invoice-project-empty a{color:var(--gold);font-weight:600}
@media(prefers-reduced-motion:reduce){.meta-edit{transition:none}}

/* Bewerkknop onderaan een projectkaart. */
.project-card{display:flex;flex-direction:column}
.project-card>dl{flex:1}
.project-card-actions{display:flex;align-items:center;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.project-card-head{display:flex;align-items:center;gap:8px}.project-card-head .card-select{display:block;margin-bottom:0}

/* Een lijstpaneel met alleen een tabel mag tegen de rand: de cellen hebben
   hun eigen padding. Staat er een kop boven, dan plakte die tegen de rand.
   Het paneel krijgt daarom ruimte, en de tabel trekt die er weer af zodat
   de kolomkoppen over de volle breedte blijven lopen. */
.list-panel:has(> .panel-heading){padding:24px}
.list-panel:has(> .panel-heading) > .table-scroll{margin:0 -24px -24px;width:auto}
.list-panel:has(> .panel-heading) > .panel-heading{margin-bottom:20px}

/* Bewerkknop onderaan een catalogus-kaart. */
.catalog-card{display:flex;flex-direction:column}
.catalog-card>p{flex:1}
.catalog-card-actions{display:flex;align-items:center;gap:10px;margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}
