*{box-sizing:border-box}
:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f4f0e8;background:#11100e}
body{margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:22px;background:
radial-gradient(circle at 50% 0%,#2b241b 0,#171411 38%,#0d0c0b 100%)}
.card{position:relative;width:min(560px,100%);background:rgba(27,24,20,.94);border:1px solid #4a4033;border-radius:22px;padding:34px 26px;box-shadow:0 25px 70px rgba(0,0,0,.45);text-align:center}
.brand{font-family:Georgia,serif;letter-spacing:3px;font-size:15px;color:#d8b77a}
.divider{width:70px;height:1px;background:#d8b77a;margin:17px auto 26px}
h1{font-family:Georgia,serif;font-size:30px;margin:0 0 10px}
h2{font-family:Georgia,serif;font-size:24px}
.sub{color:#c4bdb1;margin:0 0 28px}
.stars{display:flex;justify-content:center;gap:5px;margin:10px 0}
.star{background:none;border:0;color:#5d554b;font-size:46px;line-height:1;padding:2px;cursor:pointer;transition:.15s}
.star.active,.star:hover{color:#d8b77a;transform:scale(1.05)}
.rating-text{color:#c4bdb1;min-height:22px}
label{display:block;text-align:left;margin:18px 0 7px;color:#e7e0d5;font-size:14px}
label span{color:#8f887d}
select,textarea,input{width:100%;border:1px solid #51483c;border-radius:10px;background:#12110f;color:#f4f0e8;padding:12px;font:inherit;outline:none}
textarea{resize:vertical}
select:focus,textarea:focus,input:focus{border-color:#d8b77a}
.submit,.google{display:block;width:100%;margin-top:20px;padding:13px 16px;border:0;border-radius:11px;font-weight:700;text-decoration:none;cursor:pointer}
.submit{background:#d8b77a;color:#17130e}
.google{background:#f4f0e8;color:#17130e}
.small{font-size:12px;color:#8f887d}
.hidden{display:none!important}
.result{margin-top:22px;padding-top:22px;border-top:1px solid #40382f}
.error{margin-top:18px;color:#ff9f9f}
.redirect-overlay{position:absolute;inset:0;background:rgba(13,12,11,.94);display:flex;align-items:center;justify-content:center;padding:24px;border-radius:22px;z-index:20}
.redirect-box{text-align:center}
.spinner{width:34px;height:34px;border-radius:50%;border:3px solid #4a4033;border-top-color:#d8b77a;margin:0 auto 12px;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:430px){.card{padding:28px 18px}h1{font-size:26px}.star{font-size:40px}}
