/* GridPhotoMaker — premium editorial theme (global).
   Warm paper palette, Fraunces display serif + Space Mono labels, amber accents, crisp borders. */

:root{
  --bg:#f3ead8; --paper:#f3ead8;
  --panel:#fcf8ef; --panel-2:#f2e9d7;
  --ink:#231a12; --muted:#7c7060;
  --line:#e3d8c4; --edge:#231a12;
  --brand:#e0a010; --brand-d:#c0870a; --brand-soft:#f6e5bb;
  --accent:#2f7d5b;              /* muted green for "private/ok" */
  --danger:#bb4a2c;
  --radius:9px;
  --font-serif:"Fraunces",Georgia,"Times New Roman",serif;
  --font-mono:"Space Mono","IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --shadow-stamp:2px 2px 0 var(--edge);
}

html,body{background:var(--paper)}
body{font-family:var(--font-serif);color:var(--ink);-webkit-font-smoothing:antialiased;font-optical-sizing:auto}
h1,h2,h3,h4{font-family:var(--font-serif);font-weight:600;letter-spacing:-.01em}
a{color:var(--ink)}

/* ---- mono micro-type (labels, badges, meta) ---- */
.ge-eyebrow,.ge-label,.ge-step,.ge-kicker,.kicker,.field-label,.panel h2,
.badges span,.chip,.ge-chips span,.ge-summary,.ge-lcount,.ge-pick span,
.ge-fmt small,.ge-qpill,.ge-statusbox span,.ge-seg button,.ge-field legend,.ge-field label,
table.sz th,.result-feedback-label{
  font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;
}

/* ---- range sliders (amber thumb on oat track) ---- */
input[type=range]{-webkit-appearance:none;appearance:none;height:6px;border-radius:99px;
  background:linear-gradient(var(--panel-2),var(--panel-2));border:1px solid var(--line);outline:none}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;
  background:var(--brand);border:1.5px solid var(--edge);box-shadow:1px 1px 0 var(--edge);cursor:pointer}
input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--brand);
  border:1.5px solid var(--edge);box-shadow:1px 1px 0 var(--edge);cursor:pointer}
input[type=checkbox]{accent-color:var(--brand);width:15px;height:15px}

/* =================== SITE HEADER =================== */
.site-header{background:rgba(248,243,233,.9);backdrop-filter:blur(8px);border-bottom:1.5px solid var(--edge)}
.logo{font-family:var(--font-serif);font-weight:700;letter-spacing:-.02em;font-size:1.22rem}
.logo span{color:var(--brand-d)}
.logo svg rect[fill="#4f46e5"]{fill:var(--brand)}
.nav a{font-family:var(--font-mono);font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;font-weight:400;border-radius:6px}
.nav a:hover{background:var(--panel-2)}
.nav a.cta{background:var(--brand);color:var(--ink);border:1.5px solid var(--edge);box-shadow:var(--shadow-stamp);font-weight:700}
.nav a.cta:hover{background:var(--brand-d)}

/* =================== CONTENT SECTIONS =================== */
section.block{padding:52px 0}
section.block.alt{background:var(--panel);border-top:1.5px solid var(--edge);border-bottom:1.5px solid var(--edge)}
.block h2{font-size:1.9rem}
.block .lead{color:var(--muted);font-size:1.04rem}
.feat{background:var(--panel);border:1.5px solid var(--edge);border-radius:var(--radius);box-shadow:var(--shadow-stamp);transition:transform .12s,box-shadow .12s}
.alt .feat{background:var(--paper)}
.feat:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--edge)}
.feat h3{font-size:1.1rem}
.feat h3 a{color:var(--brand-d)}
.feat p{color:var(--muted)}
.steps li{background:var(--panel);border:1.5px solid var(--edge);border-radius:var(--radius);box-shadow:var(--shadow-stamp)}
.steps li:before{background:var(--brand);color:var(--ink);border:1.5px solid var(--edge);font-family:var(--font-mono)}
.steps span{color:var(--muted)}
.kicker{color:var(--brand-d);font-size:.75rem}

/* size table */
table.sz{border:1.5px solid var(--edge);box-shadow:var(--shadow-stamp);background:var(--panel)}
table.sz th{background:var(--panel-2);color:var(--muted);font-size:.72rem;border-bottom:1.5px solid var(--edge)}
table.sz td{border-bottom:1px solid var(--line)}

/* faq */
.faq details{background:var(--panel);border:1.5px solid var(--edge);border-radius:var(--radius)}
.faq summary{font-family:var(--font-serif);font-weight:600}
.faq summary:after{color:var(--brand-d)}
.faq details p{color:var(--muted)}

/* content / legal pages */
.page h1{font-family:var(--font-serif)}
.page p,.page li{color:#352c22}
.page a,.ge-fine a{color:var(--brand-d)}
.tool-head h1,.tool-head h2{font-family:var(--font-serif)}

/* =================== FOOTER =================== */
.site-footer{background:#1f1710;color:#cdbfa8;border-top:1.5px solid var(--edge)}
.site-footer b{color:#fff}
.site-footer a{color:#efe4cf;font-family:var(--font-mono);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}

/* =================== BATCH TOOL (collage.js page) =================== */
.tool-head{padding-top:34px}
.panel{background:var(--panel);border:1.5px solid var(--edge);border-radius:var(--radius)}
.panel h2{color:var(--muted);font-size:.74rem}
.btn{font-family:var(--font-serif);font-weight:600;border:1.5px solid var(--edge);border-radius:8px;
  background:var(--brand);color:var(--ink);box-shadow:var(--shadow-stamp)}
.btn:hover{background:var(--brand-d)}
.btn:active{transform:translate(2px,2px);box-shadow:none}
.btn.sec{background:var(--panel);color:var(--ink)}
.btn.sec:hover{background:var(--panel-2)}
.btn.ok{background:var(--ink);color:#fdf7ea}
.btn.ok:hover{background:#000}
.btn.del{background:#f9e7df;color:var(--danger)}
.btn.sm{box-shadow:1px 1px 0 var(--edge)}
.dz{border:2px dashed #c3b69c;background:var(--panel-2);border-radius:var(--radius)}
.dz.over{border-color:var(--brand-d);background:var(--brand-soft)}
.dz b{font-family:var(--font-serif)}
.row input[type=number],.row select,.row input[type=text],.sizes input{
  border:1.5px solid var(--line);border-radius:7px;background:var(--panel);font-family:var(--font-mono);font-size:.85rem}
.progress{background:var(--panel-2)}
.progress i{background:var(--brand)}
.card{background:var(--panel);border:1.5px solid var(--edge);border-radius:var(--radius)}
.stats,.status,.hint{color:var(--muted)}
