@charset "UTF-8";
/* ===== Dil Ka Rishta — App (Self-contained, no Bootstrap dependency) ===== */
:root{
  --pink:#d63384; --pink-dark:#a02363; --pink-light:#fef3f8; --gold:#d4a056;
  --text:#1a1a1a; --muted:#6b7280; --bg:#fafafa; --card:#ffffff; --border:#eee;
}
*,*::before,*::after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{font-family:'Poppins','Segoe UI',Tahoma,sans-serif;background:var(--bg);color:var(--text);margin:0;padding:0;-webkit-font-smoothing:antialiased;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--pink);text-decoration:none;}
a:hover{color:var(--pink-dark);}
button{font-family:inherit;cursor:pointer;}
h1,h2,h3,h4,h5,h6{margin:0 0 .5rem;font-weight:600;line-height:1.2;}
p{margin:0 0 1rem;}
hr{border:0;border-top:1px solid #e5e7eb;margin:1rem 0;}
small{font-size:.85em;}
ul,ol{padding-left:1.4em;margin:0 0 1rem;}

/* ===== Bootstrap-like Grid (minimal) ===== */
.container,.container-fluid{width:100%;padding:0 12px;margin:0 auto;}
@media(min-width:576px){.container{max-width:540px;}}
@media(min-width:768px){.container{max-width:720px;}}
.row{display:flex;flex-wrap:wrap;margin:0 -6px;}
.row.g-2{margin:0 -4px;} .row.g-2 > [class*="col-"]{padding:0 4px;margin-bottom:8px;}
.row.g-3{margin:0 -6px;} .row.g-3 > [class*="col-"]{padding:0 6px;margin-bottom:12px;}
[class*="col-"]{padding:0 6px;}
.col-12{flex:0 0 100%;max-width:100%;}
.col-6{flex:0 0 50%;max-width:50%;}
.col-4{flex:0 0 33.333%;max-width:33.333%;}
.col-8{flex:0 0 66.666%;max-width:66.666%;}
.col-3{flex:0 0 25%;max-width:25%;}
.col-9{flex:0 0 75%;max-width:75%;}
@media(min-width:576px){.col-sm-6{flex:0 0 50%;max-width:50%;}}
@media(min-width:768px){.col-md-4{flex:0 0 33.333%;max-width:33.333%;}.col-md-6{flex:0 0 50%;max-width:50%;}.col-md-8{flex:0 0 66.666%;max-width:66.666%;}.col-md-12{flex:0 0 100%;max-width:100%;}}

/* ===== Utility ===== */
.d-flex{display:flex;}
.d-block{display:block;}
.d-inline-block{display:inline-block;}
.d-none{display:none;}
.flex-column{flex-direction:column;}
.justify-content-between{justify-content:space-between;}
.justify-content-center{justify-content:center;}
.justify-content-around{justify-content:space-around;}
.align-items-center{align-items:center;}
.text-center{text-align:center;}
.text-start{text-align:left;}
.text-end{text-align:right;}
.text-muted{color:var(--muted)!important;}
.text-danger{color:#a8200d!important;}
.text-success{color:#1b5e20!important;}
.text-warning{color:#c95900!important;}
.text-info{color:#0c5460!important;}
.text-primary{color:var(--pink)!important;}
.text-pink{color:var(--pink)!important;}
.text-white{color:#fff!important;}
.bg-pink{background:var(--pink)!important;color:#fff;}
.fw-bold{font-weight:700;}
.fst-italic{font-style:italic;}
.w-100{width:100%;}
.mt-1{margin-top:.25rem;} .mt-2{margin-top:.5rem;} .mt-3{margin-top:1rem;}
.mb-1{margin-bottom:.25rem;} .mb-2{margin-bottom:.5rem;} .mb-3{margin-bottom:1rem;}
.my-2{margin-top:.5rem;margin-bottom:.5rem;} .my-3{margin-top:1rem;margin-bottom:1rem;}
.mx-auto{margin-left:auto;margin-right:auto;}
.me-1{margin-right:.25rem;} .me-2{margin-right:.5rem;}
.ms-1{margin-left:.25rem;} .ms-2{margin-left:.5rem;}
.py-2{padding-top:.5rem;padding-bottom:.5rem;}
.py-3{padding-top:1rem;padding-bottom:1rem;}
.float-end{float:right;}
.gap-2{gap:.5rem;} .gap-3{gap:1rem;}

/* ===== Forms (Bootstrap-like) ===== */
.form-control,.form-select{display:block;width:100%;padding:.5rem .75rem;font-size:1rem;line-height:1.5;color:var(--text);background:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.375rem;appearance:none;}
.form-control:focus,.form-select:focus{outline:0;border-color:var(--pink);box-shadow:0 0 0 .2rem rgba(214,51,132,.2);}
.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%236c757d' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px;padding-right:2.25rem;}
textarea.form-control{min-height:80px;}
label{display:inline-block;margin-bottom:.4rem;}
.form-check{display:block;min-height:1.5rem;padding-left:1.6rem;margin-bottom:.4rem;position:relative;}
.form-check-input{position:absolute;left:0;top:.2rem;width:1.1rem;height:1.1rem;margin:0;}
.form-check-input:checked{background:var(--pink);border-color:var(--pink);}
.form-check-label{cursor:pointer;}

/* ===== Buttons (Bootstrap-like) ===== */
.btn{display:inline-block;padding:.5rem 1rem;font-size:1rem;font-weight:400;line-height:1.5;text-align:center;vertical-align:middle;border:1px solid transparent;border-radius:.375rem;background:transparent;cursor:pointer;transition:all .15s;text-decoration:none;}
.btn-sm{padding:.25rem .5rem;font-size:.875rem;border-radius:.25rem;}
.btn-primary{background:var(--pink);color:#fff;border-color:var(--pink);}
.btn-primary:hover{background:var(--pink-dark);color:#fff;}
.btn-danger{background:#dc3545;color:#fff;border-color:#dc3545;}
.btn-danger:hover{background:#c82333;color:#fff;}
.btn-warning{background:#ffc107;color:#000;border-color:#ffc107;}
.btn-secondary{background:#6c757d;color:#fff;border-color:#6c757d;}
.btn-outline-primary{color:var(--pink);border-color:var(--pink);}
.btn-outline-primary:hover{background:var(--pink);color:#fff;}
.btn-outline-secondary{color:#6c757d;border-color:#6c757d;}
.btn-outline-secondary:hover{background:#6c757d;color:#fff;}
.btn-link{background:none;border:0;color:var(--pink);text-decoration:underline;}

/* ===== Alerts / Badges ===== */
.alert{padding:.75rem 1rem;border-radius:.375rem;margin-bottom:1rem;}
.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb;}
.alert-danger{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;}
.alert-info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb;}
.badge{display:inline-block;padding:.25em .5em;font-size:.75em;font-weight:600;border-radius:.375rem;}
.badge.bg-success{background:#198754;color:#fff;}
.badge.bg-danger{background:#dc3545;color:#fff;}
.badge.bg-warning{background:#ffc107;color:#000;}
.badge.bg-info{background:#0dcaf0;color:#000;}
.badge.bg-secondary{background:#6c757d;color:#fff;}
.badge.bg-primary{background:var(--pink);color:#fff;}

/* ===== Modal (minimal — used for Report) ===== */
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1000;align-items:center;justify-content:center;}
.modal.show{display:flex;}
.modal-dialog{max-width:500px;width:92%;}
.modal-content{background:#fff;border-radius:14px;overflow:hidden;}
.modal-header,.modal-body,.modal-footer{padding:14px 18px;}
.modal-header{border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;}
.modal-footer{border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:8px;}
.btn-close{background:none;border:0;font-size:1.5rem;cursor:pointer;color:#999;}
.btn-close::before{content:'×';}

/* ===== Dropdown (used for share menu) ===== */
.dropdown{position:relative;display:inline-block;}
.dropdown-menu{display:none;position:absolute;top:100%;right:0;background:#fff;border:1px solid #ddd;border-radius:8px;padding:6px 0;min-width:180px;box-shadow:0 4px 12px rgba(0,0,0,.1);z-index:10;}
.dropdown.show .dropdown-menu{display:block;}
.dropdown-item{display:block;padding:8px 14px;color:var(--text);}
.dropdown-item:hover{background:#f8f9fa;}

/* ===== Topbar / App Specific ===== */
.app-topbar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--border);box-shadow:0 2px 8px rgba(0,0,0,.04);padding:8px 12px;display:flex;align-items:center;justify-content:space-between;}
.app-brand{display:flex;align-items:center;gap:10px;color:var(--pink);}
.app-brand i{font-size:1.6rem;color:var(--pink);}
.app-brand strong{display:block;color:var(--text);font-size:1rem;line-height:1.1;}
.app-brand small{display:block;color:var(--muted);font-size:.7rem;}
.app-iconbtn img{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid var(--pink);}
.app-main{padding:16px;min-height:calc(100vh - 56px - 60px);}
.app-main.has-bottom-nav{padding-bottom:120px;}

/* ===== Buttons ===== */
.app-btn-primary{background:linear-gradient(135deg,var(--pink),var(--pink-dark));color:#fff!important;border:none;border-radius:30px;padding:12px 24px;font-weight:600;display:inline-flex;align-items:center;gap:8px;justify-content:center;box-shadow:0 4px 12px rgba(214,51,132,.3);text-decoration:none;font-size:1rem;}
.app-btn-primary:hover{filter:brightness(1.05);color:#fff!important;}
.app-btn-outline{background:#fff;color:var(--pink)!important;border:2px solid var(--pink);border-radius:30px;padding:10px 22px;font-weight:600;display:inline-flex;align-items:center;gap:8px;justify-content:center;text-decoration:none;font-size:1rem;}
.app-btn-block{display:flex;width:100%;text-align:center;}

/* ===== Cards ===== */
.app-card{background:var(--card);border-radius:16px;padding:16px;box-shadow:0 2px 8px rgba(0,0,0,.05);margin-bottom:14px;}
.app-card h5{font-weight:600;margin:0 0 10px;color:var(--text);}

/* ===== Alerts ===== */
.app-alert{padding:12px 16px;border-radius:10px;margin:12px 0;font-size:.92rem;display:flex;align-items:center;gap:8px;}
.app-alert-success{background:#e6f7ec;color:#1b5e20;}
.app-alert-error{background:#fde4e4;color:#a8200d;}

/* ===== Hero ===== */
.app-hero{min-height:calc(100vh - 56px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 24px;background:linear-gradient(180deg,#fff,#fef3f8);text-align:center;}
.app-hero-logo{width:120px;height:120px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px rgba(214,51,132,.18);margin-bottom:20px;}
.app-hero-logo i{font-size:60px;color:var(--pink);}
.app-hero h1{font-weight:700;color:var(--pink-dark);margin-bottom:6px;}
.app-hero p{color:var(--muted);margin-bottom:32px;font-size:.95rem;max-width:340px;}
.app-hero .actions{width:100%;max-width:320px;display:flex;flex-direction:column;gap:12px;}

/* ===== Forms (app-specific overrides) ===== */
.app-form label{font-weight:600;font-size:.9rem;color:#333;margin-bottom:6px;display:block;}
.app-form .form-control,.app-form .form-select{border-radius:12px;border:1.5px solid #e5e7eb;padding:12px 14px;font-size:1rem;}
.app-form .form-control:focus,.app-form .form-select:focus{border-color:var(--pink);box-shadow:0 0 0 3px rgba(214,51,132,.15);}
.required:after{content:' *';color:var(--pink);}

/* ===== Bottom Nav ===== */
.app-bottomnav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--border);display:flex;justify-content:space-around;padding:8px 0 max(8px,env(safe-area-inset-bottom));z-index:50;box-shadow:0 -2px 12px rgba(0,0,0,.05);}
.app-bottomnav a{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--muted);font-size:.7rem;font-weight:500;padding:6px 10px;border-radius:10px;text-decoration:none;}
.app-bottomnav a i{font-size:1.2rem;}
.app-bottomnav a.active{color:var(--pink);background:var(--pink-light);}

/* ===== Dashboard ===== */
.dash-greeting{padding:20px 0;}
.dash-greeting h2{font-weight:700;margin:0;font-size:1.4rem;}
.dash-greeting p{color:var(--muted);margin:4px 0 0;font-size:.9rem;}
.verify-banner{background:linear-gradient(135deg,#fff7e6,#ffe7c2);border-radius:16px;padding:14px 16px;margin-bottom:14px;border-left:4px solid var(--gold);}
.verify-banner h6{font-weight:700;margin:0 0 4px;color:#7a4a00;}
.verify-banner small{color:#7a4a00;}
.verify-buttons{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap;}
.verify-buttons a{flex:1;text-align:center;background:#fff;color:var(--pink);border:1.5px solid var(--pink);padding:8px 12px;border-radius:10px;font-size:.85rem;font-weight:600;text-decoration:none;}
.verify-buttons a.done{background:#e6f7ec;color:#1b5e20;border-color:#a3d9b4;}
.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px;}
.quick-tile{background:#fff;border-radius:14px;padding:16px;text-align:center;box-shadow:0 2px 6px rgba(0,0,0,.05);color:var(--text);text-decoration:none;}
.quick-tile i{font-size:1.6rem;color:var(--pink);margin-bottom:6px;display:block;}
.quick-tile span{display:block;font-weight:600;font-size:.85rem;}

/* ===== Profile Cards / Details ===== */
.profile-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.06);margin-bottom:14px;}
.profile-card-img{width:100%;height:240px;object-fit:cover;display:block;}
.profile-card-body{padding:12px 14px;}
.profile-card-body .name{font-weight:700;font-size:1.05rem;color:var(--text);}
.profile-card-body .pid{color:var(--muted);font-size:.78rem;}
.profile-card-body .meta{color:#555;font-size:.85rem;margin-top:4px;}
.profile-card-body .badges{margin-top:6px;}
.profile-card-actions{padding:0 14px 14px;}
.detail-photo{width:100%;height:340px;object-fit:cover;border-radius:18px;}
.detail-name{font-weight:700;font-size:1.4rem;margin:10px 0 2px;}
.detail-meta{color:var(--muted);font-size:.95rem;}
.detail-section{background:#fff;border-radius:14px;padding:14px 16px;margin-top:12px;box-shadow:0 1px 4px rgba(0,0,0,.04);}
.detail-section h6{font-weight:700;color:var(--pink-dark);margin:0 0 10px;}
.detail-section .row-line{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f3f3f3;font-size:.9rem;}
.detail-section .row-line:last-child{border:none;}
.detail-section .row-line span:first-child{color:var(--muted);}
.detail-section .row-line span:last-child{font-weight:600;text-align:right;}
.action-bar{display:flex;gap:10px;margin-top:14px;}
.action-bar button,.action-bar a{flex:1;border-radius:12px;padding:11px;font-weight:600;font-size:.9rem;border:none;text-align:center;text-decoration:none;cursor:pointer;}
.btn-report{background:#fde4e4;color:#a8200d;}
.btn-block{background:#fff3e0;color:#c95900;}

/* ===== Misc ===== */
.badge-verified{background:#e6f7ec;color:#1b5e20;padding:3px 8px;border-radius:20px;font-size:.7rem;font-weight:600;display:inline-flex;align-items:center;gap:3px;}
.badge-locked{background:rgba(255,255,255,.92);color:var(--pink);padding:6px 12px;border-radius:20px;font-weight:600;font-size:.8rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);}
.blur-photo{filter:blur(8px);transform:scale(1.05);}
.spacer-sm{height:8px;}
.spacer{height:16px;}
.spacer-lg{height:24px;}

/* ===== Icons fallback (basic) ===== */
.fas,.fab,.far{display:inline-block;width:1em;height:1em;text-align:center;font-style:normal;}

/* ===== Table ===== */
.table{width:100%;border-collapse:collapse;}
.table th,.table td{padding:.5rem;border-bottom:1px solid #e5e7eb;text-align:left;}
