/* Student Nations Reviews public UI */
.snr-form{max-width:680px;margin:0 auto;padding:28px;background:#fff;border:1px solid #edf0f2;border-radius:14px;box-shadow:0 12px 40px rgba(20,30,40,.06)}.snr-form-intro{text-align:center;margin-bottom:24px}.snr-form-intro h2{font-size:28px;letter-spacing:-.02em;margin:0 0 8px}.snr-form-intro p{color:#68707a;margin:0}.snr-field{margin:18px 0}.snr-field>label{display:block;font-weight:600;margin-bottom:7px}.snr-required{color:#c62828}.snr-field input:not([type=checkbox]):not([type=radio]),.snr-field textarea,.snr-field select{width:100%;box-sizing:border-box;border:1px solid #dfe4e8;border-radius:9px;padding:12px 13px;background:#fff;transition:border-color .2s,box-shadow .2s}.snr-field textarea{min-height:130px;resize:vertical}.snr-field input:focus,.snr-field textarea:focus,.snr-field select:focus{outline:0;border-color:#8b95a1;box-shadow:0 0 0 3px rgba(107,114,128,.12)}.snr-stars-input{display:flex;gap:3px}.snr-stars-input button{border:0;background:none;font-size:32px;line-height:1;cursor:pointer;color:#b9c0c7;padding:2px;transition:transform .15s,color .15s}.snr-stars-input button:hover,.snr-stars-input button:focus{transform:scale(1.1);color:#111827}.snr-stars-input button:has(~ button){}.snr-radio-list{display:flex;flex-wrap:wrap;gap:10px}.snr-radio-list label{padding:9px 12px;border:1px solid #e3e7eb;border-radius:8px}.snr-check,.snr-consent{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:#5f6872}.snr-consent{margin:20px 0}.snr-submit{width:100%;border:0;border-radius:9px;padding:13px 18px;background:#111827;color:#fff;font-weight:600;cursor:pointer;transition:transform .2s,opacity .2s}.snr-submit:hover{transform:translateY(-1px)}.snr-submit:disabled{opacity:.6;cursor:wait}.snr-form-message{display:none;margin:0 0 16px;padding:12px 14px;border-radius:9px}.snr-form-message.is-success{display:block;background:#edf8f1;color:#1f6b3b}.snr-form-message.is-error{display:block;background:#fff0f0;color:#a52828}.snr-reviews{display:grid;gap:18px}.snr-layout-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.snr-layout-masonry{columns:3 280px;display:block}.snr-layout-masonry .snr-card{break-inside:avoid;margin:0 0 18px}.snr-layout-list{grid-template-columns:1fr}.snr-layout-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.snr-layout-carousel .snr-card{min-width:300px;max-width:380px;scroll-snap-align:start}.snr-card{background:#fff;border:1px solid #edf0f2;border-radius:12px;padding:20px;box-shadow:0 8px 28px rgba(20,30,40,.05)}.snr-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.snr-card-head strong{display:block}.snr-card-head small{display:block;color:#7a838c;margin-top:4px}.snr-rating{color:#111827;letter-spacing:1px;white-space:nowrap}.snr-card-text{margin-top:15px;color:#3f4852;line-height:1.65}.snr-card-media{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:16px}.snr-card-media img,.snr-card-media video{width:100%;display:block;border-radius:9px;max-height:360px;object-fit:cover}.snr-card-categories{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.snr-card-categories span{font-size:11px;padding:5px 8px;border-radius:999px;background:#f1f3f5;color:#5d6670}.snr-date{display:block;color:#89919a;margin-top:15px}.snr-summary{display:flex;gap:28px;align-items:center;padding:22px;border:1px solid #edf0f2;border-radius:12px;background:#fff}.snr-summary-main{min-width:170px;text-align:center}.snr-summary-main strong{display:block;font-size:44px;line-height:1}.snr-summary-main .snr-rating{display:block;margin:8px 0}.snr-summary-main small{color:#68707a}.snr-summary-bars{flex:1}.snr-bar-row{display:grid;grid-template-columns:42px 1fr 30px;gap:8px;align-items:center;margin:6px 0;font-size:12px}.snr-bar-row>div{height:8px;background:#eef0f2;border-radius:99px;overflow:hidden}.snr-bar-row i{display:block;height:100%;background:#111827;border-radius:99px}@media(max-width:800px){.snr-layout-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.snr-summary{display:block}.snr-summary-main{margin-bottom:20px}}@media(max-width:560px){.snr-layout-grid{grid-template-columns:1fr}.snr-form{padding:20px}.snr-card{padding:16px}}
