body{
    margin: 0px;
    padding: 0px;
}
.site-header {
    /* position: sticky; */
    top: 0;
    width: 100%;
    /* background: rgba(255, 255, 255, 0.85); */
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    z-index: 1000;
    background-color: black;
}

.header-content {
    max-width: 1200px;
    margin: auto;
    padding: 14px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.error{
    background-color: #f4c2c7;
    border-radius: 5px;
    margin-left: 5px;
    padding: 8px;
    color:#b02a37;
    width:67%;
}
.logo-container img {
    width: 130px;
    transition: transform 0.3s ease;
}

.logo-container img:hover {
    transform: scale(1.05);
}

/* NAV */
.navigation .nav-list {
    display: flex;
    align-items: center;
    gap: 28px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.navigation .nav-list li a {
    position: relative;
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
    color: #fff;
    padding: 8px 4px;
    transition: color 0.3s ease;
}

/* underline animation */
.navigation .nav-list li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0%;
    height: 2px;
    background: #4f46e5;
    transition: width 0.3s ease;
}

.navigation .nav-list li a:hover {
    color: #4f46e5;
}

.navigation .nav-list li a:hover::after {
    width: 100%;
}

/* Logout button */
.logout-form {
    margin: 0;
}
.logout-btn {
    background: linear-gradient(135deg, #ef4444, #dc2626);
    color: #fff;
    border: none;
    padding: 9px 16px;
    border-radius: 10px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 6px 15px rgba(239, 68, 68, 0.25);
}

.logout-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(239, 68, 68, 0.35);
}

.container{
    width: 100%;
    /* margin: 50px auto; */
}
/* Container */
.home-container {
    max-width: 1200px;
    margin: auto;
    padding: 20px;
    height:auto;
}

.info-container,.property-detail{
    padding: 20px;
    box-shadow: 0px 15px 33px 4px #00000026;
    border-radius: 8px;
    width: 400px;
}
.property-detail{
    margin-top: 20px;
    background: #fff;
    padding: 25px;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    max-width: 900px;
    width:900px;
}
.profile-overview{
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
}
.profile-pic,.basic-info-container,.social-info-container{
    padding: 10px 20px 20px 20px;
    box-shadow: 0px 2px 10px 0px #00000026;
    border-radius: 8px;
}
.img-wrapper{
    position: relative;
}
.img-container{
    margin-top:30px;
    width: fit-content;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
}
.img-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pic-actions{
    position: absolute;
    bottom: 0;
    right: 0;
}
.pic-main-btn,
.pic-action-btn{
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 50%;
    cursor: pointer;
}

.pic-main-btn{
    position: relative;
    z-index: 2;
}

.pic-action-btn{
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0;
    transition: .25s;
}

/* Show buttons on hover */
.pic-actions:hover .edit-btn{
    right: 40px;
    opacity: 1;
}

.pic-actions:hover .delete-btn{
    right: 80px;
    opacity: 1;
}
.basic-info-container{
    width: 600px;
}
.social-info-container{
    width: 787px;
}
.basic-info-container h3,.social-info-container h3{
    text-align: center;
    margin:10px;
}
.profile-basic-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}
.profile-social-grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    text-align: center;
    gap: 5px;
}
.property-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}
.last {
  grid-column: 1 / 4;      /* Span all 3 columns */
  justify-self: center;    /* Center the item */
  width: fit-content;       /* Only as wide as its content */
  min-width: 150px;         /* Optional */
}
.property-info, .profile-info {
    background: #f9fafb;
    padding: 12px;
    border-radius: 4px;
}
.property-status{
    background: #f9fafb;
    padding: 8px 65px;
    border-radius: 4px;
}

.property-info.full-width {
    grid-column: span 2;
}

.label {
    display: block;
    font-size: 12px;
    color: #777;
}

.value {
    font-size: 15px;
    font-weight: 500;
    color: #333;
}

.property-actions {
    margin-top: 20px;
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
}

.btn {
    padding: 10px 15px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    color: #fff;
    text-decoration: none;
}

.publish {
    background: green;
}

.deactivate {
    background: red;
}

.form-container{
    margin: 20px auto;
    padding: 20px;
    box-shadow: 0px 15px 33px 4px #00000026;
    border-radius: 8px;
    width: 500px;
}
.profile-info p,.property-info p{
    display:inline-block;
    margin:10px;
}
/* Add Property Button */
.page-heading,.plan-heading,.plan-price{
    text-align:center;
}
.addprop-fields,.editprop-fields,
.editprof-fields,.changepass-fields{
    display:block;
    margin:5px;
}
.prop-input,.prof-input,.pass-input{
    padding:8px;
    border:1px solid #1d1d1d;
    border-radius:5px;
    width: 70%;
    box-sizing: border-box;
}
.field{
    margin-bottom:10px;
}
.prop-description{
    width:90%;
    border:1px solid #1d1d1d;
    border-radius:5px;
    box-sizing: border-box;
}
.add-property-btn,.edit-property-btn,
.profile-save-btn,.pass-save-btn{
    display: inline-block;
    background: linear-gradient(135deg, #4f46e5, #6366f1);
    color: #fff;
    padding: 10px 20px;
    border-radius: 8px;
    border:none;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
    margin: 10px ;
}

.add-property-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(79, 70, 229, 0.25);
}
.property-container{
    min-height: 100vh;
    width: 1200px;
    margin: 0 auto;
    padding:0 28px;
}
.portfolio{
    padding: 36px 0 60px;
}
/* Property Cards */
.property-cards {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 20px;
}

.property-link {
    text-decoration: none;
    color: inherit;
    display: block;
}
.pf-head{
    margin-bottom:26px;
}
.pf-head h1{
    font-family: var(--font-display);
    font-weight: 800;
    font-size: 28px;
    letter-spacing: -.02em;
    color: var(--navy-ink);
}
.pf-head p {
    color: var(--text-muted);
    font-size: 14px;
    margin-top: 4px;
}
.pfhealth{
    text-align: center;
}
.pfhealth .score{
    font-family: var(--font-display);
    font-weight: 800;
    font-size: 26px;
    color: var(--navy-ink);
    line-height: 1;
}
.pfhealth .txt{
    font-size: 10.5px;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--text-muted);
    margin-top: 3px;
}
.pfstatus{
    text-align: right;
    min-width: 150px;
}
.pfstatus .status.prog{
    color: var(--st-inprogress);
}
.pfstatus .status.done{
    color: var(--st-resolved);
}
.pfstatus .status{
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--navy-muted);
}
.pfadd {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 22px;
    color: var(--green);
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
}

.property-filter{
    display: flex;
    justify-content: space-between;
    margin-bottom:40px;
}
.property-filter select{
    padding:8px;
    outline:none;
    border: 1px solid var(--line-strong);
    background: inherit;
}
.properties-list,.info{
    display: grid;    
    gap: 16px;
}
.property-card,.user-card {
    display: flex;
    align-items: center;
    gap: 28px;
    background: var(--surface);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    box-shadow: var(--shadow-sm);
    padding:24px 26px;
    text-decoration: none;
    color:inherit;
    transition: transform 0.3s ease;
}
.property-card .main{
    flex: 1;
    min-width: 0;
}
.property-card .addr{
    font-family: var(--font-display);
    font-weight: 800;
    font-size: 20px;
    letter-spacing: -.01em;
}
.property-card .addr a{
    text-decoration: none;
    color: var(--navy-ink);
}
.property-card .chev a{
    text-decoration: none;
    color: var(--navy-muted);
}
.property-card .meta{
    color: var(--text-2);
    font-size: 13.5px;
    margin-top: 5px;
}
.property-card .mid {
    display: flex;
    align-items: center;
    gap: 30px;
    flex: none;
}
.chev {
    color: var(--navy-muted);
    flex: none;
}
.property-card:hover {
    border-color: var(--line-strong);
    box-shadow: var(--shadow);
}
.view-property,.edit-property,.img-upload-btn{
    background: var(--green);
    color: white;
    font-size:13px;
    text-decoration: none;
    padding: 8px 8px;
    border-radius:5px;
    border: none;
    cursor:pointer;

}
.card-content {
    padding: 12px 16px;
}

.card-content h3 {
    font-size: 1.1rem;
    margin-bottom: 8px;
}

.card-content p {
    font-size: 0.9rem;
    margin-bottom: 12px;
    color: #4b5563;
}
.status{
    display:inline;
}
.links
{
    display:flex;
    gap:5px;
}
.category-block h3 {
    text-transform: capitalize;
}
/* Responsive */
@media (max-width: 768px) {
    .property-cards {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    }
}

.flash-message {
    position: fixed;
    top: 20px;
    right: 20px;
    padding: 15px 25px;
    border-radius: 5px;
    color: #fff;
    font-weight: bold;
    z-index: 1000;
    opacity: 0.95;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    font-size: 16px;
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.flash-message.success {
    background-color: #28a745;
}
.flash-message.failure{
    background-color:#f4c2c7;;
    color:#b02a37;
}
.flash-hide {
    opacity: 0;
    transform: translateY(-20px);
}

.profile-container,.admin-container{
    display: flex;
    min-height: 100vh;
    width: 1200px;
    margin: 0 auto;
}
.btn-div {
    display: flex;
    gap: 15px;
    align-items: center;
}

.btn-div p{
    margin: 0px;
    vertical-align: middle;
}

/* Sidebar */
.profile-sidebar, .property-sidebar, .admin-sidebar{
    width: 200px;
    /* background-color: #f4f4f4; */
    padding: 20px;
    box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
}

.profile-sidebar ul, .property-sidebar ul, .admin-sidebar ul{
    list-style: none;
    padding: 0;
}

.profile-sidebar li, .property-sidebar li, .admin-sidebar li {
    margin-bottom: 15px;
}
.tab-active{
    background-color: #e1e1e1;
    padding:8px;
    border-radius: 8px;
}
.profile-sidebar a, .property-sidebar a, .admin-sidebar a{
    text-decoration: none;
    color: #333;
}

.profile-sidebar a:hover, .property-sidebar a:hover, .admin-sidebar a:hover {
    color: #4f46e5;
}


/* Content */
.profile-content,.property-content, .admin-content{
    flex: 1;
    padding: 30px;
}
.home-container .card-info a{
    text-decoration:none;
    color:#000;
}
.link-active{
    font-weight: bold;
    color: #007bff;
}

.plan-cards
{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
}

.plan-card
{ 
    background: rgba(255, 255, 255, 0.9);
    border-radius: 12px;
    border: 2px solid #fff;   
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
    padding:20px;
}

.plan-card:hover {
    transform: translateY(-5px);
}

.active-plan {
    border-color: #4f46e5;
    box-shadow: 0 0 0 4px rgba(79, 70, 229, 0.12);
    transform: scale(1.02);
}

.card-cover {
    position: absolute;
    top: 14px;
    right: -35px;
    background: #4f46e5;
    color: white;
    padding: 8px 40px;
    font-size: 12px;
    font-weight: 600;
    transform: rotate(45deg);
    letter-spacing: 0.5px;
}

.category-block {
    /* border: 1px solid #ddd; */
    /* padding: 15px; */
    margin-bottom: 20px;
}
.category-block:first-child{
    padding-top:15px;
}

.image-preview img {
    margin-right: 10px;
    margin-bottom: 10px;
}

.gallery-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.gallery-item {
    position:relative;
    width: 180px;
    height: 150px;
    overflow: hidden;
    border: 1px solid #ddd;
}
.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.pic-delete{
    position: absolute;
    background:gray;
    color:white;
    border:none;
    border-radius:50%;
    width:25px;
    height:25px;
    cursor:pointer;
    bottom:5px;
    right:10px;
}
.delete-btn{
    position:absolute;
    bottom: 5px;
    right: 5px;
    background: red;
    color: white;
    border: none;
    padding: 5px 8px;
    cursor: pointer;
    font-size: 12px;
}
/* Status colors */
.status.draft {
    color: blue;
    font-weight: bold;
}

.status.active {
    color: green;
    font-weight: bold;
}

.status.inactive {
    color: red;
    font-weight: bold;
}
/* Footer */
.site-footer {
    position: relative;
    width: 100%;
    background: rgba(0, 0, 0,1); /* translucent black */
    backdrop-filter: blur(10px);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    color: #fff;
    z-index: 900;
    padding: 20px 0;
    font-family: 'Helvetica Neue', sans-serif;
}

.footer-content {
    max-width: 1200px;
    margin: auto;
    padding: 0 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

/* Text */
.footer-content p {
    font-size: 14px;
    color: #d1d5db; /* softer white */
    margin: 0;
}

/* Footer navigation */
.footer-nav {
    display: flex;
    gap: 24px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-nav li a {
    text-decoration: none;
    color: #fff;
    font-weight: 500;
    transition: color 0.3s ease;
    position: relative;
}

/* Underline animation */
.footer-nav li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 0%;
    height: 2px;
    background: #4f46e5; /* same accent as header underline */
    transition: width 0.3s ease;
}

.footer-nav li a:hover {
    color: #4f46e5;
}

.footer-nav li a:hover::after {
    width: 100%;
}

.skew-section{
    background: linear-gradient(135deg, #1e3c72, #2a5298);
    color: white;
    padding: 120px 40px;
    transform: skewY(-5deg);
    margin-top: 50px;
    margin-bottom:70px;
}

.skew-content{
    transform: skewY(5deg);
    max-width: 800px;
    margin: auto;
    text-align: center;
}
.skew-content a{
    text-decoration:none;
    color:#fff;
}
.skew-content h1{
    font-size: 48px;
    margin-bottom: 20px;
}

.skew-content p{
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 30px;
}

/* Responsive */
@media (max-width: 768px) {
    .footer-content {
        flex-direction: column;
        gap: 10px;
    }

    .footer-nav {
        flex-wrap: wrap;
        justify-content: center;
        gap: 16px;
    }
}
   
.drop-zone {
    border: 2px dashed #999;
    padding: 41px;
    text-align: center;
    cursor: pointer;
    margin-bottom: 15px;
    border-radius: 10px;
    transition: 0.3s;
}

.drop-zone.dragover {
    background: #f3f3f3;
    border-color: #333;
}

.image-preview img {
    margin: 5px;
    border-radius: 6px;
}

.file-input{
    display: none;
}

.preview-grid {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 10px;
    margin-bottom:10px;
}
.profile{
    display:flex;
    gap:10px;
    align-items: center;
}
.profile-preview{
    width: 100px;
    height: 100px;
    border: 1px solid #999;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #fafafa;
}

.profile-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 26 may 2026  */
.fb-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.85);
    justify-content: center;
    align-items: center;
    z-index: 999;
}

.fb-modal-content {
    width: 70%;
    height: 90vh;
    background: white;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
}

/* LEFT IMAGE */
.fb-image-section {
    flex: 2;
    background: black;
    display: flex;
    justify-content: center;
    align-items: center;
}

#modalImage {
    width: 70%;
    height: auto;
    object-fit: contain;
}

/* RIGHT SIDEBAR */
.fb-sidebar {
    flex: 1;
    display: flex;
    flex-direction: column;
    background: white;
}

/* TOP CAPTION */
.fb-caption-section {
    padding: 15px;
    border-bottom: 1px solid #ddd;
    position:relative;
}

#closeModal {
    position: absolute;
    top: 0px;
    right: 8px;
    font-size: 28px;
    cursor: pointer;
}

#captionInput {
    width: 80%;
    min-height: 50px;
    resize: none;
    padding: 10px;
    outline:none
}

#captionBtn {
    margin-top: 10px;
    padding: 10px 15px;
    cursor: pointer;
}

/* COMMENTS */
.fb-comments-section {
    flex: 1;
    padding: 15px;
    overflow-y: auto;
}

.modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.5);
    justify-content: center;
    align-items: center;
    z-index: 1000;
    text-align:center;
}

.modal-content {
    background: white;
    padding: 25px;
    border-radius: 10px;
    width: 400px;
    max-width: 90%;
}
.modal-content h2 {
    margin:0px 0px 30px 0px;
}

.modal-buttons {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 10px;
}

.modal-buttons .btn-cancel{
    padding: 10px;
    border-radius: 8px;
    border: none;
    background: rgb(0, 120, 255);
    color: #fff;
    cursor: pointer;
}

.modal-buttons .btn-delete{
    padding: 10px;
    border-radius: 8px;
    border: none;
    background: #E83839;
    color: #fff;
    cursor: pointer;
}
.comment-form{
    display:flex;
    gap:5px;
}
.commentBtn{
    padding:8px 18px;
}
.plan-tabs{ 
    display:flex; 
    justify-content:center; 
    gap:1rem; margin:2rem 0; 
} 
.tab-btn{ 
    padding:10px 24px; 
    border:none; 
    cursor:pointer; 
    background:#e5e5e5; 
} 
.tab-btn.active{ 
    background:#000; 
    color:#fff; 
} 
.plan-section{ 
    display:none; 
} 
.plan-section.active{ 
    display:block; 
}
.plan-btn{
    display: block;
    padding: 8px;
    border: none;
    border-radius: 4px;
    color: #fff;
    background: #2998F0;
    width: 50%;
    margin: 20px auto 0;
}
.single-card {
    grid-template-columns: 340px;
    justify-content: center;
}
.plan-price{
    font-size: 25px;
    font-weight: bold;
    margin: 10px;
}
.order-table{
    margin:30px 0;
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
}

.order-table table{
    width:100%;
    border-collapse:collapse;
    font-family:Arial, Helvetica, sans-serif;
}

.order-table table thead,
.order-table table tbody tr:first-child th{
    background: #000;
}

.order-table table th{
    background: #000;
    color:#fff;
    padding:16px;
    font-size:14px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5px;
    white-space:nowrap;
}

.order-table table td{
    padding:15px;
    border-bottom:1px solid #e5e7eb;
    color:#4b5563;
    font-size:15px;
    text-align:center;
    vertical-align:middle;
}

.order-table table tr:nth-child(even){
    background:#f9fafb;
}

.order-table table tr:hover{
    background:#eef6ff;
    transition:.3s;
}

.order-table table td:nth-child(2){
    max-width:240px;
    word-break:break-all;
    font-family:monospace;
    font-size:13px;
    color:#2563eb;
}

.order-table table td:last-child{
    font-weight:700;
    color:#16a34a;
}

.order-table table th:first-child{
    border-top-left-radius:12px;
}

.order-table table th:last-child{
    border-top-right-radius:12px;
    width:265px;
}

@media (max-width:768px){

    .order-table{
        overflow-x:auto;
    }

    .order-table table{
        min-width:900px;
    }
}
.progress-wrapper{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
}

.progress-step{
    flex:1;
    text-align:center;
    position:relative;
}

.step-circle{
    width:18px;
    height:18px;
    border-radius:50%;
    border:2px solid #ccc;
    background:#fff;
    margin:auto;
}

.step-circle.completed{
    background:#4CAF50;
    border-color:#4CAF50;
}

.step-circle.current{
    background:#42A5F5;
    border-color:#42A5F5;
}

.step-circle.upcoming{
    background:#fff;
    border-color:#ccc;
}

.step-line{
    position:absolute;
    top:8px;
    left:50%;
    width:calc(100% - 26px);
    margin-left:9px;
    background:#ccc;
    padding:3px;
}
.step-line.completed{
    background:#4CAF50;
    padding:3px;
}
.step-label{
    margin-top:10px;
    font-size:14px;
}
.plan-upgrade{
    text-align: end;
}
.upgrade-plan{
    background:#4CAF50;
    text-decoration: none;
}
.finish-upload{
    margin: 10px 0;
    text-align: end;
}
.finish{
    background-color: #2563eb;
}
.uploaded-photos{
    margin-top:30px;
}
.category-missing {
    border: 2px solid #dc3545;
    background: #fff5f5;
}

.category-missing::before {
    content: "⚠ Photo Required";
    display: block;
    color: #dc3545;
    font-weight: 600;
    margin-bottom: 10px;
}
.plan-section{
    margin:30px 0;
}
.assessment-new{
    text-align: center;
    margin-top: 30px;
}
.view-assessment{
    background-color: #1d1d1d;
    text-decoration: none;
}
.progress-photo{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

a.profile-cancel-btn {
    background: #6c757d;
    color: #fff;
    margin-left: 10px;
}
a.btn.profile-cancel-btn:hover {
    background: #5a6268;
}
.accordion-header {
    width: 100%;
    background: #F4F0E7;
    border: 1px solid #ddd;
    padding: 15px;
    font-size: 18px;
    font-weight: bold;
    text-align: left;
    cursor: pointer;

    display: flex;
    justify-content: space-between;
    align-items: center;
}

.accordion-header:hover {
    background: #ececec;
}

.accordion-content {
    display: none;
    padding: 15px;
    border: 1px solid #ddd;
    border-top: none;
}

.accordion-header.active + .accordion-content {
    display: block;
}

.accordion-icon {
    font-size: 22px;
    font-weight: bold;
}

.accordion-header.active .accordion-icon {
    transform: rotate(45deg); /* + becomes × */
}
/*css placed form assessemnt to here 21 july 2026*/
.assessment-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}
.assessment-actions{display:flex;gap:10px}
.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;margin:20px 0}
.summary-card{background:#fff;padding:15px;border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.tab-nav{display:flex;list-style:none;padding:0;margin:20px 0 0;border-bottom:2px solid #ddd;overflow:auto}
.tab-nav li{padding:12px 20px;cursor:pointer;font-weight:600;white-space:nowrap}
.tab-nav li.active{border-bottom:3px solid #0d6efd;color:#0d6efd}
.tab-content{display:none;padding-top:20px}
.tab-content.active{display:block}

.category-missing {
    border: 2px solid #dc3545;
    background: #fff5f5;
}

.category-missing::before {
    content: "⚠ Photo Required";
    display: block;
    color: #dc3545;
    font-weight: 600;
    margin-bottom: 10px;
}

.review-summary{
    display:flex;
    gap:20px;
    margin-bottom:25px;
}

.summary-box{
    flex:1;
    background:#fff;
    border-radius:8px;
    padding:15px;
    text-align:center;
    box-shadow:0 2px 8px rgba(0,0,0,.08);
}

.photo-review-card{

    display:flex;
    gap:20px;

    background:#fff;

    margin-bottom:20px;

    border-radius:8px;

    padding:20px;

    box-shadow:0 2px 8px rgba(0,0,0,.08);

}

.review-image img{

    width:180px;

    height:130px;

    object-fit:cover;

    border-radius:8px;

}

.review-content{

    flex:1;

}

.status-badge{

    display:inline-block;

    padding:6px 12px;

    border-radius:20px;

    margin:10px 0;

}

.status-warning{

    background:#fff4ce;

}

.status-success{

    background:#dff5e1;

}
.inventory-table{

width:100%;

border-collapse:collapse;

background:#fff;

}

.inventory-table th{

background:#f5f5f5;

padding:12px;

}

.inventory-table td{

padding:15px;

border-bottom:1px solid #eee;

vertical-align:middle;

}

.inventory-table img{

border-radius:6px;

}
.sysgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.syscard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:20px;display:flex;flex-direction:column}
.syscard .top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.syscard h3{font-family:var(--font-display);font-weight:700;font-size:16px;color:var(--navy-ink)}
.syscard .loc{font-size:12px;color:var(--text-muted);margin-top:2px}
.syscard .cat{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--forest);background:var(--green-tint);border:1px solid #D6E5C8;border-radius:var(--pill);padding:3px 9px;white-space:nowrap}
.sysdl{display:grid;grid-template-columns:auto 1fr;gap:7px 16px;margin:16px 0;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sysdl dt{font-family:var(--font-ui);font-weight:600;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--navy-muted)}
.sysdl dd{font-size:13px;color:var(--text-2);text-align:right}
.sysnote{font-size:12.5px;color:var(--text-2);font-style:italic;margin-bottom:14px}
.sysfoot{display:flex;justify-content:space-between;align-items:center;margin-top:auto}
.sysfoot .tracked{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--text-muted)}
.sysfoot .dot{width:7px;height:7px;border-radius:50%;background:var(--green-mid)}

.filterbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.fchip{font-family:var(--font-ui);font-weight:600;font-size:12.5px;color:var(--navy-soft);background:var(--surface);border:1px solid var(--line);border-radius:var(--pill);padding:7px 14px;cursor:pointer;transition:all .15s}
.fchip:hover{border-color:var(--line-strong)}
.fchip.on{background:var(--navy-ink);color:#fff;border-color:var(--navy-ink)}
/* ===========================
   Inventory Card
=========================== */

.inventory-form{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:12px;
    padding:20px;
    margin-bottom:20px;
    box-shadow:0 2px 8px rgba(0,0,0,.05);
    transition:.25s;
}

.inventory-form:hover{
    box-shadow:0 5px 18px rgba(0,0,0,.08);
}

.inventory-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:18px;
    padding-bottom:12px;
    border-bottom:1px solid #eee;
}

.inventory-title{
    font-size:18px;
    font-weight:600;
    color:#1f2937;
}

.inventory-remove{
    color:#dc3545;
    cursor:pointer;
    font-size:14px;
}

.inventory-remove:hover{
    text-decoration:underline;
}

.inventory-form label{
    font-size:13px;
    font-weight:600;
    color:#6b7280;
    text-align: left;
    margin: 0;
}
.inventory-form textarea{
    min-height:90px;
}

.inventory-advanced{
    margin-top:20px;
    border-top:1px dashed #ddd;
    padding-top:20px;
}
.inventory-toggle{
    display:inline-block;
    font-size:14px;
    margin-top:5px;
    cursor: pointer;
    font-weight: 600;
    color: #2563eb;
}
.inventory-actions{
    margin-top:20px;
    display:flex;
    justify-content:flex-end;
    gap:10px;
}
/* testing 27/7/2026 */
.inventory-full-row {
    width: 100%;
    margin-top: 15px;
}
.inventory-fields {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.inventory-field {
    display: grid;
    grid-template-columns: 180px 1fr;
    align-items: center;
    gap: 15px;
}
.inventory-field .form-control,
.inventory-field .form-select {
    width: 100%;
    border-radius:8px;
    min-height:42px;
}

.inventory-errors {
    grid-column: 2;
}

@media (max-width: 768px) {
    .inventory-field {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .inventory-errors {
        grid-column: 1;
    }
}