/* Platform pages (login, my course, legal, contact, buy, admin) + shared footer and cookie notice.
   Builds on style.css (the course's own tokens: ink/cream/paper/brass, Frank Ruhl Libre + Assistant). */
:root{--pf-focus:#735C33;--pf-err:#7A2E22;--pf-ok:#3F5A3B}
.pf-page{background:var(--paper,#F5F0E7);color:var(--text,#22231C);min-height:100vh;display:flex;flex-direction:column}
.pf-page main{flex:1}
.pf-skip{position:absolute;inset-inline-start:12px;top:-60px;z-index:100;background:var(--ink,#1C1D17);color:var(--cream,#ECE3D4);padding:10px 16px;text-decoration:none;font-weight:600}
.pf-skip:focus{top:12px}
.pf-page :focus-visible,.pf-footer :focus-visible,.pf-cookie :focus-visible{outline:3px solid var(--pf-focus);outline-offset:3px}
.pf-page .pf-top :focus-visible,.pf-footer :focus-visible,.pf-cookie :focus-visible,.pf-skip:focus-visible{outline-color:#ECE3D4}
.pf-top{background:var(--ink,#1C1D17);color:var(--cream,#ECE3D4);border-bottom:1px solid var(--line-dark,#3A3B33)}
.pf-top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;flex-wrap:wrap}
.pf-top .wordmark{font-family:var(--serif);letter-spacing:0;font-size:19px;text-decoration:none;color:inherit}
.pf-top nav ul{display:flex;gap:20px;list-style:none;margin:0;padding:0;font-size:16px}
.pf-top nav a{color:inherit;text-decoration:none;border-bottom:1px solid transparent}
.pf-top nav a:hover,.pf-top nav a[aria-current="page"]{border-bottom-color:var(--brass,#A88A5A)}
.pf-narrow{max-width:640px;margin:0 auto;padding:56px var(--gutter,20px) 72px;width:100%}
.pf-doc{max-width:780px;margin:0 auto;padding:48px var(--gutter,20px) 72px;width:100%}
.pf-narrow h1,.pf-doc h1{font-size:clamp(32px,5vw,48px);margin:0 0 14px}
.pf-doc h2{font-size:clamp(23px,3vw,29px);margin:38px 0 10px;padding-top:12px;border-top:1px solid var(--line,#D9D0C0)}
.pf-doc h3{font-size:20px;margin:22px 0 6px}
.pf-doc p,.pf-doc li{max-width:68ch}
.pf-doc ul,.pf-doc ol{padding-inline-start:22px}
.pf-doc li{margin:6px 0}
.pf-lead{font-size:20px;color:var(--muted,#66604F)}
.pf-meta{font-size:15px;color:var(--muted,#66604F)}
.pf-toc{background:#fff;border:1px solid var(--line,#D9D0C0);padding:16px 22px;margin:22px 0}
.pf-toc ol{margin:6px 0 0;columns:2 220px}
.pf-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:16px;background:#fff}
.pf-table th,.pf-table td{border:1px solid var(--line,#D9D0C0);padding:10px 12px;text-align:start;vertical-align:top}
.pf-table th{background:var(--paper-2,#EBE4D7);font-weight:600}
/* buttons and forms */
.pf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 17px/1.2 var(--sans);padding:14px 28px;min-height:48px;border:1px solid var(--ink,#1C1D17);background:var(--ink,#1C1D17);color:var(--cream,#ECE3D4);cursor:pointer;text-decoration:none;border-radius:var(--r,2px)}
.pf-btn:hover{background:#30312A}
.pf-btn[disabled]{opacity:.6;cursor:progress}
.pf-btn-ghost{background:transparent;color:var(--ink,#1C1D17)}
.pf-btn-ghost:hover{background:var(--paper-2,#EBE4D7)}
.pf-btn-sm{padding:8px 16px;min-height:40px;font-size:15px}
.pf-form{display:grid;gap:18px;margin:26px 0}
.pf-field{display:grid;gap:6px}
.pf-field label,.pf-legend{font-weight:600;font-size:16px}
.pf-field .pf-hint{font-size:14px;color:var(--muted,#66604F)}
.pf-field input,.pf-field textarea,.pf-field select{font:400 17px/1.5 var(--sans);padding:12px 14px;border:1px solid #8C8574;background:#fff;color:var(--text,#22231C);border-radius:var(--r,2px);width:100%}
.pf-field input[type="email"],.pf-field input[dir="ltr"]{text-align:left;direction:ltr}
.pf-field textarea{min-height:160px;resize:vertical}
.pf-field [aria-invalid="true"]{border-color:var(--pf-err);border-width:2px}
.pf-error{color:var(--pf-err);font-size:15px;font-weight:600}
.pf-check{display:flex;gap:10px;align-items:flex-start;font-size:16px}
.pf-check input{width:22px;height:22px;margin-top:4px;flex:none;accent-color:var(--ink,#1C1D17)}
.pf-status{padding:14px 16px;border-inline-start:4px solid var(--brass,#A88A5A);background:#fff;font-size:16px}
.pf-status[data-kind="error"]{border-color:var(--pf-err)}
.pf-status[data-kind="ok"]{border-color:var(--pf-ok)}
.pf-status:empty{display:none}
.pf-hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pf-card{background:#fff;border:1px solid var(--line,#D9D0C0);padding:22px 24px;margin:18px 0}
.pf-price{font-family:var(--serif);font-size:44px;line-height:1}
.pf-alt{margin-top:30px;padding-top:18px;border-top:1px solid var(--line,#D9D0C0)}
.pf-alt ul{list-style:none;padding:0;display:grid;gap:8px}
/* unfilled config values are visible on purpose */
.cfg-missing{background:#F1E3B8;outline:1px dashed #735C33;padding:0 3px;color:#22231C}
/* draft banners (DRAFT_LEGAL=true only) */
.draft-banner{background:#F1E3B8;color:#22231C;border-bottom:2px solid #735C33;padding:10px 16px;text-align:center;font-weight:700;font-size:16px}
.lawyer{display:block;margin:8px 0 14px;padding:8px 12px;border-inline-start:3px solid #735C33;background:#F6EBCB;font-size:14px;color:#3a3420}
.lawyer::before{content:"לבדיקת עו\"ד: ";font-weight:700}
/* shared footer */
.pf-footer{background:var(--ink,#1C1D17);color:var(--cream,#ECE3D4);margin-top:auto}
.pf-footer-in{max-width:var(--maxw,1180px);margin:0 auto;padding:28px var(--gutter,20px) 34px}
.pf-footer-links{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:10px 22px;font-size:15px}
.pf-footer a{color:var(--cream,#ECE3D4)}
.pf-footer-legal{margin:0;font-size:13px;color:#BDB5A5}
/* cookie notice: informational, never blocks the page */
.pf-cookie{position:fixed;inset-inline:12px;bottom:12px;z-index:90;max-width:640px;margin-inline:auto;background:var(--ink,#1C1D17);color:var(--cream,#ECE3D4);padding:14px 18px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;box-shadow:0 6px 24px rgba(0,0,0,.25);font:400 15px/1.6 var(--sans,"Assistant",sans-serif)}
.pf-cookie[hidden]{display:none}
.pf-cookie p{margin:0;flex:1 1 280px}
.pf-cookie a{color:var(--cream,#ECE3D4)}
.pf-cookie .pf-btn{background:var(--cream,#ECE3D4);color:var(--ink,#1C1D17);border-color:var(--cream,#ECE3D4)}
/* admin */
.pf-admin{max-width:1100px}
.pf-admin pre{background:#fff;border:1px solid var(--line,#D9D0C0);padding:12px;overflow:auto;font-size:13px;direction:ltr;text-align:left;max-height:420px}
.pf-admin section{margin:26px 0}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* admin dashboard */
.adm-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.adm-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.adm-row{display:flex;gap:10px;flex-wrap:wrap}
.adm-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin:14px 0}
.adm-tile{background:#fff;border:1px solid var(--line,#D9D0C0);padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.adm-tile span{font-size:14px;color:var(--muted,#66604F)}
.adm-tile strong{font-size:26px;font-weight:600;line-height:1.1}
.adm-table{overflow-x:auto;background:#fff;border:1px solid var(--line,#D9D0C0)}
.adm-table table{width:100%;border-collapse:collapse;font-size:14px}
.adm-table th,.adm-table td{padding:9px 12px;border-bottom:1px solid var(--line,#D9D0C0);text-align:right;vertical-align:top;white-space:nowrap}
.adm-table th{font-weight:600;background:#FBF8F2}
.adm-table .pf-meta{padding:12px;margin:0}
.adm-msg{white-space:pre-wrap;min-width:220px;max-width:420px}
.adm-search input{min-height:40px;padding:6px 12px;border:1px solid var(--line,#D9D0C0);font:inherit;width:240px;max-width:100%}
.pf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pf-admin{min-width:0;overflow-x:hidden}
.adm-table{max-width:100%}
.adm-top .pf-btn-ghost{color:#F3EEE4;border-color:rgba(243,238,228,.55);background:transparent}
.adm-link{margin-top:14px;display:grid;gap:8px}.adm-link input{flex:1 1 320px;min-height:40px;padding:6px 10px;border:1px solid var(--line,#D9D0C0);font:14px/1.4 monospace;background:#fff}
