/* Crystal's Food Reviews — Heritage Edition v1.2
   Polished steampunk: understated antiqued brass, charcoal, walnut and ivory.
   Deliberately retains generous mobile touch sizes and high-contrast text. */
:root{
 --cr-ink:#242a29;
 --cr-charcoal:#222827;
 --cr-charcoal-raised:#313733;
 --cr-walnut:#493529;
 --cr-ivory:#f6eddc;
 --cr-brass:#c9a571;
 --cr-sand:#dec9a6;
}
body:has(.clockwork-studio){
 --paper:#212725;
 --ivory:#292f2c;
 --ink:#f6eddc;
 --muted:#d6c7ae;
 --line:#796951;
 --warm:#c9a571;
 --brick:#987351;
 --dark:#1d2322;
 --shadow:0 10px 35px #0e15184d;
 background:linear-gradient(135deg,#242b28 0%,#252a28 58%,#2d2c27 100%);
 color:var(--cr-ivory);
}
body:has(.clockwork-studio) .siteheader{
 background:#262c2af9;
 border-bottom:1px solid #867354;
 box-shadow:0 2px 12px #0002;
}
body:has(.clockwork-studio) .brandmark{
 background:linear-gradient(135deg,#d6b889,#a27e51);
 color:#252825;
 box-shadow:none;
 border:1px solid #e6d1ac;
}
body:has(.clockwork-studio) .siteheader .brand,
body:has(.clockwork-studio) .siteheader nav a{color:#f6e9d4}
body:has(.clockwork-studio) .panel{
 background:linear-gradient(155deg,#343a36,#282e2c 92%);
 color:#f6eddc;
 border:1px solid #827153;
 box-shadow:0 12px 26px #0b10133d;
 border-radius:18px;
}
body:has(.clockwork-studio) .panel h2,
body:has(.clockwork-studio) .panel h3{color:#f1dbb4}
body:has(.clockwork-studio) .eyebrow{color:#d4b283;letter-spacing:.16em}
body:has(.clockwork-studio) .btn{
 background:linear-gradient(145deg,#dbbc8f,#c49a65);
 color:#232823;
 border:1px solid #ebd5ad;
 box-shadow:0 2px 0 #66554038;
 border-radius:10px;
 font-weight:700;
 transition:filter .16s ease, transform .16s ease;
}
body:has(.clockwork-studio) .btn:hover{filter:brightness(1.06)}
body:has(.clockwork-studio) .btn:active{transform:translateY(1px);box-shadow:none}
body:has(.clockwork-studio) .btn.dark{color:#f7edd8;background:#414c48;border-color:#998972}
body:has(.clockwork-studio) .btn.line{color:#f5e7cc;background:#303834;border-color:#a38d6b}
body:has(.clockwork-studio) input,
body:has(.clockwork-studio) textarea,
body:has(.clockwork-studio) select{
 background:#202726;
 border:1px solid #968467;
 color:#fff3df;
 border-radius:10px;
}
body:has(.clockwork-studio) input:focus-visible,
body:has(.clockwork-studio) textarea:focus-visible,
body:has(.clockwork-studio) select:focus-visible{
 outline:2px solid #d4b17c;
 outline-offset:2px;
}
body:has(.clockwork-studio) a:focus-visible,
body:has(.clockwork-studio) button:focus-visible{
 outline:3px solid #f3dcab;outline-offset:3px;
}
body:has(.clockwork-studio) .warning{background:#494031;color:#f5e3c0;border-color:#bca179}
.clockwork-studio .clockwork-label{
 font-family:Georgia,serif;
 font-size:.75rem;
 letter-spacing:.24em;
 font-weight:500;
 text-align:center;
 color:#d9bf96;
 border-bottom:1px solid #837252;
 padding-bottom:14px;
}
.clockwork-studio .clockwork-label span{
 font-size:.8rem;opacity:.6;
}
.clockwork-studio .studiohead{
 background:linear-gradient(120deg,#353d39,#2b322f);
 border:1px solid #877354;
 border-radius:16px;
 padding:22px;
 box-shadow:0 5px 18px #0002;
}
.clockwork-studio .studiohead:after{
 content:"";
 top:auto;bottom:12px;right:20px;
 width:46px;height:46px;
 border:1px double #9c846244;
 border-radius:50%;
 background:radial-gradient(circle,transparent 46%,#9c84623b 49%,transparent 52%);
}
.clockwork-studio .studiohead h2{
 color:#f8ebd3;
 font-family:Georgia,serif;
 font-size:clamp(1.35rem,3.5vw,1.8rem);
 letter-spacing:.01em;
}
.clockwork-studio .studio-score-preview{
 background:#303631;
 border:1px solid #94805f;
 border-radius:12px;
 box-shadow:inset 0 1px #ffffff09;
}
.clockwork-studio .studio-score-preview strong{
 color:#e1bd81;
 font-family:Georgia,serif;
 font-size:2rem;
}
.clockwork-studio .studio-score-preview span{color:#ebd2a8}
.clockwork-studio .rating-stepper button{
 color:#f7ead3;
 background:#454b41;
 border:1px solid #a28c68;
 border-radius:10px;
 min-height:50px;
 box-shadow:0 2px 0 #1017145c;
}
.clockwork-studio .rating-stepper button:active{background:#5d6254}
.clockwork-studio .rating-stepper output{
 color:#f0d098;
 background:#212826;
 border:1px solid #75684f;
 border-radius:10px;
 min-height:50px;
}
.clockwork-studio .studio-mobile-actions{
 background:#29312eF2;
 border:1px solid #927b59;
 border-radius:13px;
 box-shadow:0 7px 20px #0004;
}
.clockwork-studio .draft-recovery-note{color:#e3d0ae}
.clockwork-studio .clockwork-dock{
 background:#252d2bf2;
 border:1px solid #8b785b;
 box-shadow:0 7px 24px #0006;
 border-radius:14px;
}
.clockwork-studio .clockwork-dock a{
 color:#f5dfba!important;
 font-size:1.15rem;
 min-height:66px;
 border-right:1px solid #6c5d48;
}
.clockwork-studio .clockwork-dock small{color:#f2e4cd;font-weight:600;letter-spacing:.02em}
.clockwork-studio .publisher-invite{
 background:#313a35;
 border:1px solid #9a825b;
 border-radius:14px;
}
.studio-preview{
 background:#29312e;
 border:1px solid #c0a071;
 border-radius:16px;
 color:#f8edd9;
 box-shadow:0 20px 60px #000a;
}
.studio-preview h2{font-family:Georgia,serif;color:#edd1a1}
.studio-preview .actions{background:#29312e}
@media(max-width:760px){
 .clockwork-studio .studiohead{padding:16px}
 .clockwork-studio .studio-mobile-actions{top:72px;gap:8px}
 .clockwork-studio .studio-mobile-actions .btn{min-height:48px;font-size:.85rem}
 .clockwork-studio .clockwork-dock{bottom:6px}
 .clockwork-studio .rating-stepper{grid-template-columns:48px 1fr 48px}
 .clockwork-studio .rating-stepper button,.clockwork-studio .rating-stepper output{min-height:50px}
}
@media(prefers-reduced-motion:reduce){.clockwork-studio *,body:has(.clockwork-studio) .btn{transition:none!important;animation:none!important}}
