/* FormationWatch advisor portal — gold/dark brand theme (BRAND-NOTES.md). */
:root{
  --gold-l:#f8e6ac; --gold:#e0b552; --gold-d:#a9781c; --accent:#cfa23f; --gold-deep:#8a6a1e;
  --ink:#0b1310; --ink-2:#0f1a15; --panel:#11201a; --border:#1c2a24; --text:#e7efe9;
}
*{box-sizing:border-box}
body{margin:0;background:var(--ink);color:var(--text);
  font-family:Montserrat,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.55}
a{color:var(--gold);text-decoration:none}
main{max-width:920px;margin:0 auto;padding:28px 20px 80px}
h1{font-weight:800;letter-spacing:-.01em;color:#fff;margin:.2em 0 .4em}
h2,h3{color:#fff;font-weight:700}
.muted{color:var(--muted)} .tiny{font-size:.8rem} .err{color:var(--bad)}
/* top bar */
.fw-top{display:flex;align-items:center;justify-content:space-between;
  padding:14px 20px;border-bottom:1px solid var(--border);background:var(--ink-2);
  position:sticky;top:0;z-index:30}
.fw-brand{font-weight:800;font-size:1.15rem;color:#fff;letter-spacing:-.01em}
.fw-brand span{color:var(--gold)} .fw-brand em{font-style:normal;color:var(--gold-deep);
  font-size:.7rem;margin-left:8px;letter-spacing:.18em;text-transform:uppercase}
/* avatar + settings menu */
.fw-nav{position:relative}
.fw-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;
  border-radius:50%;background:linear-gradient(160deg,var(--gold-l),var(--gold-d));
  color:#1a1408;font-weight:800;cursor:pointer;outline:none}
.fw-menu{position:absolute;right:0;top:46px;min-width:210px;background:var(--panel);
  border:1px solid var(--border);border-radius:12px;padding:6px;display:none;
  box-shadow:0 18px 50px rgba(0,0,0,.5)}
.fw-avatar:hover .fw-menu,.fw-avatar:focus .fw-menu,.fw-menu:hover{display:block}
.fw-menu a{display:block;padding:9px 12px;border-radius:8px;color:var(--text)}
.fw-menu a:hover{background:var(--ink)}
.fw-menu-head{padding:9px 12px 11px;border-bottom:1px solid var(--border);margin-bottom:6px;
  font-weight:700;color:#fff;display:flex;flex-direction:column}
.fw-menu-head small{color:var(--muted);font-weight:500;margin-top:2px}
.fw-logout{color:var(--gold)!important;border-top:1px solid var(--border);margin-top:6px}
/* login */
.fw-login{max-width:420px;margin:8vh auto;background:var(--panel);border:1px solid var(--border);
  border-radius:16px;padding:30px}
.fw-login label{display:block;margin:16px 0 6px;font-size:.9rem;color:var(--muted)}
.fw-login input,textarea{width:100%;padding:11px 12px;border-radius:10px;background:var(--ink);
  border:1px solid var(--border);color:var(--text);font:inherit}
button{margin-top:18px;background:linear-gradient(160deg,var(--gold-l),var(--gold));color:#1a1408;
  font-weight:800;border:0;border-radius:10px;padding:11px 18px;cursor:pointer}
/* list */
.fw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:18px}
.fw-card{display:block;background:var(--panel);border:1px solid var(--border);border-radius:14px;
  padding:16px;position:relative;transition:border-color .15s,transform .15s}
.fw-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.fw-card h3{margin:0 0 28px;font-size:1.02rem}
.fw-card p{margin:0;color:var(--muted);font-size:.86rem}
.badge{position:absolute;top:14px;right:14px;font-size:.62rem;font-weight:800;letter-spacing:.08em;
  text-transform:uppercase;padding:3px 8px;border-radius:999px;border:1px solid}
.badge.mixed,.badge.mixedweak,.badge.mixedtoweak{color:var(--warn);border-color:var(--warn)}
.badge.weak,.badge.weaktomixed{color:var(--bad);border-color:var(--bad)}
/* doc + watermark + protection */
.fw-doc{position:relative;z-index:1;
  -webkit-user-select:none;-moz-user-select:none;user-select:none}
.fw-doc h1{margin-top:0}
.fw-doc table{width:100%;border-collapse:collapse;margin:14px 0}
.fw-doc th,.fw-doc td{border:1px solid var(--border);padding:7px 9px;text-align:left;font-size:.86rem}
.fw-doc th{background:var(--ink-2);color:var(--gold)}
.fw-doc code{background:var(--ink-2);padding:1px 5px;border-radius:5px}
.fw-watermark{position:fixed;inset:0;z-index:2;pointer-events:none;overflow:hidden;
  display:flex;flex-wrap:wrap;gap:54px 64px;transform:rotate(-30deg) scale(1.5);opacity:.06}
.fw-watermark span{font-size:.72rem;font-weight:700;white-space:nowrap;color:#fff}
.fw-blur{position:fixed;inset:0;z-index:40;display:none;align-items:center;justify-content:center;
  backdrop-filter:blur(22px);background:rgba(7,12,10,.6);color:var(--muted);font-weight:700}
body.fw-unfocused .fw-blur{display:flex}
body.fw-unfocused .fw-doc{filter:blur(14px)}
@media print{ body{display:none!important} }   /* hard block print */
.fw-feedback{margin-top:34px;background:var(--panel);border:1px solid var(--border);
  border-radius:14px;padding:18px;position:relative;z-index:3}
/* Users admin + NDA */
.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
form.inline{display:inline-flex;gap:6px;align-items:center;margin:0}
form.inline select{padding:5px 7px;border-radius:7px;background:var(--ink);border:1px solid var(--border);color:var(--text)}
button.sm{margin:0;padding:6px 11px;font-size:.78rem}
button.danger{background:linear-gradient(160deg,#e08a8a,#c25555);color:#1a0808}
.add-grid{display:grid;grid-template-columns:1.3fr 1.6fr .9fr auto;gap:10px;align-items:center;margin-top:10px}
.add-grid input,.add-grid select{padding:10px;border-radius:9px;background:var(--ink);border:1px solid var(--border);color:var(--text);font:inherit}
.add-grid button{margin:0}
@media(max-width:680px){.add-grid{grid-template-columns:1fr}}
.fw-notice{background:rgba(224,181,82,.1);border:1px solid var(--gold-d);border-radius:12px;padding:14px 16px;margin:12px 0}
.fw-temp{display:inline-block;font-size:1.05rem;font-weight:800;letter-spacing:.04em;color:var(--gold-l);
  background:var(--ink);padding:4px 10px;border-radius:7px;margin:6px 0;user-select:all}
.nda-check{display:flex;gap:10px;align-items:flex-start;color:var(--text)}
.nda-check input{width:auto;margin-top:4px}
/* dossier sub-nav + comments */
.fw-subnav{position:relative;z-index:3;margin:0 0 14px}
.fw-subnav a{color:var(--gold);font-weight:700;font-size:.9rem}
.cmt{border:1px solid var(--border);border-radius:10px;padding:11px 13px;margin:10px 0;background:var(--ink-2)}
.cmt.retracted{opacity:.62}
.cmt.retracted .cmt-body{text-decoration:line-through}
.cmt-meta{color:var(--muted);font-size:.76rem;margin-bottom:5px}
.cmt-meta .rt{color:var(--bad);font-weight:700;text-decoration:none}
.cmt-body{white-space:pre-wrap;color:var(--text);font-size:.92rem}
.cmt-act{display:flex;gap:8px;margin-top:9px}
.cmt-act form{margin:0}
.cmt-form{margin-top:14px}
.nda-name-l{display:block;color:var(--muted);font-size:.9rem;margin:0 0 14px}
.nda-name{display:block;width:100%;max-width:440px;margin-top:6px;padding:10px 12px;border-radius:9px;background:var(--ink);border:1px solid var(--border);color:var(--text);font:inherit}
/* logo + login motion graphic */
.fw-brand{display:inline-flex;align-items:center;gap:10px}
.fw-emblem{height:30px;width:auto;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}
.fw-word{font-weight:800}
main.bare{max-width:none;margin:0;padding:0}
.fw-login-hero{position:relative;min-height:calc(100vh - 58px);display:flex;align-items:center;
  justify-content:center;overflow:hidden;background:var(--ink)}
.fw-login-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.fw-login-overlay{position:absolute;inset:0;z-index:1;
  background:radial-gradient(circle at 50% 40%, rgba(11,19,16,.40), rgba(11,19,16,.88))}
.fw-login-hero .fw-login{position:relative;z-index:2;margin:0;
  background:rgba(15,26,21,.82);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
@media (prefers-reduced-motion: reduce){ .fw-login-bg{display:none} }
