:root { --ink:#17231f; --muted:#66736d; --line:#dbe2de; --wash:#f2f5f3; --green:#28784c; --orange:#f1a31a; }
* { box-sizing: border-box; }
body { margin:0; color:var(--ink); background:#fff; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:16px; line-height:1.65; }
a { color:var(--green); }
.legal-header { border-bottom:1px solid var(--line); background:#fff; }
.legal-header > div { width:min(1040px,calc(100% - 2rem)); min-height:88px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.legal-brands { display:flex; align-items:center; gap:1rem; }
.legal-brand { display:flex; align-items:center; gap:.65rem; color:var(--ink); text-decoration:none; line-height:1.1; }
.legal-brand > img { width:62px; height:62px; border-radius:50%; object-fit:contain; }
.legal-brand > span { display:grid; }
.legal-brand strong { font-size:1.15rem; }
.legal-brand small { margin-top:.28rem; color:var(--muted); font-size:.72rem; font-weight:700; }
.legal-parent { display:flex; align-items:center; gap:.45rem; border-left:1px solid var(--line); padding-left:1rem; color:var(--muted); text-decoration:none; font-size:.7rem; font-weight:750; }
.legal-parent img { width:50px; height:42px; object-fit:contain; }
.back-link { font-size:.84rem; font-weight:800; text-decoration:none; }
.legal-main { width:min(860px,calc(100% - 2rem)); margin:3.2rem auto 5rem; }
.legal-main h1 { margin:0 0 .6rem; font-size:clamp(2.3rem,6vw,4.4rem); line-height:1; letter-spacing:-.055em; }
.legal-main .lead { max-width:48rem; margin:0 0 1.4rem; color:var(--muted); font-size:1.02rem; }
.draft-note { margin:1.4rem 0 2rem; border-left:5px solid var(--orange); border-radius:0 12px 12px 0; padding:.9rem 1rem; background:#fff7e7; font-size:.86rem; }
.legal-main section { margin-top:2rem; }
.legal-main h2 { margin:0 0 .65rem; font-size:1.45rem; letter-spacing:-.025em; }
.legal-main h3 { margin:1.2rem 0 .45rem; font-size:1.02rem; }
.legal-main p, .legal-main li { color:#33413b; }
.legal-main ul, .legal-main ol { padding-left:1.3rem; }
.fact-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:.8rem; margin:1.5rem 0; }
.fact-grid article { border:1px solid var(--line); border-radius:14px; padding:1rem; background:var(--wash); }
.fact-grid strong { display:block; }
.fact-grid span { display:block; margin-top:.25rem; color:var(--muted); font-size:.84rem; }
.legal-table { width:100%; border-collapse:collapse; margin:1rem 0; font-size:.88rem; }
.legal-table th,.legal-table td { border:1px solid var(--line); padding:.65rem; text-align:left; vertical-align:top; }
.legal-table th { background:var(--wash); }
.form-sample { border:1px solid var(--line); border-radius:14px; padding:1rem; background:var(--wash); white-space:pre-line; }
.withdrawal-function { scroll-margin-top:1rem; border:2px solid var(--green); border-radius:18px; padding:1.4rem; background:#f7fbf8; box-shadow:0 20px 55px rgba(23,35,31,.1); }
.function-label { margin:0 0 .35rem!important; color:#ad6500!important; font-size:.72rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.withdrawal-form { margin-top:1.35rem; }
.withdrawal-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.withdrawal-grid label { display:grid; gap:.4rem; }
.withdrawal-grid label>span,.withdrawal-grid legend,.withdrawal-security label>span { font-size:.78rem; font-weight:800; }
.withdrawal-grid .wide { grid-column:1/-1; }
.withdrawal-grid input,.withdrawal-grid textarea,.withdrawal-security input { width:100%; border:1px solid #cbd6d0; border-radius:10px; padding:.7rem .8rem; color:var(--ink); background:#fff; font:inherit; }
.withdrawal-grid input:focus,.withdrawal-grid textarea:focus,.withdrawal-security input:focus { border-color:var(--green); outline:0; box-shadow:0 0 0 3px rgba(40,120,76,.14); }
.withdrawal-grid fieldset { display:flex; gap:1rem; margin:0; border:1px solid var(--line); border-radius:12px; padding:.8rem; }
.withdrawal-grid fieldset legend { padding:0 .3rem; }
.withdrawal-grid fieldset label { display:flex; align-items:center; gap:.45rem; }
.withdrawal-grid fieldset input { width:auto; accent-color:var(--green); }
.withdrawal-check { display:flex; align-items:flex-start; gap:.55rem; margin:1rem 0; font-size:.8rem; }
.withdrawal-check input { margin-top:.28rem; accent-color:var(--green); }
.withdrawal-security { display:flex; align-items:end; gap:1rem; border:1px solid var(--line); border-radius:12px; padding:.85rem; background:#fff; }
.withdrawal-security>div { display:grid; margin-right:auto; }
.withdrawal-security>div span { margin-top:.15rem; color:var(--muted); font-size:.76rem; }
.withdrawal-security label { width:110px; display:grid; gap:.3rem; }
.withdrawal-security button,.withdrawal-actions>button:first-child,.withdrawal-success button { min-height:42px; border:1px solid #cbd6d0; border-radius:9px; padding:.6rem .8rem; color:var(--ink); background:#fff; font-weight:800; cursor:pointer; }
.withdrawal-primary { display:inline-flex; align-items:center; justify-content:center; min-height:46px; margin-top:1rem; border:0; border-radius:10px; padding:.7rem 1.1rem; color:#fff; background:var(--green); font-weight:850; cursor:pointer; }
.withdrawal-primary:hover { background:#17613c; }
.withdrawal-primary:disabled { opacity:.6; cursor:wait; }
.withdrawal-hp { position:absolute!important; left:-10000px!important; }
.withdrawal-review-list { display:grid; gap:0; margin:1rem 0; border:1px solid var(--line); border-radius:12px; background:#fff; }
.withdrawal-review-list div { display:grid; grid-template-columns:minmax(150px,.35fr) 1fr; gap:1rem; padding:.7rem .85rem; border-bottom:1px solid #e9eeeb; }
.withdrawal-review-list div:last-child { border-bottom:0; }
.withdrawal-review-list dt { color:var(--muted); font-size:.75rem; font-weight:800; }
.withdrawal-review-list dd { margin:0; overflow-wrap:anywhere; }
.withdrawal-declaration { border-left:4px solid var(--orange); padding:.7rem .9rem; background:#fff8e9; }
.withdrawal-actions { display:flex; justify-content:flex-end; align-items:center; gap:.7rem; }
.withdrawal-actions .withdrawal-primary { margin:0; }
.withdrawal-success { text-align:center; padding:1.4rem; border-radius:14px; background:#eaf6ee; }
.withdrawal-success>span { width:3rem; height:3rem; display:grid; place-items:center; margin:0 auto .7rem; border-radius:50%; color:#fff; background:var(--green); font-size:1.4rem; font-weight:900; }
.withdrawal-success p { overflow-wrap:anywhere; }
.withdrawal-status { margin:.9rem 0 0; color:#17613c; font-size:.82rem; }
.withdrawal-status.error { color:#94352d; }
.withdrawal-footer-action { border-radius:999px; padding:.45rem .7rem!important; color:#fff!important; background:var(--green); }
.withdrawal-footer-action:hover { background:#17613c!important; }
.legal-footer { border-top:1px solid var(--line); background:#f7f9f8; }
.legal-footer > div { width:min(1040px,calc(100% - 2rem)); min-height:110px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.legal-footer-brand { display:flex; align-items:center; gap:.65rem; }
.legal-footer-brand > a:first-child img { width:54px; height:54px; border-radius:50%; object-fit:contain; }
.legal-footer-brand > span { display:grid; line-height:1.2; }
.legal-footer-brand small { margin-top:.2rem; color:var(--muted); font-size:.7rem; }
.legal-footer-femi { width:44px; height:38px; margin-left:.3rem; object-fit:contain; }
.legal-footer nav { display:flex; flex-wrap:wrap; gap:1rem; }
.legal-footer a { color:var(--ink); font-size:.78rem; font-weight:750; text-decoration:none; }
@media (max-width:650px) { .fact-grid{grid-template-columns:1fr}.legal-footer>div{align-items:flex-start;flex-direction:column;padding:1.5rem 0}.legal-header>div{min-height:74px}.legal-brand>img{width:48px;height:48px}.legal-brand strong{font-size:1rem}.legal-brand small,.legal-parent span{display:none}.legal-parent{padding-left:.55rem}.legal-parent img{width:36px;height:32px}.back-link{font-size:.76rem}.legal-main{margin-top:2.2rem}.withdrawal-grid{grid-template-columns:1fr}.withdrawal-grid .wide{grid-column:auto}.withdrawal-grid fieldset,.withdrawal-security,.withdrawal-actions{align-items:stretch;flex-direction:column}.withdrawal-security label{width:100%}.withdrawal-review-list div{grid-template-columns:1fr;gap:.2rem} }
@media print { .legal-header,.legal-footer,.withdrawal-function>p,.withdrawal-function>h2,#withdrawalEntry,#withdrawalReview,#printWithdrawal{display:none!important}.withdrawal-function{border:0;box-shadow:none;padding:0}.withdrawal-success{display:block!important}.legal-main{width:100%;margin:0} }
