:root{--comp-primary:#0b4b87;--comp-primary-dark:#073864;--comp-primary-soft:#eef6ff;--comp-text:#172033;--comp-muted:#667085;--comp-border:#d6e1ec;--comp-bg:#f4f7fb;--comp-card:#fff;--comp-danger:#b42318;--comp-success:#157347;--comp-radius:14px;--comp-shadow:0 10px 32px rgba(15,35,60,.07)} .comp-page-hero *,.comp-section *{box-sizing:border-box}.comp-page-hero{padding:34px 0 30px;border-bottom:1px solid #e0e7ef;background:linear-gradient(135deg,#eef5ff,#fff)}.comp-page-hero .wrap,.comp-section .wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}.comp-kicker{display:inline-block;margin-bottom:7px;color:var(--comp-primary);font-size:12px;font-weight:800;letter-spacing:.09em}.comp-page-hero h1{margin:0 0 9px;color:#061b3a;font-size:34px;line-height:1.2;font-weight:700}.comp-page-hero p{max-width:900px;margin:0;color:#516176;font-size:15px;line-height:1.65}.comp-section{padding:34px 0 60px;background:var(--comp-bg)}.comp-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.comp-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 17px;border:1px solid var(--comp-border);border-radius:10px;background:#fff;color:var(--comp-primary);text-decoration:none;font-size:14px;font-weight:800}.comp-tabs a.active,.comp-tabs a:hover{border-color:var(--comp-primary);background:var(--comp-primary);color:#fff}.comp-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}.comp-card{background:var(--comp-card);border:1px solid var(--comp-border);border-radius:var(--comp-radius);box-shadow:var(--comp-shadow)}.comp-main-card{min-width:0;padding:26px}.comp-sidebar{position:sticky;top:92px;display:grid;gap:18px}.comp-sidebar-card{padding:21px}.comp-sidebar-card h3{margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #edf2f7;color:var(--comp-primary);font-size:18px}.comp-sidebar-card p,.comp-sidebar-card li{color:#475467;font-size:14px;line-height:1.65}.comp-sidebar-card ol,.comp-sidebar-card ul{margin:0;padding-left:20px}.comp-sidebar-card li+li{margin-top:7px}.comp-primary-link,.btn-submit{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border:0;border-radius:8px;background:var(--comp-primary);color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:800;cursor:pointer}.comp-primary-link{width:100%;margin-top:14px}.comp-primary-link:hover,.btn-submit:hover{background:var(--comp-primary-dark)}.comp-required-note{margin-bottom:18px;padding:11px 14px;border:1px solid #d9e4ef;border-radius:9px;background:#f8fbff;color:#42566f;font-size:13px}.comp-alert{padding:16px;border-radius:9px}.comp-alert-error{border:1px solid #f0c3bf;background:#fff5f4;color:#9f281e}.comp-success{padding:24px;border:1px solid #b8e0c8;border-radius:12px;background:#effaf3;color:var(--comp-success)}.comp-success h2{margin-top:0;color:#12613a} /* Calculator */ .comp-calculator-form{width:100%}.calculator-intro{text-align:center;margin-bottom:22px}.calculator-intro h2{margin:0;color:#0b1f3a;font-size:21px;font-weight:500;line-height:1.4}.calculator-subtitle{display:block;margin:5px 0 0;color:#0b1f3a;font-size:19px;line-height:1.4}.calculator-help-row{display:flex;justify-content:space-between;gap:20px;margin-top:28px;color:#344054;font-size:14px;text-align:left}.calculator-note{margin:18px 0 0;text-align:left;color:#0c426f;font-size:14px;font-style:italic}.calculator-note strong{color:var(--comp-danger);font-style:normal;text-decoration:underline}.calculator-section{padding:20px 0;border-top:1px solid #e3e9f0}.calculator-section h3,.calculator-section-title{margin:0 0 15px;color:#0b1f3a;font-size:20px;font-weight:600;line-height:1.4}.calculator-grid{display:grid;gap:18px 16px}.calculator-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.calculator-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.calculator-grid-followup{margin-top:18px}.loss-choice-grid{display:flex;justify-content:center;gap:14px}.choice-card{display:flex!important;align-items:center;gap:8px;min-width:145px;margin:0!important;padding:11px 16px;border:1px solid #c9d6e4;border-radius:9px;background:#fff;cursor:pointer}.choice-card:has(input:checked){border-color:var(--comp-primary);background:#f1f7fd}.road-loss-panel.is-hidden,.is-hidden{display:none!important}.required-mark,.required:after,.red-req,.text-danger{color:var(--comp-danger)}.required:after{content:' *'}.form-group{min-width:0}.comp-main-card label{display:block;margin:0 0 7px;color:#111827;font-size:13px;line-height:1.45;font-weight:700}.comp-main-card input[type=text],.comp-main-card input[type=email],.comp-main-card input[type=tel],.comp-main-card input[type=number],.comp-main-card input[type=date],.comp-main-card select,.comp-main-card textarea,.comp-main-card .form-control{display:block;width:100%!important;max-width:100%!important;min-height:46px;margin:0;padding:10px 13px!important;border:1px solid #c8d5e3!important;border-radius:8px!important;background:#fff;color:var(--comp-text);font:inherit;font-size:14px!important;outline:none;box-shadow:none!important}.comp-main-card textarea{min-height:110px;resize:vertical}.comp-main-card input:focus,.comp-main-card select:focus,.comp-main-card textarea:focus{border-color:var(--comp-primary)!important;box-shadow:0 0 0 3px rgba(11,75,135,.10)!important}.comp-main-card input[readonly],.comp-main-card :disabled{background:#f4f7fa;color:#667085}.comp-main-card input[type=file]{width:100%;min-height:48px;padding:7px 9px;border:1px solid #c8d5e3;border-radius:8px;background:#f9fbfd}.comp-main-card input[type=file]::file-selector-button{margin-right:10px;padding:8px 12px;border:0;border-radius:6px;background:#eaf3fc;color:var(--comp-primary);font-weight:800}.comp-main-card input[type=radio],.comp-main-card input[type=checkbox]{width:16px!important;height:16px!important;min-width:16px!important;margin:0!important;accent-color:var(--comp-primary)}.comp-submit-row{display:flex;justify-content:center;margin-top:18px}.comp-submit-row .btn-submit{min-width:190px}.btn-submit:disabled{opacity:.55;cursor:not-allowed}.input_required,.is-invalid{border-color:var(--comp-danger)!important}.offence-list{display:grid;gap:9px}.offence-card{display:grid!important;grid-template-columns:44px minmax(0,1fr);margin:0!important;border:1px solid var(--comp-border);border-radius:9px;background:#fff;overflow:hidden;cursor:pointer}.offence-control{display:flex;align-items:center;justify-content:center;min-height:58px;border-right:1px solid var(--comp-border);background:#f4f8fb}.offence-copy{display:flex;flex-direction:column;justify-content:center;padding:9px 12px}.offence-copy strong{color:#344054;font-size:14px;line-height:1.45}.offence-copy small{margin-top:3px;padding-top:3px;border-top:1px solid #edf1f5;color:#526174;font-size:13px;line-height:1.45}.railway-sub-list{padding-left:28px!important}.railway-sub-loading,.railway-sub-error{padding:10px 12px;list-style:none}.railway-sub-card{display:grid;grid-template-columns:40px minmax(0,1fr);border:1px solid var(--comp-border);border-radius:8px;background:#fff;overflow:hidden}.railway-sub-radio{display:flex;align-items:center;justify-content:center;border-right:1px solid var(--comp-border);background:#f5f8fb}.railway-sub-content{padding:9px 12px}.comp-result{margin-top:22px;padding:20px;border:1px solid var(--comp-border);border-radius:11px;background:#fbfdff;overflow-x:auto}.comp-result table{width:100%;border-collapse:collapse}.comp-result th,.comp-result td{padding:10px 12px;border:1px solid var(--comp-border);text-align:left;vertical-align:top}.comp-result th{background:#f2f7fb}.info_block{padding:12px;border:1px solid #d8e4ef;border-radius:8px;background:#f8fbff} /* OTP */ .comp-shared-otp,.comp-case-otp{width:100%;margin-top:22px;padding:19px;border:1px solid #cfe0ef;border-radius:11px;background:#f8fbff}.comp-main-card [data-lso-otp]{width:100%}.comp-main-card .lso-otp-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.comp-main-card .lso-otp-heading strong{display:block;margin-bottom:3px;color:#061b3a}.comp-main-card .field-help{display:block;color:var(--comp-muted);font-size:12px}.comp-main-card [data-otp-send-button],.comp-main-card [data-otp-resend-button]{min-width:120px;min-height:42px;padding:8px 15px;border:1px solid var(--comp-primary);border-radius:8px;background:#fff;color:var(--comp-primary);font-weight:800;cursor:pointer}.comp-main-card [data-otp-block]{margin-top:15px;padding-top:15px;border-top:1px solid #d9e4ef}.comp-main-card [data-otp-block].is-hidden{display:none!important}.mobile-otp-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.comp-main-card [data-otp-input]{text-align:center;letter-spacing:.18em;font-weight:800} /* Legacy case forms */ .comp-main-card form{width:100%}.comp-main-card .card-heading{position:relative;margin:24px 0 0!important;padding:14px 17px 14px 44px!important;border:1px solid var(--comp-border)!important;border-bottom:0!important;border-radius:11px 11px 0 0!important;background:linear-gradient(180deg,#f7fbff,#eef6ff)!important;color:#0b1f3a!important;font-size:18px!important;font-weight:800!important}.comp-main-card .card-heading:first-child{margin-top:0!important}.comp-main-card .card-heading:before{content:'';position:absolute;left:17px;top:50%;width:14px;height:14px;border:4px solid rgba(11,75,135,.18);border-radius:50%;background:var(--comp-primary);transform:translateY(-50%)}.comp-main-card .card-heading+.card-body{margin:0 0 22px!important;padding:20px!important;border:1px solid var(--comp-border)!important;border-radius:0 0 11px 11px!important;background:#fff!important}.comp-main-card .card-body>.row{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr));gap:17px 15px;margin:0!important}.comp-main-card .card-body>.row>.col-md-2{grid-column:span 2}.comp-main-card .card-body>.row>.col-md-3{grid-column:span 3}.comp-main-card .card-body>.row>.col-md-4{grid-column:span 4}.comp-main-card .card-body>.row>.col-md-5{grid-column:span 5}.comp-main-card .card-body>.row>.col-md-6{grid-column:span 6}.comp-main-card .card-body>.row>.col-md-7{grid-column:span 7}.comp-main-card .card-body>.row>.col-md-8{grid-column:span 8}.comp-main-card .card-body>.row>.col-md-9{grid-column:span 9}.comp-main-card .card-body>.row>.col-md-10{grid-column:span 10}.comp-main-card .card-body>.row>.col-md-12,.comp-main-card .card-body>.row>.col-12{grid-column:1/-1}.comp-main-card .card-body>.row>[class*=col-]{width:auto!important;max-width:none!important;margin:0!important;padding:0!important;flex:none!important}.comp-main-card .card-body h5{grid-column:1/-1;margin:8px 0 0;padding-bottom:8px;border-bottom:1px solid #e0e7ef;color:var(--comp-primary);font-size:15px}.declaration{display:block;padding:14px 16px;border:1px solid #d9e4ef;border-radius:9px;background:#fbfdff;color:#384b63;font-size:13px;line-height:1.7}
/*.agree{display:inline-block!important;width:auto!important;min-width:90px!important;min-height:28px!important;padding:1px 5px!important;border:0!important;border-bottom:1px dashed #7c8b9c!important;border-radius:0!important;background:transparent!important;text-align:center}*/
.bnfcry_block{position:relative;margin-top:10px;padding:14px;border:1px solid var(--comp-border);border-radius:9px;background:#fbfdff}.bnfc_block_cntrl{position:absolute;top:4px;font-size:13px}.bnfc_block_cntrl_del{right:5px;padding:2px 7px;border-radius:5px;background:#c92b2b;color:#fff}.badge-primaree{color:#000!important}.comp-main-card address{color:#35516f;font-style:normal;line-height:1.6} 
@media(max-width:1050px){.calculator-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.comp-main-card .card-body>.row>.col-md-2,.comp-main-card .card-body>.row>.col-md-3,.comp-main-card .card-body>.row>.col-md-4,.comp-main-card .card-body>.row>.col-md-5,.comp-main-card .card-body>.row>.col-md-6,.comp-main-card .card-body>.row>.col-md-7,.comp-main-card .card-body>.row>.col-md-8,.comp-main-card .card-body>.row>.col-md-9,.comp-main-card .card-body>.row>.col-md-10{grid-column:span 6}}
@media(max-width:767px){.comp-page-hero .wrap,.comp-section .wrap{width:calc(100% - 24px)}.comp-page-hero{padding:27px 0}.comp-page-hero h1{font-size:26px}.comp-section{padding:22px 0 40px}.comp-tabs{display:grid;grid-template-columns:1fr}.comp-main-card{padding:15px}.comp-sidebar{grid-template-columns:1fr}.calculator-help-row{display:grid;gap:6px}.calculator-grid-2,.calculator-grid-3,.calculator-grid-4{grid-template-columns:1fr}.loss-choice-grid{display:grid;grid-template-columns:1fr}.choice-card{width:100%}.comp-main-card .card-body>.row{grid-template-columns:1fr}.comp-main-card .card-body>.row>[class*=col-]{grid-column:1/-1!important}.comp-main-card .lso-otp-heading{align-items:stretch;flex-direction:column}.comp-main-card [data-otp-send-button],.comp-main-card [data-otp-resend-button]{width:100%}.mobile-otp-row{grid-template-columns:1fr}.comp-submit-row{display:block}.comp-submit-row .btn-submit{width:100%;min-width:0}.calculator-subtitle{font-size:17px}}

/**/
.comp-main-card .calculator-section-title{
    display:block;
    width:100%;
    margin:0 0 18px!important;
    padding:0 0 12px!important;
    border-bottom:1px solid #dfe7ef;
    background:transparent!important;
    color:#0b1f3a!important;
    font-size:20px!important;
    line-height:1.45!important;
    font-weight:700!important;
}

.comp-main-card .calculator-section-title::after{
    display:none!important;
}


/* Main railway UL */
.comp-main-card .calculator-section-title + ul,
.comp-main-card ul.col-md-12:has(.offence){
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
}


/* Remove bootstrap row behavior */
.comp-main-card ul:has(.offence) > li.row{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
}


/* Main column */
.comp-main-card ul:has(.offence) > li.row > .col-md-12{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    flex:none!important;
}


/* Hidden AJAX link */
.comp-main-card .get_sub{
    display:none!important;
}


/* Category card */
.comp-main-card ul:has(.offence) .input-group{
    display:grid!important;
    grid-template-columns:52px minmax(0,1fr)!important;
    align-items:stretch!important;
    width:100%!important;
    min-height:64px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #ccd9e6!important;
    border-radius:10px!important;
    background:#fff!important;
    overflow:hidden!important;
    box-shadow:none!important;
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}


/* Hover */
.comp-main-card ul:has(.offence) .input-group:hover{
    border-color:#0b4b87!important;
    box-shadow:0 3px 12px rgba(11,75,135,.08)!important;
}


/* Radio left area */
.comp-main-card ul:has(.offence) .input-group-prepend{
    display:flex!important;
    width:52px!important;
    min-width:52px!important;
    margin:0!important;
}


/* Remove bootstrap grey input box */
.comp-main-card ul:has(.offence) .input-group-text{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:52px!important;
    min-width:52px!important;
    height:100%!important;
    min-height:64px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-right:1px solid #d9e3ed!important;
    border-radius:0!important;
    background:#f5f9fd!important;
}


/* Radio */
.comp-main-card ul:has(.offence) .input-group-text input[type="radio"]{
    display:block!important;
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    margin:0!important;
    padding:0!important;
    cursor:pointer!important;
    accent-color:#0b4b87;
}


/* IMPORTANT:
   .form-control ko input jaisa design hone se rokega
*/
.comp-main-card ul:has(.offence) .input-group > .form-control{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:64px!important;
    margin:0!important;
    padding:10px 14px!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
    color:#172033!important;
}


/* Label */
.comp-main-card ul:has(.offence) .offence_name{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    color:#172033!important;
    font-size:14px!important;
    line-height:1.5!important;
    font-weight:600!important;
    cursor:pointer!important;
}


/* English / Hindi divider */
.comp-main-card ul:has(.offence) .offence_name hr{
    display:block!important;
    width:100%!important;
    margin:6px 0!important;
    padding:0!important;
    border:0!important;
    border-top:1px solid #e6ecf2!important;
}


/* Checked card */
.comp-main-card ul:has(.offence) .input-group:has(.offence:checked){
    border-color:#0b4b87!important;
    background:#f7fbff!important;
    box-shadow:0 0 0 2px rgba(11,75,135,.08)!important;
}

.comp-main-card ul:has(.offence) .input-group:has(.offence:checked) .input-group-text{
    background:#eaf4fd!important;
}

.comp-main-card ul:has(.offence) .input-group:has(.offence:checked) > .form-control{
    background:#f7fbff!important;
}


/* =========================================================
   RAILWAY SUB CATEGORY
   ========================================================= */

.comp-main-card .railway-sub-list,
.comp-main-card ul[id^="sub_list_"]{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:calc(100% - 34px)!important;
    max-width:calc(100% - 34px)!important;
    margin:9px 0 3px 34px!important;
    padding:0!important;
    list-style:none!important;
}


/* Mobile */
@media(max-width:767px){

    .comp-main-card .calculator-section-title{
        font-size:17px!important;
    }

    .comp-main-card ul:has(.offence) .input-group{
        grid-template-columns:44px minmax(0,1fr)!important;
        min-height:60px!important;
    }

    .comp-main-card ul:has(.offence) .input-group-prepend,
    .comp-main-card ul:has(.offence) .input-group-text{
        width:44px!important;
        min-width:44px!important;
    }

    .comp-main-card ul:has(.offence) .input-group-text{
        min-height:60px!important;
    }

    .comp-main-card ul:has(.offence) .input-group > .form-control{
        min-height:60px!important;
        padding:9px 11px!important;
    }

    .comp-main-card ul:has(.offence) .offence_name{
        font-size:13px!important;
    }

    .comp-main-card .railway-sub-list,
    .comp-main-card ul[id^="sub_list_"]{
        width:calc(100% - 15px)!important;
        max-width:calc(100% - 15px)!important;
        margin-left:15px!important;
    }
}

/**/
/* =========================================================
   DECLARATION / AGREEMENT FINAL STYLE
   Railway + Atrocity
   ========================================================= */

/* Outer declaration box */
#compensationCaseApp .declaration,
#compensationCaseApp .form-group:has(.agreement),
#compensationCaseApp .form-group:has(#agree) {
    display: block;
    width: 100%;
    margin: 14px 0 0 !important;
    padding: 18px 20px !important;
    border: 1px solid #d7e0e9 !important;
    border-radius: 9px !important;
    background: #ffffff !important;
    color: #202833 !important;
    font-size: 14px !important;
    line-height: 1.9 !important;
    font-weight: 600 !important;
    white-space: normal;
}

/* Atrocity label itself */
#compensationCaseApp .form-group:has(#agree) > label {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: normal !important;
}

/* Checkbox */
#compensationCaseApp .declaration > input[type="checkbox"],
#compensationCaseApp .form-group:has(#agree) input[type="checkbox"],
#compensationCaseApp .agreement {
    display: inline-block !important;
    width: 15px !important;
    min-width: 15px !important;
    height: 15px !important;
    min-height: 15px !important;
    margin: 0 6px 0 0 !important;
    padding: 0 !important;
    vertical-align: middle !important;
    accent-color: #0b4b87;
}

/* =========================================================
   INLINE AGREEMENT FIELDS
   ========================================================= */

#compensationCaseApp .agree,
#compensationCaseApp input.agree {
    display: inline-block !important;

    width: auto !important;
    max-width: none !important;
    min-width: 120px !important;

    height: 25px !important;
    min-height: 25px !important;

    margin: 0 6px !important;
    padding: 0 4px 2px !important;

    border: 0 !important;
    border-bottom: 2px dashed #333333 !important;
    border-radius: 0 !important;

    background: transparent !important;
    color: #222222 !important;

    box-shadow: none !important;
    outline: none !important;

    font-size: 14px !important;
    line-height: 22px !important;
    font-weight: 600 !important;

    text-align: center !important;
    vertical-align: baseline !important;
}

/* Disabled declaration fields */
#compensationCaseApp input.agree:disabled,
#compensationCaseApp input.agree[disabled] {
    opacity: 1 !important;
    background: transparent !important;
    color: #222222 !important;
    -webkit-text-fill-color: #222222 !important;
    cursor: default !important;
}

/* Field widths */
#compensationCaseApp .agree_name {
    width: 210px !important;
}

#compensationCaseApp .agree_gname {
    width: 210px !important;
}

#compensationCaseApp .agree_addr_teh {
    width: 220px !important;
}

#compensationCaseApp .agree_addr_dist {
    width: 210px !important;
}

#compensationCaseApp .agree_addr_state {
    width: 210px !important;
}

#compensationCaseApp .agree_vctm {
    width: 200px !important;
}

#compensationCaseApp .agree_vctm_gname {
    width: 200px !important;
}

/* Relation text */
#compensationCaseApp #relation_text {
    display: inline-block;
    margin: 0 4px;
    font-weight: 600;
}

/* Focus */
#compensationCaseApp .declaration .agree:focus,
#compensationCaseApp .form-group:has(#agree) .agree:focus {
    border: 0 !important;
    border-bottom: 2px dashed #0b4b87 !important;
    box-shadow: none !important;
}

/* =========================================================
   RAILWAY CLAIM SELECT
   ========================================================= */

#compensationCaseApp select[name="declare_agree"] {
    width: 100% !important;
    min-height: 46px !important;
    margin: 0 0 14px !important;
}

/* Hidden railway declaration */
#compensationCaseApp .declaration.is-hidden {
    display: none !important;
}

/* When JS shows it */
#compensationCaseApp .declaration:not(.is-hidden) {
    display: block !important;
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #compensationCaseApp .declaration,
    #compensationCaseApp .form-group:has(#agree) > label {
        padding: 15px !important;
        font-size: 13px !important;
        line-height: 2 !important;
    }

    #compensationCaseApp .agree,
    #compensationCaseApp input.agree {
        min-width: 100px !important;
        width: 125px !important;
        margin: 2px 4px !important;
        font-size: 13px !important;
    }

    #compensationCaseApp .agree_name,
    #compensationCaseApp .agree_gname,
    #compensationCaseApp .agree_addr_teh,
    #compensationCaseApp .agree_addr_dist,
    #compensationCaseApp .agree_addr_state,
    #compensationCaseApp .agree_vctm,
    #compensationCaseApp .agree_vctm_gname {
        width: 125px !important;
    }
}

/**/

/* =========================================================
   DATE INPUT + CALENDAR ICON
   ========================================================= */

#compensationCaseApp .input-icon {
    position: relative;
    width: 100%;
    display: block;
}

#compensationCaseApp .input-icon .form-control {
    width: 100% !important;
    height: 46px !important;
    min-height: 46px !important;
    padding: 10px 42px 10px 14px !important;
    margin: 0 !important;
    box-sizing: border-box;
}

#compensationCaseApp .input-icon > i,
#compensationCaseApp .input-icon > .fa {
    position: absolute !important;
    right: 14px !important;
    left: auto !important;
    top: 50% !important;
    transform: translateY(-50%) !important;

    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    color: #0b315c;
    font-size: 15px;
    line-height: 1;
    z-index: 2;
    pointer-events: none;
}

/* readonly date fields */
#compensationCaseApp input.date[readonly] {
    cursor: pointer;
    background: #fff !important;
}

/* Labels */
#compensationCaseApp .form-group > label {
    display: block;
    margin-bottom: 7px;
}

/* Required star */
#compensationCaseApp label.required::after {
    content: " *";
    color: #c62828;
}

/* Mobile */
@media (max-width: 767px) {
    #compensationCaseApp .input-icon .form-control {
        height: 44px !important;
        min-height: 44px !important;
        padding-right: 40px !important;
    }

    #compensationCaseApp .input-icon > i,
    #compensationCaseApp .input-icon > .fa {
        right: 13px !important;
    }
}

/**/
/* =========================================================
   TREATMENT DURATION - D / M / Y SAME ROW
   ========================================================= */

#compensationCaseApp .form-group.col-md-4 .input-group .input-group {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: 100% !important;
    gap: 0 !important;
}

/* D / M / Y number dropdown */
#compensationCaseApp .form-group.col-md-4 .input-group .input-group select.form-control {
    display: block !important;
    flex: 1 1 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 4px !important;
    text-align: center !important;
    border-radius: 0 !important;
}

/* D / M / Y labels */
#compensationCaseApp .form-group.col-md-4 .input-group .input-group b.form-control {
    display: flex !important;
    flex: 0 0 32px !important;
    width: 42px !important;
    min-width: 42px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 0 !important;
    font-weight: 600 !important;
    background: #f7f9fc !important;
}

/* First select */
#compensationCaseApp .form-group.col-md-4 .input-group .input-group select:first-child {
    border-radius: 7px 0 0 7px !important;
}

/* Last Y label */
#compensationCaseApp .form-group.col-md-4 .input-group .input-group b:last-child {
    border-radius: 0 7px 7px 0 !important;
}

/* Avoid double borders */
#compensationCaseApp .form-group.col-md-4 .input-group .input-group > * + * {
    margin-left: -1px !important;
}

/* Outer input group */
#compensationCaseApp .form-group.col-md-4 > .input-group {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

/* Mobile - still same row */
@media (max-width: 767px) {
    #compensationCaseApp .form-group.col-md-4 .input-group .input-group {
        flex-wrap: nowrap !important;
    }

    #compensationCaseApp .form-group.col-md-4 .input-group .input-group select.form-control {
        flex: 1 1 0 !important;
        width: 0 !important;
        min-width: 0 !important;
    }

    #compensationCaseApp .form-group.col-md-4 .input-group .input-group b.form-control {
        flex: 0 0 28px !important;
        width: 28px !important;
        min-width: 28px !important;
    }
}

/**/

/* =========================================================
   ATROCITY OFFENCE & SUB-OFFENCE - FINAL FIX
   ========================================================= */

#atrocity_calculator .offence-section {
    width: 100%;
}

#atrocity_calculator .calculator-section-title,
#atrocity_calculator .offence-section > h3 {
    display: block;
    width: 100%;
    margin: 0 0 18px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid #dce5ee;
    color: #071f3e;
    font-size: 20px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}


/* =========================================================
   MAIN LIST
   ========================================================= */

#atrocity_calculator .atrocity-offence-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* Group with sub-offences */
#atrocity_calculator .atrocity-offence-group {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================================
   ALL OFFENCE CARDS
   ========================================================= */

#atrocity_calculator .offence-card {
    display: grid !important;

    grid-template-columns:
        50px minmax(0, 1fr) !important;

    align-items: stretch !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    min-height: 66px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 1px solid #cedbea !important;
    border-radius: 9px !important;

    background: #ffffff !important;

    box-sizing: border-box !important;

    overflow: hidden !important;

    cursor: pointer;

    color: #172033 !important;

    text-align: left !important;

    box-shadow: none !important;

    transition:
        border-color .2s ease,
        background .2s ease,
        box-shadow .2s ease;
}


/* IMPORTANT:
   button parent offence shrink issue fix
*/
#atrocity_calculator button.offence-card,
#atrocity_calculator .atrocity-parent-toggle {
    display: grid !important;

    width: 100% !important;
    max-width: 100% !important;

    min-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 1px solid #cedbea !important;

    font-family: inherit !important;

    appearance: none !important;
    -webkit-appearance: none !important;

    text-align: left !important;
}


/* Hover */
#atrocity_calculator .offence-card:hover {
    border-color: #0b5797 !important;

    box-shadow:
        0 3px 12px
        rgba(11, 87, 151, .08) !important;
}


/* =========================================================
   LEFT CONTROL
   ========================================================= */

#atrocity_calculator .offence-control {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 50px !important;
    min-width: 50px !important;

    min-height: 64px !important;

    margin: 0 !important;
    padding: 0 !important;

    border-right: 1px solid #d9e3ed !important;

    background: #f3f7fa !important;
}


/* Checkbox / Radio */
#atrocity_calculator .offence-control input[type="checkbox"],
#atrocity_calculator .offence-control input[type="radio"] {
    display: block !important;

    width: 17px !important;
    min-width: 17px !important;

    height: 17px !important;
    min-height: 17px !important;

    margin: 0 !important;
    padding: 0 !important;

    accent-color: #0b5797;

    cursor: pointer;
}


/* Arrow */
#atrocity_calculator .offence-arrow {
    color: #081f38 !important;

    font-size: 19px !important;
    line-height: 1 !important;

    font-weight: 700 !important;

    transition: transform .2s ease;
}


/* Arrow rotation when open */
#atrocity_calculator
.atrocity-parent-toggle.is-open
.offence-arrow {
    transform: rotate(90deg);
}


/* =========================================================
   TEXT AREA
   ========================================================= */

#atrocity_calculator .offence-copy {
    display: flex !important;

    flex-direction: column !important;
    justify-content: center !important;

    width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;

    padding:
        9px 12px !important;

    background: #fff !important;
}


/* First language */
#atrocity_calculator .offence-copy strong {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 0 5px !important;

    color: #14233b !important;

    font-size: 14px !important;
    line-height: 1.45 !important;

    font-weight: 700 !important;

    overflow-wrap: anywhere;
}


/* Second language */
#atrocity_calculator .offence-copy small {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;

    padding: 5px 0 0 !important;

    border-top:
        1px solid #e4eaf0 !important;

    color: #4f5f70 !important;

    font-size: 13px !important;
    line-height: 1.45 !important;

    font-weight: 400 !important;

    overflow-wrap: anywhere;
}


/* =========================================================
   SELECTED STATE
   ========================================================= */

#atrocity_calculator .offence-card.is-selected {
    border-color: #0b5797 !important;

    background: #f7fbff !important;

    box-shadow:
        0 0 0 2px
        rgba(11, 87, 151, .08) !important;
}


#atrocity_calculator
.offence-card.is-selected
.offence-control {
    background: #eaf4fd !important;
}


#atrocity_calculator
.offence-card.is-selected
.offence-copy {
    background: #f7fbff !important;
}


/* =========================================================
   SUB-OFFENCE LIST
   ========================================================= */

#atrocity_calculator .atrocity-sub-list {
    display: flex !important;

    flex-direction: column !important;

    gap: 8px !important;

    width: calc(100% - 30px) !important;
    max-width: calc(100% - 30px) !important;

    margin:
        8px 0
        2px 30px !important;

    padding: 0 !important;
}


/* Hidden state */
#atrocity_calculator
.atrocity-sub-list.is-hidden {
    display: none !important;
}


/* Sub-card */
#atrocity_calculator .atrocity-sub-card {
    width: 100% !important;

    min-height: 58px !important;

    grid-template-columns:
        46px minmax(0, 1fr) !important;
}


#atrocity_calculator
.atrocity-sub-card
.offence-control {
    width: 46px !important;
    min-width: 46px !important;

    min-height: 58px !important;
}


/* =========================================================
   REMOVE COMMON BOOTSTRAP / OLD CSS CONFLICTS
   ========================================================= */

#atrocity_calculator .offence-card .form-control {
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;
}


#atrocity_calculator .atrocity-offence-list button {
    float: none !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

    #atrocity_calculator .offence-card,
    #atrocity_calculator button.offence-card {
        width: 100% !important;
        min-width: 100% !important;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #atrocity_calculator
    .calculator-section-title,
    #atrocity_calculator
    .offence-section > h3 {
        font-size: 17px !important;

        line-height: 1.45 !important;
    }


    #atrocity_calculator .offence-card {
        grid-template-columns:
            42px minmax(0, 1fr) !important;

        min-height: 60px !important;
    }


    #atrocity_calculator .offence-control {
        width: 42px !important;
        min-width: 42px !important;

        min-height: 60px !important;
    }


    #atrocity_calculator .offence-copy {
        padding:
            8px 10px !important;
    }


    #atrocity_calculator
    .offence-copy strong {
        font-size: 13px !important;
    }


    #atrocity_calculator
    .offence-copy small {
        font-size: 12px !important;
    }


    #atrocity_calculator
    .atrocity-sub-list {
        width:
            calc(100% - 14px) !important;

        max-width:
            calc(100% - 14px) !important;

        margin-left:
            14px !important;
    }
}
/**/
/* =========================================================
   MOBILE VIEW FINAL FIX
   Compensation Calculator
   ========================================================= */

@media (max-width: 767px) {

    /* Main wrappers */
    .comp-page-hero .wrap,
    .comp-section .wrap {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    /* IMPORTANT: Desktop 2-column layout -> Mobile 1-column */
    .comp-layout,
    .comp-case-layout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 18px !important;
    }

    /* Main calculator */
    .comp-main-card,
    .comp-case-main {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 15px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    /* Sidebar must come BELOW calculator */
    .comp-sidebar {
        position: static !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 14px !important;
        margin: 0 !important;
    }

    .comp-sidebar-card {
        width: 100% !important;
        max-width: 100% !important;
        padding: 16px !important;
        box-sizing: border-box !important;
    }

    /* Calculator form */
    .comp-calculator-form,
    .calculator-section,
    .calculator-user-section {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    /* All calculator grids one column */
    .calculator-grid,
    .calculator-grid-2,
    .calculator-grid-3,
    .calculator-grid-4 {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        gap: 14px !important;
    }

    /* Form groups */
    .calculator-grid .form-group,
    .comp-main-card .form-group {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    /* Inputs */
    .comp-main-card input,
    .comp-main-card select,
    .comp-main-card textarea,
    .comp-main-card .form-control {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    /* Loss buttons */
    .loss-choice-grid {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .choice-card {
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        padding: 10px !important;
    }

    /* Tabs */
    .comp-tabs {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        gap: 8px !important;
    }

    .comp-tabs a {
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Calculator heading */
    .calculator-intro {
        width: 100% !important;
        text-align: left !important;
    }

    .calculator-intro h2 {
        font-size: 19px !important;
        line-height: 1.4 !important;
    }

    .calculator-subtitle {
        font-size: 15px !important;
        line-height: 1.55 !important;
    }

    .calculator-help-row {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        width: 100% !important;
    }

    /* Prevent horizontal overflow */
    #compensationCalculator,
    #compensationCaseApp,
    .comp-section {
        overflow-x: hidden !important;
    }

    /* Buttons */
    .comp-submit-row,
    .comp-submit-row .btn-submit,
    .comp-primary-link {
        width: 100% !important;
    }
}