:root{--rai-radius-sm:5px;--rai-radius-md:7px;--rai-radius-lg:9px;--rai-radius-xl:12px;--rai-control-radius:var(--rai-radius-md);--rai-control-shadow:0 4px 0 #334d25,0 9px 18px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.22)}
.rapid-ai-shell,.rapid-ai-footer,.rapid-ai-owner-launch,.rapid-ai-owner-tools,.rapid-ai-owner-feedback,.rapid-ai-calibration-results,.rapid-ai-admin-stats,.rapid-ai-admin-detail,.rapid-ai-reference-list article,.rapid-ai-report{border-radius:var(--rai-radius-xl);overflow:hidden}
.rapid-ai-shell{box-shadow:0 12px 30px rgba(0,0,0,.2)}
.rapid-ai-upload-button,.rapid-ai-photo,.rapid-ai-options span,.rapid-ai-notes textarea,.rapid-ai-conversion input,.rapid-ai-booking input,.rapid-ai-booking select,.rapid-ai-booking textarea,.rapid-ai-admin-detail input,.rapid-ai-admin-detail select,.rapid-ai-admin-detail textarea,.rapid-ai-login input{border-radius:var(--rai-radius-md)}
.rapid-ai-photo img,.rapid-ai-admin-images img{border-radius:inherit}
.rapid-ai-photo button,.rapid-ai-photo em{border-radius:var(--rai-radius-sm)}
.rapid-ai-primary,.rapid-ai-secondary{min-width:0;min-height:52px;padding:15px 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:16px;border-radius:var(--rai-control-radius);line-height:1.25;white-space:nowrap;transition:transform 180ms ease,box-shadow 180ms ease,background 180ms ease,border-color 180ms ease,opacity 180ms ease}
.rapid-ai-primary{border-color:#88b956;background:linear-gradient(180deg,#789f49 0%,#678e3a 52%,#587c32 100%);box-shadow:var(--rai-control-shadow);text-shadow:0 1px 0 rgba(0,0,0,.24)}
.rapid-ai-primary:hover{transform:translateY(-2px);border-color:#9dcb69;background:linear-gradient(180deg,#83ad50 0%,#709a40 52%,#5f8437 100%);box-shadow:0 6px 0 #334d25,0 13px 22px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.26)}
.rapid-ai-primary:active{transform:translateY(2px);box-shadow:0 1px 0 #334d25,0 4px 9px rgba(0,0,0,.25),inset 0 1px 3px rgba(0,0,0,.16)}
.rapid-ai-secondary{border-color:rgba(218,224,207,.35);background:linear-gradient(180deg,#242a22,#171c16);box-shadow:0 3px 0 #080b09,0 8px 16px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.1)}
.rapid-ai-secondary:hover{transform:translateY(-2px);border-color:rgba(139,211,76,.7);background:linear-gradient(180deg,#2b3328,#1c231b);box-shadow:0 5px 0 #080b09,0 11px 19px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.13)}
.rapid-ai-secondary:active{transform:translateY(2px);box-shadow:0 1px 0 #080b09,0 3px 8px rgba(0,0,0,.24)}
.rapid-ai-primary:focus-visible,.rapid-ai-secondary:focus-visible,.rapid-ai-upload-button:focus-within{outline:3px solid #f7f8f2;outline-offset:3px}
.rapid-ai-primary:disabled,.rapid-ai-secondary:disabled{opacity:.45;filter:grayscale(.35);transform:none;box-shadow:0 2px 0 #334d25;cursor:not-allowed}
.rapid-ai-upload-button{min-width:0;padding:24px;border-radius:var(--rai-control-radius);transition:transform 180ms ease,border-color 180ms ease,background-color 180ms ease}
.rapid-ai-upload-button:hover{transform:translateY(-2px);border-color:rgba(143,174,98,.8);background:#151c14}
.rapid-ai-actions{gap:12px}
.rapid-ai-booking{margin-top:32px;padding-top:32px;border-top:1px solid rgba(255,255,255,.2)}
.rapid-ai-booking h2{margin:.5rem 0 1rem;line-height:.9}
.rapid-ai-booking>p{max-width:62ch;line-height:1.65}
.rapid-ai-booking form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.rapid-ai-booking label{min-width:0;display:grid;gap:8px;font-family:"IBM Plex Mono",monospace;font-size:.76rem;line-height:1.45;text-transform:uppercase}
.rapid-ai-booking input,.rapid-ai-booking select,.rapid-ai-booking textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid rgba(255,255,255,.25);background:#0c100d;color:#fff;font:inherit}
.rapid-ai-booking textarea{min-height:112px;resize:vertical}
.rapid-ai-booking .wide{grid-column:1/-1}
.rapid-ai-booking .rapid-ai-consent{display:flex;grid-auto-flow:column;align-items:flex-start;justify-content:start;text-transform:none;line-height:1.55}
.rapid-ai-booking .rapid-ai-consent input{width:auto;min-height:0;flex:0 0 auto;margin-top:.15rem}
.rapid-ai-booking .rapid-ai-actions{position:static;margin-inline:0;padding:0;background:transparent}
.rapid-ai-contact-fields{padding:20px!important;border:1px solid rgba(255,255,255,.2)!important;background:rgba(255,255,255,.025)}.rapid-ai-contact-fields>p{margin:.25rem 0 1rem;color:var(--rai-muted);line-height:1.55}.rapid-ai-contact-fields>div{display:grid;grid-template-columns:1fr 1fr;gap:16px}.rapid-ai-contact-fields label{display:grid;gap:8px;font-family:"IBM Plex Mono",monospace;font-size:.76rem;text-transform:uppercase}.rapid-ai-contact-fields input{width:100%;min-height:48px;padding:12px 14px;border:1px solid rgba(255,255,255,.25);border-radius:var(--rai-radius-md);background:#0c100d;color:#fff;font:inherit}.rapid-ai-contact-fields input:focus{border-color:var(--rai-lime);outline:2px solid color-mix(in srgb,var(--rai-lime) 25%,transparent);outline-offset:1px}
.rapid-ai-progress{margin:2rem 0 1rem;padding:1.25rem;border:1px solid rgba(139,211,76,.3);border-radius:var(--rai-radius-lg);background:linear-gradient(135deg,rgba(109,189,69,.1),rgba(8,12,9,.72))}
.rapid-ai-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#eef5e7}.rapid-ai-progress-heading strong{font:800 1.15rem "Barlow Condensed",sans-serif;text-transform:uppercase}.rapid-ai-progress-heading span{color:#a9dc72;font:700 1rem "IBM Plex Mono",monospace}
.rapid-ai-progress-track{height:12px;margin:.9rem 0 .7rem;overflow:hidden;border:1px solid rgba(218,224,207,.18);border-radius:99px;background:#080b09;box-shadow:inset 0 2px 5px rgba(0,0,0,.45)}
.rapid-ai-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#587c32,#8bd34c);box-shadow:0 0 16px rgba(139,211,76,.42);transition:width .45s ease}
.rapid-ai-progress small{display:block;color:#aeb8a8;font:.58rem/1.5 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:700px){.rapid-ai-contact-fields>div,.rapid-ai-booking form{grid-template-columns:1fr}.rapid-ai-booking .wide{grid-column:auto}.rapid-ai-actions{flex-wrap:wrap}.rapid-ai-booking .rapid-ai-actions>*{min-width:0;flex:1 1 100%;width:100%}}
@media(max-width:430px){.rapid-ai-primary,.rapid-ai-secondary{width:100%;min-height:50px;padding:14px 18px}.rapid-ai-booking{margin-top:24px;padding-top:24px}}
@media(prefers-reduced-motion:reduce){.rapid-ai-page *,.rapid-ai-page *::before,.rapid-ai-page *::after{transition:none!important;scroll-behavior:auto!important}}
