@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{color-scheme:dark;--bg:#111814;--panel:#1a241d;--ink:#eff2e8;--muted:#a6b2a5;--accent:#cee999;--line:#334335}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;font-size:15px;line-height:1.6}header,main,footer{max-width:1180px;margin:auto;padding:24px 36px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:24px}.brand{font-family:'Libre Caslon Display',Georgia,serif;font-size:34px;line-height:1.1;text-decoration:none;color:var(--ink)}.brand span{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:2px;margin-top:12px;color:var(--muted)}nav{display:flex;gap:24px;flex-wrap:wrap}a{color:var(--accent);text-underline-offset:4px}.header-note,.small{font-size:12px;color:var(--muted)}.intro{padding:40px 0 30px;max-width:750px}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--accent)}h1{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(42px,7vw,76px);font-weight:400;line-height:.98;letter-spacing:-1px;margin:24px 0}h1 em{font-style:normal;color:var(--accent)}.intro>p:last-child{color:var(--muted);max-width:530px}h2{font-size:20px;font-weight:500;margin:0 0 10px}h3{font-size:18px;font-weight:500;line-height:1.4;margin:10px 0}p{margin:8px 0 16px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);padding-bottom:12px;overflow-x:auto}button{font:inherit;color:#132016;background:var(--accent);border:1px solid transparent;padding:9px 16px;border-radius:7px;cursor:pointer;white-space:nowrap}button:hover{filter:brightness(1.08)}button:disabled{opacity:.5;cursor:wait}.tabs button,.quiet{background:transparent;color:var(--muted);border-color:var(--line)}.tabs button[aria-selected=true]{background:var(--accent);color:#132016;border-color:var(--accent)}input,select{font:inherit;color:var(--ink);background:#111a14;border:1px solid var(--line);padding:10px 12px;border-radius:7px;width:100%;min-width:0}input[type=file]{font-size:12px}label{display:block;color:var(--muted);font-size:12px}label input,label select{margin-top:5px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.tools{display:grid;grid-template-columns:1fr 1fr;gap:30px;background:var(--panel);padding:24px;margin:24px 0;border:1px solid var(--line);border-radius:10px}.tools p{color:var(--muted)}form{display:grid;gap:12px}.row{display:flex;gap:12px;align-items:end}.row label{flex:1}.jobs{grid-column:1/-1}.job{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:10px 0;font-size:12px}.job span{overflow-wrap:anywhere}.library-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}.search-label{width:240px}.search-label input{margin:0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin:20px 0 48px}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.card-content{padding:20px;display:flex;flex-direction:column;flex:1}.card-image{width:100%;height:190px;object-fit:cover;background:#243529}.tile-icon{height:100px;display:grid;place-items:center;font-size:36px;color:var(--accent);background:linear-gradient(130deg,#243529,#19271f)}.metadata{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.card h3{overflow-wrap:anywhere}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:18px}.actions button,.actions a{font-size:12px}.actions a{padding:8px 0}.badge{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--accent)}.badge.private{color:var(--muted)}.danger{color:#f0a99c!important}.empty{grid-column:1/-1;padding:44px 24px;text-align:center;border:1px dashed var(--line);border-radius:10px;color:var(--muted)}#status{color:var(--muted);font-size:13px;min-height:20px}footer{font-size:11px;color:var(--muted);border-top:1px solid var(--line)}dialog{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:12px;width:min(850px,calc(100% - 24px));max-height:90vh;padding:32px}dialog::backdrop{background:#000b}.close{float:right;font-size:22px;padding:0 10px}dialog video,dialog audio{width:100%;margin:16px 0}dialog img{max-height:340px;width:100%;object-fit:cover;border-radius:8px}dialog h2{font-family:'Libre Caslon Display',Georgia,serif;font-size:36px;margin:18px 0}dialog li{padding:6px 0}dialog .recipe-columns{display:grid;grid-template-columns:1fr 1.4fr;gap:32px}progress{width:100%;accent-color:var(--accent)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:650px){header,main,footer{padding:20px}header{align-items:flex-start}.brand{font-size:28px}nav{gap:8px;flex-direction:column;font-size:12px}.header-note{display:none}.intro{padding:25px 0}.tools{grid-template-columns:1fr;gap:16px;padding:18px}.row{flex-wrap:wrap}.row label{min-width:90px}.grid{grid-template-columns:1fr}.library-heading{align-items:start;flex-direction:column;gap:5px}.search-label{width:100%}dialog{padding:20px}dialog .recipe-columns{grid-template-columns:1fr;gap:12px}.tabs button{padding:8px 13px;font-size:13px}}
.job progress{width:120px;flex:0 0 120px;height:8px}.job>span{flex:1;min-width:0}.jobs h3{font-size:14px;margin:4px 0 12px}@media(max-width:650px){.job{flex-wrap:wrap}.job>span{flex-basis:100%}.job progress{flex:1}}
