/* Klantportaal Jachtspuiterij Urk — eigen, lichte stylesheet */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#0a0f1e; --navy2:#0d1628; --blue:#1a2a4a;
  --gold:#b8976a; --gold2:#d4af7a; --light:#f5f3ef;
  --white:#fff; --grey:#8a8f9a; --border:rgba(184,151,106,.25);
  --green:#2a5a2a; --green2:#7cc77c; --red:#5a2a2a; --red2:#e0a0a0;
}
body{font-family:'Inter',sans-serif;background:var(--navy);color:var(--light);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}

/* nav */
.p-nav{display:flex;align-items:center;gap:1.2rem;padding:1.1rem 2rem;background:var(--navy2);border-bottom:1px solid var(--border)}
.p-logo{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:300;letter-spacing:.16em;text-transform:uppercase;color:var(--white);text-decoration:none}
.p-logo span{color:var(--gold)}
.p-nav-label{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);border-left:1px solid var(--border);padding-left:1.2rem}
.p-logout{margin-left:auto;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);text-decoration:none;border:1px solid var(--border);padding:.45rem 1.1rem;transition:.2s}
.p-logout:hover{border-color:var(--gold);color:var(--gold)}

/* main */
.p-main{flex:1;width:100%;max-width:860px;margin:0 auto;padding:3rem 1.5rem}
.p-footer{text-align:center;padding:2rem 1.5rem;border-top:1px solid var(--border);font-size:.78rem;color:var(--grey);display:flex;flex-direction:column;gap:.5rem}
.p-footer a{color:var(--gold);text-decoration:none}

/* koppen */
h1{font-family:'Cormorant Garamond',serif;font-weight:300;font-size:clamp(1.8rem,4vw,2.6rem);color:var(--white);margin-bottom:.4rem;line-height:1.15}
h1 em{font-style:italic;color:var(--gold2)}
h2{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:1.5rem;color:var(--white);margin:2rem 0 1rem}
.p-sub{color:var(--grey);margin-bottom:2rem}
.gold-line{width:48px;height:1px;background:var(--gold);margin:1.2rem 0 2rem}

/* kaarten */
.card{background:var(--navy2);border:1px solid var(--border);padding:1.6rem 1.8rem;margin-bottom:1.2rem}
.card h3{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:1.3rem;color:var(--white);margin-bottom:.3rem}
.card p{color:rgba(245,243,239,.72);font-weight:300;font-size:.92rem}
.card-link{display:block;text-decoration:none;color:inherit;transition:border-color .2s}
.card-link:hover{border-color:var(--gold)}

/* badges/status */
.badge{display:inline-block;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .8rem;border-radius:2px;border:1px solid var(--border);color:var(--gold)}
.badge.groen{color:var(--green2);border-color:rgba(124,199,124,.4)}
.badge.wacht{color:var(--gold2);border-color:var(--gold)}
.badge.grijs{color:var(--grey)}

/* tijdlijn fases */
.fase{display:grid;grid-template-columns:auto 1fr;gap:1.2rem;padding-bottom:1.6rem;position:relative}
.fase:not(:last-child)::before{content:'';position:absolute;left:11px;top:28px;bottom:0;width:1px;background:var(--border)}
.fase-bol{width:24px;height:24px;border-radius:50%;border:1px solid var(--gold);background:var(--navy);z-index:1;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--gold)}
.fase-bol.klaar{background:var(--gold);color:var(--navy)}
.fase-bol.wacht{border-color:var(--gold2);box-shadow:0 0 0 3px rgba(212,175,122,.15)}
.fase-body h3{font-family:'Cormorant Garamond',serif;font-weight:400;font-size:1.2rem;color:var(--white);margin-bottom:.2rem}
.fase-body p{color:rgba(245,243,239,.65);font-weight:300;font-size:.9rem;margin-bottom:.6rem}

/* knoppen */
.btn{display:inline-block;background:var(--gold);color:var(--navy);border:none;padding:.85rem 2rem;font-family:'Inter',sans-serif;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;cursor:pointer;text-decoration:none;transition:.2s}
.btn:hover{background:var(--gold2)}
.btn-rand{background:transparent;border:1px solid var(--border);color:var(--light)}
.btn-rand:hover{border-color:var(--gold);color:var(--gold)}

/* formulieren */
label{display:block;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--grey);margin-bottom:.4rem}
input[type=text],input[type=email],input[type=password]{width:100%;background:rgba(255,255,255,.04);border:1px solid var(--border);color:var(--light);padding:.85rem 1rem;font-family:'Inter',sans-serif;font-size:.95rem;margin-bottom:1.2rem}
input:focus{outline:none;border-color:var(--gold)}
.checkbox-rij{display:flex;gap:.7rem;align-items:flex-start;margin:1rem 0;font-size:.9rem;color:rgba(245,243,239,.8);font-weight:300}
.checkbox-rij input{margin-top:.25rem}
.checkbox-rij a{color:var(--gold2)}

/* meldingen */
.melding{padding:1rem 1.2rem;margin-bottom:1.5rem;font-size:.9rem;border:1px solid}
.melding.ok{background:rgba(42,90,42,.2);border-color:rgba(124,199,124,.4);color:var(--green2)}
.melding.fout{background:rgba(90,42,42,.2);border-color:rgba(224,160,160,.4);color:var(--red2)}
.melding.info{background:rgba(184,151,106,.08);border-color:var(--border);color:rgba(245,243,239,.8)}

/* inspectie-tekst */
.inspectie{white-space:pre-wrap;background:var(--navy2);border:1px solid var(--border);border-left:2px solid var(--gold);padding:1.4rem 1.6rem;color:rgba(245,243,239,.8);font-weight:300;font-size:.92rem}

/* getekend-bevestiging */
.getekend-info{font-size:.82rem;color:var(--grey);margin-top:.8rem;line-height:1.6}

.center{text-align:center}
.muted{color:var(--grey);font-size:.85rem}
@media(max-width:600px){.p-main{padding:2rem 1.2rem}.p-nav{padding:1rem 1.2rem;flex-wrap:wrap}}

/* foto-kiezer: camera + galerij knoppen */
.fotokiezer{margin-bottom:1rem}
.fotokiezer input[type=file]{display:none}
.fk-knoppen{display:flex;gap:.6rem;flex-wrap:wrap}
.fk-btn{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.04);border:1px solid var(--border);color:var(--light);padding:.7rem 1.2rem;font-size:.85rem;cursor:pointer;transition:.2s;font-family:'Inter',sans-serif}
.fk-btn:hover{border-color:var(--gold);color:var(--gold)}
.fk-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.fk-naam{font-size:.8rem;color:var(--gold2);margin-top:.5rem;word-break:break-word}

/* inklapbare secties (klant) */
.sectie{border:1px solid var(--border);margin-bottom:1rem;background:var(--navy2)}
.sectie>summary{list-style:none;cursor:pointer;padding:1.1rem 1.4rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-family:'Cormorant Garamond',serif;font-size:1.35rem;color:var(--white);user-select:none}
.sectie>summary::-webkit-details-marker{display:none}
.sectie>summary:hover{background:rgba(184,151,106,.05)}
.sectie>summary .sec-rechts{display:flex;align-items:center;gap:.8rem}
.sectie>summary .chevron{font-family:'Inter',sans-serif;color:var(--gold);transition:transform .2s;font-size:.9rem}
.sectie[open]>summary .chevron{transform:rotate(180deg)}
.sectie .sec-inhoud{padding:0 1.4rem 1.4rem}
.sectie[open]>summary{border-bottom:1px solid var(--border);margin-bottom:1rem}

/* "nieuw"-markering sinds vorig bezoek */
.badge.nieuw{background:var(--gold);color:var(--navy);border-color:var(--gold);font-weight:600}
