/* Anime review modal – isolated public detail styling */
.anime-review-modal .modal-dialog{
    width:min(760px,calc(100vw - 28px));
    max-width:760px;
}
.anime-review-modal .modal-content{
    overflow:hidden;
    border:1px solid rgba(255,255,255,.11);
    border-radius:18px;
    background:rgba(7,10,14,.985);
    color:#eef2f6;
    box-shadow:0 28px 90px rgba(0,0,0,.72),0 0 0 1px rgba(239,45,56,.04);
}
.anime-review-modal__header{
    padding:22px 26px 18px;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    background:linear-gradient(180deg,rgba(239,45,56,.055),rgba(239,45,56,0));
}
.anime-review-modal__eyebrow{
    margin-bottom:5px;
    color:#ff3945;
    font-size:.68rem;
    letter-spacing:.16em;
    text-transform:uppercase;
}
.anime-review-modal .modal-title{
    margin:0;
    color:#f5f7fa;
    line-height:1.1;
}
.anime-review-modal__body{
    padding:24px 26px 22px;
}
.anime-review-modal__anime-title{
    color:#fff;
    font-size:1.02rem;
    font-weight:700;
}
.anime-review-modal__hint{
    margin-top:4px;
    color:#7f8b99;
    font-size:.82rem;
    line-height:1.5;
}
.anime-review-modal__stars{
    margin:20px 0 24px;
    padding:18px 18px 15px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:14px;
    background:rgba(255,255,255,.018);
}
.anime-review-modal .review-stars-row{
    gap:7px!important;
}
.anime-review-modal .review-star-segment{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border:1px solid rgba(255,255,255,.13)!important;
    border-radius:50%;
    color:#5e6875!important;
    transition:transform .22s cubic-bezier(.25,.1,.25,1),border-color .22s ease,background .22s ease,color .22s ease;
}
.anime-review-modal .review-star-segment:hover,
.anime-review-modal .review-star-segment:focus-visible{
    transform:scale(1.055);
    border-color:rgba(239,45,56,.62)!important;
    background:rgba(239,45,56,.08);
    color:#ef2d38!important;
    outline:none;
}
.anime-review-modal .review-star-half{
    font-size:1.65rem;
    line-height:1;
}
.anime-review-modal__score{
    margin-top:11px;
    color:#fff;
    font-size:.84rem;
}
.anime-review-field{
    margin-bottom:18px;
}
.anime-review-modal .form-label{
    margin-bottom:7px;
    color:#d8dee7;
    font-size:.75rem;
    letter-spacing:.055em;
    text-transform:uppercase;
}
.anime-review-modal .form-control{
    border:1px solid rgba(255,255,255,.12);
    border-radius:10px;
    background:#0d1218;
    color:#f5f7fa;
    box-shadow:none;
}
.anime-review-modal input.form-control{
    min-height:46px;
}
.anime-review-modal textarea.form-control{
    min-height:150px;
    resize:vertical;
}
.anime-review-modal .form-control::placeholder{
    color:#56616e;
}
.anime-review-modal .form-control:focus{
    border-color:rgba(239,45,56,.72);
    background:#0e1319;
    color:#fff;
    box-shadow:0 0 0 3px rgba(239,45,56,.09);
}
.anime-review-modal__consent{
    margin-top:3px;
    color:#aeb7c2;
    font-size:.82rem;
}
.anime-review-modal .form-check-input{
    border-color:#495360;
    background-color:#0d1218;
}
.anime-review-modal .form-check-input:checked{
    border-color:#ef2d38;
    background-color:#ef2d38;
}
.anime-review-modal__footer{
    gap:10px;
    padding:16px 26px 20px;
    border-top:1px solid rgba(255,255,255,.08)!important;
    background:rgba(255,255,255,.012);
}
.anime-review-modal__footer .btn{
    min-width:118px;
    min-height:42px;
    border-radius:999px;
}
.anime-review-modal__submit{
    border-color:#ef2d38;
    background:#ef2d38;
    box-shadow:0 8px 26px rgba(239,45,56,.18);
    transition:transform .22s cubic-bezier(.25,.1,.25,1),box-shadow .22s ease,background .22s ease;
}
.anime-review-modal__submit:hover,
.anime-review-modal__submit:focus-visible{
    transform:scale(1.018);
    border-color:#ff3b46;
    background:#ff3b46;
    box-shadow:0 10px 30px rgba(239,45,56,.25);
}
.anime-review-modal [data-review-modal-notice]:not(:empty){
    margin-top:14px;
    padding:10px 12px;
    border-radius:9px;
    background:rgba(255,255,255,.035);
}
@media (max-width:575.98px){
    .anime-review-modal__header,
    .anime-review-modal__body{padding-left:18px;padding-right:18px}
    .anime-review-modal__footer{padding-left:18px;padding-right:18px}
    .anime-review-modal .review-star-segment{width:36px;height:36px}
    .anime-review-modal .review-star-half{font-size:1.4rem}
}
@media (prefers-reduced-motion:reduce){
    .anime-review-modal .review-star-segment,
    .anime-review-modal__submit{transition:none!important}
}

/* Selected review score: keep chosen stars visibly active after click. */
.anime-review-modal .review-star-segment.is-active{
    border-color:rgba(239,45,56,.72)!important;
    background:linear-gradient(180deg,rgba(239,45,56,.16),rgba(239,45,56,.07));
    color:#ff3945!important;
    box-shadow:0 0 0 1px rgba(239,45,56,.08),0 0 18px rgba(239,45,56,.12);
}
.anime-review-modal .review-star-segment.is-active .review-star-half{
    color:#ff3945!important;
    text-shadow:0 0 12px rgba(239,45,56,.38);
}
.anime-review-modal .review-star-segment.is-active:hover,
.anime-review-modal .review-star-segment.is-active:focus-visible{
    border-color:rgba(255,59,70,.9)!important;
    background:linear-gradient(180deg,rgba(255,59,70,.21),rgba(239,45,56,.1));
    color:#ff4a54!important;
}

/* Rating modal v3: same 10-star language as the detail panel. */
.anime-review-modal__stars{
    margin-top:18px;
    padding:18px 16px 14px;
    border-color:rgba(108,137,160,.22);
    background:rgba(5,9,13,.45);
}
.anime-review-modal .review-stars-row{
    display:grid!important;
    grid-template-columns:repeat(10,minmax(0,1fr));
    gap:7px!important;
    align-items:center;
}
.anime-review-modal .review-star-segment{
    appearance:none;
    display:grid;
    place-items:center;
    width:100%;
    min-width:0;
    height:auto;
    aspect-ratio:1;
    padding:5px!important;
    border:0!important;
    border-radius:9px;
    background:transparent!important;
    color:#819bb1!important;
    box-shadow:none!important;
    cursor:pointer;
    transition:transform .18s cubic-bezier(.25,.1,.25,1),background .18s ease,color .18s ease;
}
.anime-review-modal .review-star-segment svg{
    display:block;
    width:100%;
    max-width:30px;
    height:auto;
    fill:transparent;
    stroke:currentColor;
    stroke-width:1.55;
    stroke-linejoin:round;
    transition:fill .18s ease,stroke .18s ease,filter .18s ease;
}
.anime-review-modal .review-star-segment.is-active,
.anime-review-modal .review-star-segment.is-preview{
    color:#ff4654!important;
    background:rgba(255,49,65,.055)!important;
}
.anime-review-modal .review-star-segment.is-active svg,
.anime-review-modal .review-star-segment.is-preview svg{
    fill:#ff3545;
    stroke:#ff5966;
    filter:drop-shadow(0 0 7px rgba(255,48,65,.35));
}
@media (hover:hover) and (pointer:fine){
    .anime-review-modal .review-star-segment:hover,
    .anime-review-modal .review-star-segment:focus-visible{
        transform:scale(1.08);
        border:0!important;
        background:rgba(255,49,65,.07)!important;
        color:#ff5260!important;
        outline:none;
    }
}
.anime-review-modal .review-star-segment:focus-visible{
    outline:1px solid rgba(255,73,88,.8);
    outline-offset:1px;
}
.anime-review-modal__score{
    margin-top:12px;
    text-align:center;
    color:#f4f7fb;
    font-size:.9rem;
    letter-spacing:.06em;
}
@media (max-width:575.98px){
    .anime-review-modal .review-stars-row{gap:2px!important}
    .anime-review-modal .review-star-segment{padding:3px!important}
    .anime-review-modal .review-star-segment svg{max-width:25px}
}
