/* Caddy Controls site theme for odorant tools: matches site/style.css tokens */
:root{
  color-scheme:light;
  --bg:#f6f6f1; --panel:#ffffff; --panel2:#eeeee8; --ink:#252923; --muted:#60655b;
  --line:#d3d4c9; --accent:#e2ad47; --accent-ink:#24281f; --accent-text:#8a5f0a;
  --ok:#2e7a39; --warn:#9a6400; --bad:#b3261e; --dark:#222621;
  --font:'Barlow',system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --display:'Barlow Condensed','Barlow',system-ui,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#191d19; --panel:#242923; --panel2:#2d332c; --ink:#eeeee7; --muted:#b4b9ad;
  --line:#3d443b; --accent:#e2ad47; --accent-ink:#24281f; --accent-text:#e9bd67;
  --ok:#73c982; --warn:#e6b84f; --bad:#f08273;
}
body{font-family:var(--font)}
.cc-bar{background:var(--dark);color:#e4e5dd;border-bottom:3px solid var(--accent);position:sticky;top:0;z-index:20;padding-top:env(safe-area-inset-top,0px)}
.cc-bar-in{max-width:980px;margin:0 auto;padding:8px 14px;display:flex;align-items:center;gap:12px}
.cc-bar .cc-badge{width:52px;height:52px;flex:none;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}
.cc-bar .cc-titles{min-width:0;flex:1}
.cc-bar .cc-parent{font-size:.66rem;letter-spacing:.16em;font-weight:600;color:var(--accent);text-transform:uppercase}
.cc-bar .cc-name{font-family:var(--display);font-size:1.25rem;font-weight:600;line-height:1.1;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-bar a.cc-back{color:#e4e5dd;font-size:.8rem;font-weight:600;text-decoration:none;border:1px solid #ffffff40;padding:8px 10px;min-height:40px;display:inline-flex;align-items:center;white-space:nowrap}
.cc-bar a.cc-back:hover{border-color:var(--accent);color:var(--accent)}
.cc-bar .cc-theme{border:1px solid #ffffff40;background:none;color:#e4e5dd;width:40px;height:40px;border-radius:50%;font-size:1.1rem;cursor:pointer;flex:none}
@media(max-width:520px){.cc-bar a.cc-back .long{display:none}.cc-bar .cc-name{font-size:1.08rem}.cc-bar .cc-badge{width:44px;height:44px}}
:root{padding-top:0!important}
h1,.panel h2{font-family:var(--display)}
h1{font-weight:600}
header.tool-head{border-left:5px solid var(--accent)}
.panel{border-radius:2px}
.panel h2{font-size:.9rem;letter-spacing:.1em;color:var(--ink);font-weight:600}
.card{border-radius:2px}
input,select,textarea{border-radius:2px}
.btn{border-radius:2px;font-weight:600;min-height:44px}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn.primary:hover{background:#e9bd67}
.unit{color:var(--accent-text)!important}
.chip.on{background:var(--accent)!important;border-color:var(--accent)!important;color:var(--accent-ink)!important}
.cc-related{display:flex;gap:12px;align-items:center;background:var(--panel);border:1px solid var(--line);padding:12px;margin:14px 0;text-decoration:none;color:var(--ink)}
.cc-related img{width:64px;height:64px;object-fit:contain;flex:none}
.cc-related b{font-family:var(--display);font-size:1.1rem;font-weight:600;display:block}
.cc-related span{font-size:.82rem;color:var(--muted)}
.cc-related:hover{border-color:var(--accent)}
/* Keep wide tables scrolling inside their panel on phones instead of widening the page */
.grid>*,.panel,.tablewrap{min-width:0}
.tablewrap{max-width:100%;-webkit-overflow-scrolling:touch}
.row>*{min-width:0}
@media(max-width:520px){.cc-bar .cc-name{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}
.pdf-msg{font-size:.82rem;margin-top:8px;min-height:1em;color:var(--muted)}
.pdf-msg.good{color:var(--ok)}.pdf-msg.err{color:var(--bad)}
