/* Allodia actions. Merchant purchase buttons have their own store-owned tokens. */
:root {
 --a-action-font:'Archivo',Arial,sans-serif;
 --a-action-weight:550;
 --a-action-size:16px;
 --a-action-size-compact:14px;
 --a-action-leading:1.3;
 --a-action-height:52px;
 --a-action-height-compact:44px;
 --a-action-radius:2px;
 --a-action-pad:24px;
 --a-action-gap:12px;
 --a-action-icon:20px;
 --a-action-forest:#183d32;
 --a-action-forest-hover:#244f40;
 --a-action-forest-pressed:#102e25;
 --a-action-paper:#f5f3eb;
 --a-action-lime:#d6ee89;
 --a-action-lime-hover:#e2f4ae;
 --a-action-lime-pressed:#c5df70;
 --a-action-line:#a7b3a8;
 --a-action-soft:#e8ece2;
 --a-action-soft-pressed:#d9e0d4;
 --a-action-disabled:#e2e6df;
 --a-action-disabled-ink:#677268;
 --a-action-focus:#527046;
 --a-action-duration:160ms;
}
.allodia-action {
 --action-fill:var(--a-action-forest);
 --action-ink:var(--a-action-paper);
 --action-border:var(--action-fill);
 --action-hover:var(--a-action-forest-hover);
 --action-pressed:var(--a-action-forest-pressed);
 appearance:none;display:inline-flex;align-items:center;justify-content:center;
 gap:var(--a-action-gap);box-sizing:border-box;min-height:var(--a-action-height);
 max-width:100%;padding:14px var(--a-action-pad);border:1px solid var(--action-border);
 border-radius:var(--a-action-radius);background:var(--action-fill);color:var(--action-ink);
 font:var(--a-action-weight) var(--a-action-size)/var(--a-action-leading) var(--a-action-font);
 letter-spacing:0;text-align:center;text-decoration:none;text-shadow:none;
 box-shadow:none;filter:none;backdrop-filter:none;cursor:pointer;
 transition:background-color var(--a-action-duration),border-color var(--a-action-duration),color var(--a-action-duration);
}
.allodia-action--accent{--action-fill:var(--a-action-lime);--action-ink:var(--a-action-forest);--action-hover:var(--a-action-lime-hover);--action-pressed:var(--a-action-lime-pressed)}
.allodia-action--secondary,.allodia-action--icon{--action-fill:transparent;--action-ink:var(--a-action-forest);--action-border:var(--a-action-line);--action-hover:var(--a-action-soft);--action-pressed:var(--a-action-soft-pressed)}
.allodia-action--inverse{--action-ink:var(--a-action-paper);--action-border:#f5f3eb80;--action-hover:#f5f3eb14;--action-pressed:#f5f3eb26;--a-action-focus:var(--a-action-lime)}
.allodia-action--quiet{--action-fill:transparent;--action-ink:var(--a-action-forest);--action-border:transparent;--action-hover:var(--a-action-soft);--action-pressed:var(--a-action-soft-pressed);padding-inline:8px;min-height:var(--a-action-height-compact);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.allodia-action--compact{min-height:var(--a-action-height-compact);font-size:var(--a-action-size-compact);padding:10px 16px}
.allodia-action--quiet.allodia-action--compact{padding-inline:8px}
.allodia-action--icon{width:var(--a-action-height-compact);height:var(--a-action-height-compact);min-height:var(--a-action-height-compact);padding:0;flex:0 0 var(--a-action-height-compact)}
.allodia-action--wide{width:100%}
.allodia-action>.ui-icon{width:var(--a-action-icon);height:var(--a-action-icon);flex:none}
.allodia-action>span[aria-hidden]{font:400 22px/1 var(--a-action-font)}
.allodia-action:not(:disabled,[aria-disabled=true]):hover{background:var(--action-hover);border-color:var(--action-border);color:var(--action-ink);box-shadow:none;filter:none;transform:none;text-decoration-color:currentColor}
.allodia-action:not(:disabled,[aria-disabled=true]):active{background:var(--action-pressed);box-shadow:none;transform:none}
.allodia-action:focus-visible{outline:2px solid var(--a-action-focus);outline-offset:4px;box-shadow:0 0 0 2px var(--a-action-paper)}
.allodia-action:is(:disabled,[aria-disabled=true]){background:var(--a-action-disabled);color:var(--a-action-disabled-ink);border-color:var(--a-action-disabled);box-shadow:none;opacity:1;cursor:not-allowed}
.allodia-action[aria-pressed=true]{--action-fill:var(--a-action-soft-pressed);--action-border:var(--a-action-forest)}
/* Placement belongs to the surrounding layout; appearance stays above. */
.allodia-nav-action{margin-left:auto;white-space:nowrap}
.information-dialog>.allodia-action--icon{position:absolute;right:15px;top:15px}
.studio-actions .allodia-action{white-space:nowrap}
.asset-actions{gap:16px;flex-wrap:wrap}
.asset-actions .allodia-action{white-space:nowrap}
.brand-actions .allodia-action{justify-content:flex-start}
.editor-panel .allodia-action--wide{margin-top:20px}
.intake-url .allodia-action,.import-review-actions .allodia-action{white-space:nowrap}
#tour-exit.allodia-action{margin-left:auto;white-space:nowrap}
#tour-next.allodia-action{justify-self:end;white-space:nowrap}
#tour-card{background:var(--a-action-paper);background-image:none;color:var(--a-action-forest);border:1px solid var(--a-action-line);border-radius:var(--a-action-radius)}
#tour-card :is(#tour-topic,#tour-description,#tour-action){color:var(--a-action-forest)}
#tour-card #tour-count{background:var(--a-action-soft);color:var(--a-action-forest);border-color:var(--a-action-line);border-radius:var(--a-action-radius)}
#quote-dialog .allodia-action:focus-visible{outline:2px solid var(--a-action-focus);outline-offset:4px}
/* Quote choice actions follow the same flat surfaces and state colors. */
#quote-dialog{--q-raised:none;--q-raised-control:none;--q-inset:none;--q-pressed:none;--q-surface:var(--a-action-paper);--q-rim:var(--a-action-line);background:var(--a-action-paper);border-color:var(--a-action-line);border-radius:var(--a-action-radius);box-shadow:0 24px 60px #071e2840}
#asset-dialog,#intake-dialog,.information-dialog{border-radius:var(--a-action-radius)}
#quote-dialog :is(.q-path,.q-choice,.q-channel,.q-mood){border-radius:var(--a-action-radius);border-color:var(--a-action-line);box-shadow:none}
#quote-dialog :is(.q-path,.q-choice,.q-channel,.q-mood):is(:hover,:active,[aria-pressed=true]){background:var(--a-action-soft);border-color:var(--a-action-forest);box-shadow:none}
#quote-dialog :is(.q-choice,.q-channel,.q-mood)[aria-pressed=true]{background:var(--a-action-soft-pressed)}
#quote-dialog :is(.q-path,.q-choice,.q-channel,.q-mood):focus-visible{outline:2px solid var(--a-action-focus);outline-offset:4px}
#quote-dialog .q-day-slots .allodia-action{width:100%;padding-inline:4px;white-space:nowrap}
#quote-dialog .q-calendar-days button{border-radius:var(--a-action-radius);color:var(--a-action-forest)}
#quote-dialog .q-calendar-days button[aria-pressed=true]{background:var(--a-action-soft-pressed);border-color:var(--a-action-forest);box-shadow:none}
#intake-dialog .intake-route{background:var(--a-action-paper);border-color:var(--a-action-line);border-radius:var(--a-action-radius);box-shadow:none}
#intake-dialog .intake-route:is(:hover,.dragging){background:var(--a-action-soft);border-color:var(--a-action-forest)}
#quote-dialog :is(.q-upload-section,.q-access)>summary{border-radius:var(--a-action-radius);box-shadow:none}
#quote-dialog :is(.q-upload-section,.q-access)>summary:hover{background:var(--a-action-soft)}
@media(max-width:760px){
 .opening-actions{width:100%;flex-wrap:wrap}
 .opening-actions .allodia-action{flex:1 1 auto}
 .studio-actions .allodia-action{white-space:normal;padding-inline:10px;gap:8px}
 .studio-actions .ui-icon{display:none}
 .allodia-compare-action{width:100%}
 #quote-dialog .q-next-group{flex-wrap:wrap;justify-content:flex-end}
}
@media(max-width:480px){
 .opening-actions{flex-direction:column;align-items:stretch}
 .cinematic-home .allodia-nav-action{display:none}
 /* Keep the shared quote label and menu within the Details header. */
 .detail-page .cinema-nav{gap:10px}
 .detail-page .cinema-nav .cinema-brand{flex:0 1 160.6px;min-width:0}
 .detail-page .allodia-nav-action{flex:none;padding-inline:12px;gap:0}
 .detail-page .allodia-nav-action>span[aria-hidden]{display:none}
 .studio-actions{grid-template-columns:1fr 1fr}
 .studio-actions>[data-quote]{grid-column:1/-1}
 #quote-dialog .allodia-action{padding-inline:16px}
 #quote-dialog .allodia-action--icon{padding:0}
}
@media(prefers-reduced-motion:reduce){.allodia-action{transition:none}}
