/* ============================================================
   THEME TOKENS, edit these to reskin the whole site
   ============================================================ */
:root[data-theme="night"]{
  --bg:#15120d; --bg-2:#1c1811; --surface:#221d15; --surface-2:#2a2419;
  --border:#39311f; --fg:#f1e9d8; --fg-2:#b7ac96; --fg-3:#877c6a;
  --accent:#8fb0cc; --accent-fg:#101820; --header-bg:rgba(21,18,13,.82);
  --radius:4px; --photo-filter:saturate(.82) contrast(1.03);
}
:root[data-theme="day"]{
  --bg:#f2ecdd; --bg-2:#e9e1ce; --surface:#fbf7ec; --surface-2:#f3ecdb;
  --border:#dccfb4; --fg:#241f16; --fg-2:#5b5344; --fg-3:#867c68;
  --accent:#3a6a90; --accent-fg:#fbf7ec; --header-bg:rgba(242,236,221,.85);
  --radius:4px; --photo-filter:saturate(.9) contrast(1.02);
}

/* ============================================================
   BASE
   ============================================================ */
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--fg);font-family:'Newsreader',Georgia,serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block}
a{color:inherit}
input,textarea,button{font-family:inherit}
::selection{background:var(--accent);color:var(--accent-fg)}

.wrap{max-width:1220px;margin:0 auto}
.section{padding:clamp(56px,8vw,110px) clamp(18px,5vw,72px);scroll-margin-top:70px}
.section--alt{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}

/* Type helpers */
.mono{font-family:'Space Mono',monospace}
.oswald{font-family:'Oswald',sans-serif}
.eyebrow{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
.h2{font-family:'Newsreader',serif;font-weight:500;font-size:clamp(28px,4.4vw,50px);line-height:1.06;letter-spacing:-.012em;color:var(--fg);margin:14px 0 12px}
.lead{font-size:16.5px;line-height:1.55;color:var(--fg-2);margin:0}
.section-head{max-width:60ch;margin-bottom:clamp(34px,4vw,52px)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:9px;padding:15px 24px;font-family:'Oswald',sans-serif;font-weight:600;font-size:14px;letter-spacing:.06em;text-transform:uppercase;border-radius:2px;text-decoration:none;cursor:pointer;border:1px solid transparent}
.btn-primary{background:var(--accent);color:var(--accent-fg)}
.btn-ghost{background:transparent;color:var(--fg);border-color:var(--border)}
.icon-btn{width:40px;height:40px;border-radius:99px;border:1px solid var(--border);background:transparent;color:var(--fg);cursor:pointer;font-size:16px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
/* Invisible admin entry: an unmarked, clickable spot at the far right of the header.
   No visual indicator by design (opacity 0); still clickable. Mark/Gerry know it's there. */
.admin-secret{border-color:transparent;background:transparent;opacity:0}

/* ============================================================
   HEADER
   ============================================================ */
.header{position:sticky;top:0;z-index:60;background:var(--header-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.header-inner{max-width:1220px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px clamp(18px,5vw,72px)}
.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1}
.brand b{font-family:'Oswald',sans-serif;font-weight:700;font-size:24px;letter-spacing:.05em;text-transform:uppercase;color:var(--fg)}
.brand span{font-family:'Space Mono',monospace;font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--fg-3);margin-top:3px}
.nav-links{display:flex;align-items:center;gap:26px}
.nav-links a{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-2);text-decoration:none}
.header-cta{display:flex;align-items:center;gap:10px}
.nav-toggle{display:none}

/* Mobile menu */
.mobile-menu{position:fixed;inset:0;z-index:80;background:var(--bg);flex-direction:column;padding:18px clamp(20px,6vw,40px);display:none}
.mobile-menu.open{display:flex}
.mobile-menu-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}
.mobile-menu-top b{font-family:'Oswald',sans-serif;font-weight:700;font-size:21px;letter-spacing:.05em;text-transform:uppercase}
.mobile-menu a{font-family:'Oswald',sans-serif;font-weight:500;font-size:29px;text-transform:uppercase;letter-spacing:.02em;color:var(--fg);text-decoration:none;padding:15px 0;border-bottom:1px solid var(--border)}

/* ============================================================
   HERO
   ============================================================ */
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(28px,4vw,60px);align-items:center}
.hero h1{font-family:'Newsreader',serif;font-weight:500;font-size:clamp(38px,6vw,66px);line-height:1.04;letter-spacing:-.015em;margin:0 0 22px;color:var(--fg)}
.hero h1 em{color:var(--accent)}
.hero p{font-size:clamp(16px,1.6vw,19px);line-height:1.55;color:var(--fg-2);margin:0 0 30px;max-width:50ch}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.photo{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--bg-2);border:1px solid var(--border)}
.photo img,.photo video{width:100%;height:100%;object-fit:cover;filter:var(--photo-filter);display:block}
.photo-cap{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;background:linear-gradient(to top,rgba(0,0,0,.72),transparent);color:#f4ecdb;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase}

/* Stat strip */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;margin-top:clamp(34px,5vw,60px);background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.stat{background:var(--bg);padding:22px 20px}
.stat b{font-family:'Oswald',sans-serif;font-weight:600;font-size:clamp(30px,4vw,46px);line-height:1;color:var(--accent);display:block}
.stat span{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);margin-top:9px;display:block}

/* ============================================================
   MACHINES
   ============================================================ */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:clamp(16px,2.4vw,26px)}
.machine{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.machine-img{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--bg-2)}
.machine-img img{width:100%;height:100%;object-fit:cover;filter:var(--photo-filter)}
.tag{position:absolute;top:12px;left:12px;font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;background:var(--accent);color:var(--accent-fg);padding:5px 10px;border-radius:2px}
.machine-body{padding:22px 22px 24px;display:flex;flex-direction:column;gap:12px;flex:1}
.machine-name{font-family:'Oswald',sans-serif;font-weight:600;font-size:clamp(26px,3vw,34px);letter-spacing:.02em;text-transform:uppercase;color:var(--fg);line-height:1}
.machine-type{font-family:'Space Mono',monospace;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);margin-top:7px}
.machine-body p{margin:0;font-size:15.5px;line-height:1.5;color:var(--fg-2);flex:1}
.inquire{align-self:flex-start;font-family:'Oswald',sans-serif;font-weight:600;font-size:13px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);text-decoration:none}

/* ============================================================
   UPTIME
   ============================================================ */
.uptime-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(16px,2.4vw,24px)}
.uptime{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:26px 24px}
.uptime .k{font-family:'Oswald',sans-serif;font-weight:600;font-size:15px;letter-spacing:.1em;color:var(--accent)}
.uptime .t{font-family:'Oswald',sans-serif;font-weight:600;font-size:22px;letter-spacing:.02em;text-transform:uppercase;color:var(--fg);margin:12px 0 10px}
.uptime p{margin:0;font-size:15.5px;line-height:1.5;color:var(--fg-2)}
.uptime-foot{margin-top:26px;font-family:'Space Mono',monospace;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3)}

/* ============================================================
   STORY
   ============================================================ */
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);align-items:center}
.story-grid p{font-size:16.5px;line-height:1.6;color:var(--fg-2);margin:0 0 16px}
.pull{border-left:3px solid var(--accent);padding:6px 0 6px 22px;margin-top:24px}
.pull .q{font-family:'Newsreader',serif;font-style:italic;font-size:clamp(22px,2.6vw,30px);line-height:1.2;color:var(--fg)}
.pull .by{font-family:'Space Mono',monospace;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);margin-top:12px}
.arc{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;margin-top:clamp(38px,5vw,60px);background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.arc-item{background:var(--surface);padding:22px 20px}
.arc-item b{font-family:'Oswald',sans-serif;font-weight:600;font-size:26px;color:var(--accent);line-height:1;display:block}
.arc-item .l{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg);margin:10px 0 8px}
.arc-item p{margin:0;font-size:14px;line-height:1.5;color:var(--fg-2)}

/* ============================================================
   TESTIMONIALS
   ============================================================ */
.proof{max-width:1000px;margin:0 auto;text-align:center}
.quote-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(30px,5vw,56px)}
.stars{color:var(--accent);letter-spacing:.28em;font-size:16px;margin-bottom:24px}
.stars svg{margin:0 .1em;vertical-align:middle}
.quote-card blockquote{margin:0;font-family:'Newsreader',serif;font-size:clamp(20px,2.7vw,29px);line-height:1.4;color:var(--fg);font-style:italic}
.quote-name{font-family:'Oswald',sans-serif;font-weight:600;font-size:16px;letter-spacing:.04em;text-transform:uppercase;color:var(--fg);margin-top:30px}
.quote-role{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.05em;color:var(--fg-3);margin-top:6px}
.dots{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:26px}
.dots .row{display:flex;align-items:center;gap:8px}
.dot{width:9px;height:9px;border-radius:99px;border:none;cursor:pointer;padding:0;transition:.2s;background:var(--border)}
.dot.active{width:26px;background:var(--accent)}
.arrow{width:42px;height:42px;border-radius:99px;border:1px solid var(--border);background:transparent;color:var(--fg);font-size:16px;cursor:pointer}

/* ============================================================
   FINANCING
   ============================================================ */
.fin-wrap{max-width:1080px;margin:0 auto}
.fin-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,40px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(24px,3.5vw,40px)}
.field-label{display:block;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);margin-bottom:9px}
.price-field{position:relative;margin-bottom:22px}
.price-field span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--fg-3);font-family:'Oswald',sans-serif;font-size:18px}
.price-field input{width:100%;padding:14px 14px 14px 30px;background:var(--bg);border:1px solid var(--border);border-radius:3px;color:var(--fg);font-family:'Oswald',sans-serif;font-size:18px;outline:none}
.terms{display:flex;gap:8px;margin-bottom:22px}
.term-btn{flex:1;padding:12px 4px;font-family:'Oswald',sans-serif;font-weight:600;font-size:14px;letter-spacing:.03em;cursor:pointer;border-radius:2px;text-transform:uppercase;transition:.15s;background:transparent;color:var(--fg-2);border:1px solid var(--border)}
.term-btn.active{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}
.rate-input{width:100%;padding:13px 14px;background:var(--bg);border:1px solid var(--border);border-radius:3px;color:var(--fg);font-family:'Oswald',sans-serif;font-size:17px;outline:none}
.fin-note{margin:18px 0 0;font-size:13px;line-height:1.5;color:var(--fg-3)}
.fin-result{background:var(--surface-2);border:1px solid var(--border);border-radius:3px;padding:clamp(24px,3vw,36px);display:flex;flex-direction:column;justify-content:center}
.fin-result .big{font-family:'Oswald',sans-serif;font-weight:600;font-size:clamp(44px,6vw,64px);line-height:1.05;color:var(--accent);margin:6px 0 4px}
.fin-due{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}
.fin-due b{font-family:'Oswald',sans-serif;font-weight:600;font-size:28px;color:var(--fg);margin-top:6px;display:block}

/* ============================================================
   SUPPLIES
   ============================================================ */
.supply-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(14px,2vw,20px)}
.supply{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px 22px;display:flex;flex-direction:column;gap:12px}
.supply .chip{align-self:flex-start;font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1px solid var(--border);padding:4px 9px;border-radius:99px}
.supply .name{font-family:'Oswald',sans-serif;font-weight:600;font-size:19px;letter-spacing:.02em;text-transform:uppercase;color:var(--fg)}
.supply p{margin:0;font-size:14.5px;line-height:1.5;color:var(--fg-2)}

/* ============================================================
   CONTACT
   ============================================================ */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(20px,3vw,40px)}
.contact-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(24px,3vw,34px)}
.contact-info{display:flex;flex-direction:column;gap:22px}
.contact-info .block+.block{border-top:1px solid var(--border);padding-top:20px}
.contact-info .lbl{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);margin-bottom:10px}
.contact-info .phone{font-family:'Oswald',sans-serif;font-weight:600;font-size:clamp(26px,3.4vw,34px);letter-spacing:.01em;color:var(--accent);text-decoration:none}
.contact-info .val{font-size:16px;line-height:1.5;color:var(--fg-2);text-decoration:none}
.contact-note{margin-top:auto;font-size:13px;line-height:1.5;color:var(--fg-3)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.contact-card input,.contact-card textarea{width:100%;padding:13px 14px;background:var(--bg);border:1px solid var(--border);border-radius:3px;color:var(--fg);font-family:'Newsreader',serif;font-size:15px;outline:none}
.contact-card textarea{resize:vertical;margin-bottom:18px}
.contact-card .email-single{margin-bottom:14px}

/* ============================================================
   FOOTER
   ============================================================ */
.footer{padding:clamp(44px,6vw,72px) clamp(18px,5vw,72px) 40px;background:var(--bg);border-top:1px solid var(--border)}
.footer-top{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px;padding-bottom:36px;border-bottom:1px solid var(--border)}
.footer-brand b{font-family:'Oswald',sans-serif;font-weight:700;font-size:22px;letter-spacing:.05em;text-transform:uppercase;color:var(--fg)}
.footer-brand .sub{font-family:'Space Mono',monospace;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--fg-3);margin:4px 0 16px}
.footer-brand p{margin:0;font-size:14px;line-height:1.55;color:var(--fg-2);max-width:38ch}
.footer-col .head{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);margin-bottom:14px}
.footer-col .links{display:flex;flex-direction:column;gap:10px;font-size:14px;color:var(--fg-2)}
.footer-col .links a{text-decoration:none;color:inherit}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;padding-top:24px;font-size:12.5px;color:var(--fg-3)}
.footer-bottom .mono{letter-spacing:.06em}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:880px){
  .nav-links{display:none}
  .nav-toggle{display:inline-flex}
  .header-cta .btn{display:none}
  .hero-grid,.story-grid,.fin-grid,.contact-grid{grid-template-columns:1fr}
}

/* ============================================================
   PHASE 1, CONTACT FORM + ADMIN
   ============================================================ */
.hp{position:absolute!important;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.contact-card select{width:100%;padding:13px 14px;background:var(--bg);border:1px solid var(--border);border-radius:3px;color:var(--fg);font-family:'Newsreader',serif;font-size:15px;outline:none;cursor:pointer}
.contact-card select:focus,.contact-card input:focus,.contact-card textarea:focus{border-color:var(--accent)}

/* Admin surface (dark, matches the public site tokens) */
body.admin{background:var(--bg-2)}
.admin-top{position:sticky;top:0;z-index:20;background:var(--header-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.admin-top-inner{max-width:960px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px clamp(18px,5vw,40px)}
.admin-viewsite{display:inline-flex;align-items:center;gap:7px;font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);text-decoration:none}
.admin-viewsite:hover{color:var(--accent)}
.admin-main{max-width:960px;margin:0 auto;padding:clamp(24px,4vw,44px) clamp(18px,5vw,40px) 80px}
.admin-headrow{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.admin-h1{font-family:'Newsreader',serif;font-weight:500;font-size:clamp(28px,4vw,40px);letter-spacing:-.012em;margin:0;color:var(--fg)}
.admin-sub{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.05em;color:var(--fg-3)}
.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.admin-tab{font-family:'Oswald',sans-serif;font-weight:600;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-2);text-decoration:none;padding:9px 14px;border:1px solid var(--border);border-radius:2px;background:transparent}
.admin-tab.active{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}
.lead-list{display:flex;flex-direction:column;gap:14px}
.lead-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px}
.lead-card.is-new{border-left:3px solid var(--accent)}
.lead-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.lead-name{font-family:'Oswald',sans-serif;font-weight:600;font-size:18px;letter-spacing:.02em;text-transform:uppercase;color:var(--fg);line-height:1.1}
.lead-email{display:inline-flex;align-items:center;gap:7px;margin-top:6px;font-size:14px;color:var(--fg-2);text-decoration:none}
.lead-email:hover{color:var(--accent)}
.lead-head-right{text-align:right;white-space:nowrap}
.lead-date{font-family:'Space Mono',monospace;font-size:11px;color:var(--fg-3);margin-top:8px}
.lead-meta{font-family:'Space Mono',monospace;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-3);margin:14px 0 0}
.lead-message{margin:12px 0 0;font-size:15px;line-height:1.55;color:var(--fg);white-space:pre-wrap}
.lead-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.admin-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;font-family:'Oswald',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.03em;text-transform:uppercase;color:var(--fg-2);background:transparent;border:1px solid var(--border);border-radius:2px;cursor:pointer}
.admin-btn:hover{color:var(--fg);border-color:var(--fg-3)}
.badge{display:inline-block;font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:4px 9px;border-radius:99px;border:1px solid var(--border)}
.badge-new{color:var(--accent-fg);background:var(--accent);border-color:var(--accent)}
.badge-read{color:var(--fg-3)}
.badge-archived{color:var(--fg-3);opacity:.7}
.admin-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;color:var(--fg-3);text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}
.admin-empty p{margin:0;font-size:15px}

/* ============================================================
   PHASE 2, ADMIN NAV + CMS STUDIOS
   ============================================================ */
.admin-top-inner{flex-wrap:wrap}
.admin-nav{display:flex;gap:6px;flex-wrap:wrap;margin-right:auto}
.admin-navlink{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;font-family:'Oswald',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-2);text-decoration:none;border:1px solid transparent;border-radius:2px}
.admin-navlink:hover{color:var(--fg)}
.admin-navlink.active{color:var(--accent);border-color:var(--border);background:var(--surface)}
.admin-btn.primary{color:var(--accent-fg);background:var(--accent);border-color:var(--accent)}
.admin-btn.primary:hover{color:var(--accent-fg);filter:brightness(1.06)}

.studio-flash{display:flex;align-items:center;gap:9px;margin-bottom:20px;padding:12px 16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--accent);color:var(--fg);font-size:14px}
.studio-flash svg{color:var(--accent);flex:none}

.studio{display:flex;flex-direction:column;gap:20px}
.studio-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px 24px}
.studio-section-head{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}
.studio-field{margin-bottom:16px}
.studio-field:last-child{margin-bottom:0}
.studio-input{width:100%;padding:12px 13px;background:var(--bg);border:1px solid var(--border);border-radius:3px;color:var(--fg);font-family:'Newsreader',serif;font-size:15px;line-height:1.5;outline:none}
.studio-input:focus{border-color:var(--accent)}
.studio-area{resize:vertical;min-height:70px}
.studio-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}
.studio-hint{margin:0 auto 0 0;font-size:13px;color:var(--fg-3)}
.studio-check{display:inline-flex;align-items:center;gap:9px;margin-right:auto;font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-2);cursor:pointer}
.studio-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}

.studio-machines{display:flex;flex-direction:column;gap:18px}
.studio-machine{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px 24px}
.studio-machine-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.machine-thumb{width:60px;height:46px;border-radius:4px;overflow:hidden;background:var(--bg-2);border:1px solid var(--border);flex:none}
.machine-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.machine-thumb-empty{display:flex;align-items:center;justify-content:center;color:var(--fg-3)}
.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin-bottom:16px}
@media (max-width:640px){.studio-grid{grid-template-columns:1fr}}
