:root{color-scheme:light;font-family:Poppins,Segoe UI,Tahoma,Geneva,Verdana,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% 10%,rgba(26,115,232,.25),transparent 45%),radial-gradient(circle at 80% 80%,rgba(9,172,151,.2),transparent 45%),#f6f8fc;color:#172033}a{color:inherit}.home{min-height:100vh;display:grid;place-items:center}.card,.home{padding:24px}.card{width:min(620px,100%);background:hsla(0,0%,100%,.93);border:1px solid rgba(23,32,51,.12);border-radius:20px;box-shadow:0 12px 40px rgba(12,19,31,.14)}.title{margin:0 0 12px;font-size:clamp(1.4rem,2vw,2rem)}.lead{margin:0 0 16px;color:#3f4b61;line-height:1.6}.button-link{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:10px;background:#1a73e8;color:#fff;text-decoration:none;font-weight:700;transition:transform .12s ease,box-shadow .12s ease}.button-link:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(26,115,232,.35)}.review-page{min-height:100vh;display:grid;place-items:center;padding:16px;background-image:linear-gradient(rgba(10,22,38,.38),rgba(10,22,38,.38)),url(/makhlouf-travel.png);background-size:cover;background-position:50%;background-repeat:no-repeat}.review-card{width:min(440px,100%);background:#fff;border-radius:22px;border:1px solid rgba(23,32,51,.1);box-shadow:0 20px 44px rgba(12,19,31,.14);padding:20px}.stars{margin:0;letter-spacing:2px;text-align:center;color:#ffb100}.review-title{margin:10px 0 16px;text-align:center;font-size:1.45rem}.review-box{border:1px solid #dbe4f3;background:#f8fbff;border-radius:12px;padding:12px;margin-bottom:14px}.review-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.label{margin:0;color:#355185;font-weight:700;font-size:.78rem;text-transform:uppercase}.ghost-btn,.primary-btn{border:0;border-radius:10px;font-weight:700;cursor:pointer}.ghost-btn{background:#ddeaff;color:#15408d;font-size:.78rem;padding:6px 10px}.ghost-btn:disabled{opacity:.65;cursor:not-allowed}.review-text-wrap{max-height:190px;overflow:auto}.review-text{margin:0;line-height:1.5;color:#263552;white-space:pre-wrap;overflow-wrap:anywhere}.primary-btn{width:100%;background:linear-gradient(135deg,#1267dc,#1a9be8);color:#fff;padding:14px;font-size:1rem}.primary-btn:disabled{opacity:.7;cursor:not-allowed}.error-text,.hint{margin:10px 0 0;text-align:center;font-size:.85rem}.hint{color:#11844b}.error-text{color:#b42318}@media (max-width:480px){.review-card{padding:16px}.review-title{font-size:1.25rem}}