/* WebMK admin - tokens mirror the portfolio site (webmk-fable/public/css/styles.css).
   Keep them in sync by hand; these pages are deliberately dependency-free. */
:root{
  --maroon:#7a0c0c; --maroon-deep:#5e0909; --maroon-soft:#f6e7e7;
  --ink:#0f0f0f; --body:#5f5f5f; --muted:#888888;
  --white:#fff; --page-bg:#f7f7f7;
  --border-light:#e1e1e1; --field-bg:#f1f1f1;
  --chip-border:rgba(95,95,95,.28);
  --tint-pink:#fff2f2; --tint-cream:#fffcf0; --tint-blue:#f0fbff;
  --gold:#8a6d00;
  --radius-header:20px; --radius-card:30px; --radius-item:22px; --radius-btn:50px; --radius-icon:14px;
  --shadow-soft:0 1px 2px rgba(60,10,10,.04), 0 8px 24px rgba(60,10,10,.05);
  --shadow-lift:0 2px 4px rgba(60,10,10,.05), 0 16px 40px rgba(60,10,10,.08);
  --font-display:"degular-display","degular","Helvetica Neue",Helvetica,Arial,sans-serif;
  --font-text:"degular-text","degular","Helvetica Neue",Helvetica,Arial,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-text);font-size:16px;line-height:1.5;color:var(--body);
  background:var(--page-bg);padding:24px 24px 120px;min-height:100dvh;-webkit-font-smoothing:antialiased}
/* The site's section washes, as one quiet glow behind the page. */
body::before{content:"";position:fixed;inset:0 0 auto 0;height:520px;z-index:-1;pointer-events:none;
  background:radial-gradient(60% 80% at 15% 0%, var(--tint-pink) 0%, rgba(255,242,242,0) 70%),
             radial-gradient(50% 70% at 90% 10%, var(--tint-cream) 0%, rgba(255,252,240,0) 70%)}
.wrap{max-width:880px;margin:0 auto}

/* ---- header: the site's floating white bar, with the tools inside it ---- */
header{display:flex;align-items:center;gap:20px;background:var(--white);border-radius:var(--radius-header);
  padding:14px 16px 14px 22px;margin-bottom:36px;box-shadow:var(--shadow-soft)}
.brand{display:flex;align-items:baseline;gap:10px;text-decoration:none}
.logo{font-family:var(--font-display);font-size:23px;text-transform:uppercase;color:var(--maroon);line-height:1.2;letter-spacing:-.01em}
.product{font-size:14px;color:var(--muted)}
.tools{display:flex;gap:2px;flex:1;flex-wrap:wrap}
.tools[hidden]{display:none}
.tools a{font-size:15px;color:var(--body);text-decoration:none;border-radius:var(--radius-btn);padding:7px 14px;
  transition:color .2s,background-color .2s}
.tools a:hover{color:var(--ink);background:var(--page-bg)}
.tools a[aria-current]{color:var(--maroon);background:var(--tint-pink)}
.session{display:flex;align-items:center;gap:12px;min-width:0;margin-left:auto}
.who{font-size:14px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}
.session button.link{font-size:14px;color:var(--muted);padding:6px 12px;border:1px solid var(--chip-border);border-radius:var(--radius-btn)}
.session button.link:hover{color:var(--ink);border-color:var(--body);text-decoration:none}

/* ---- page heading ---- */
.client-id{display:flex;align-items:center;gap:12px;margin-bottom:6px;min-height:28px}
.client-id img{max-height:40px;max-width:220px;width:auto;display:block}
.client-name{font-size:15px;color:var(--muted)}
.client-id.has-logo .client-name{display:none}
h1{font-family:var(--font-display);font-weight:600;font-size:44px;line-height:1.05;letter-spacing:-.025em;color:var(--ink);margin-bottom:24px;text-wrap:balance}
h1 em{font-style:normal;color:var(--maroon)}
h2{font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:-.015em;color:var(--ink)}

/* ---- fields ---- */
label{display:block;font-size:14px;color:var(--body);margin-bottom:7px}
select,input,textarea{font:inherit;font-size:16px;color:var(--ink);background:var(--field-bg);
  border:1.5px solid transparent;border-radius:14px;padding:12px 14px;width:100%;
  transition:border-color .2s,background-color .2s,box-shadow .2s}
input::placeholder,textarea::placeholder{color:#a3a3a3}
select:hover,input:hover,textarea:hover{background:#ececec}
select:focus,input:focus,textarea:focus{outline:none;border-color:var(--maroon);background:var(--white);box-shadow:0 0 0 4px rgba(122,12,12,.08)}
textarea{min-height:110px;resize:vertical;line-height:1.5}
input[type=checkbox]{accent-color:var(--maroon);width:18px;height:18px}
.field{margin-bottom:18px}
.row{display:flex;gap:14px;flex-wrap:wrap}.row>*{flex:1;min-width:180px}
.hint{font-size:14px;color:var(--muted);margin-top:6px;line-height:1.45}

/* ---- surfaces ---- */
.card{background:var(--white);border-radius:var(--radius-card);padding:30px;margin-bottom:14px;box-shadow:var(--shadow-soft)}
.item{display:flex;align-items:center;gap:14px;background:var(--white);
  border-radius:var(--radius-item);padding:16px 18px;margin-bottom:10px;box-shadow:var(--shadow-soft);
  transition:box-shadow .25s var(--ease),transform .25s var(--ease)}
.item:hover{box-shadow:var(--shadow-lift)}
.item .title{flex:1;color:var(--ink);font-size:17px}
.item .badge{font-size:13px;color:var(--maroon);background:var(--tint-pink);border-radius:var(--radius-btn);padding:4px 12px}
.picker{background:var(--white);border-radius:var(--radius-header);padding:18px 22px;margin-bottom:22px;box-shadow:var(--shadow-soft)}

/* ---- buttons: the site's pills ---- */
button{font:inherit;font-size:15px;cursor:pointer;border:1px solid transparent;border-radius:var(--radius-btn);
  background:var(--white);color:var(--ink);padding:10px 20px;
  transition:background-color .2s,color .2s,border-color .2s,transform .12s var(--ease),box-shadow .2s;
  display:inline-flex;align-items:center;gap:8px;line-height:1.2}
button:hover{border-color:var(--chip-border)}
button:active{transform:scale(.97)}
button:focus-visible,a:focus-visible{outline:2px solid var(--maroon);outline-offset:2px}
button.primary{background:var(--maroon);color:var(--white);border-color:var(--maroon)}
button.primary:hover{background:var(--maroon-deep);border-color:var(--maroon-deep)}
/* The arrow badge from the site's main button. */
button .badge-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;
  margin:-6px -12px -6px 4px;border-radius:50%;background:var(--white);color:var(--maroon)}
button.ghost{background:transparent;border-color:var(--chip-border);color:var(--body)}
button.ghost:hover{border-color:var(--body);color:var(--ink)}
button.icon{padding:8px;background:transparent;color:var(--muted);border-radius:var(--radius-icon)}
button.icon:hover{background:var(--page-bg);color:var(--ink);border-color:transparent}
button.icon.danger:hover{background:var(--tint-pink);color:var(--maroon)}
button.link{background:none;color:var(--maroon);padding:6px 0;border:0}
button.link:hover{text-decoration:underline}
button:disabled{opacity:.4;cursor:default;transform:none}
button svg{width:18px;height:18px;flex:none}

/* ---- chips: outlined pills, filled when on ---- */
.chip{display:inline-flex;align-items:center;gap:6px;font-size:14px;padding:7px 14px;
  background:var(--white);border:1px solid var(--chip-border);border-radius:var(--radius-btn);color:var(--body)}
.chip:hover{border-color:var(--body);color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--white)}

/* ---- messages ---- */
.bar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:22px;flex-wrap:wrap}
.msg{font-size:15px}.msg.err{color:var(--maroon)}.msg.ok{color:var(--body)}
.muted{color:var(--muted);font-size:15px}
.thumb{width:56px;height:56px;object-fit:cover;border-radius:14px}
.imgrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap}

@media (max-width:640px){
  body{padding:12px 16px 120px}
  header{flex-wrap:wrap;padding:12px 14px 12px 18px;gap:10px;margin-bottom:26px}
  .tools{order:3;flex-basis:100%;margin:0 -6px}
  .who{display:none}
  .card{padding:22px 18px;border-radius:24px}
  h1{font-size:34px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
