/* Biryo identity. Component layouts, technical identities and module behavior stay intact. */
.brand img.brand-icon,.auth-brand img.brand-icon{display:block;object-fit:contain;border-radius:8px;background:transparent}
.auth-brand .brand-lockup{display:block;width:180px;height:135px;object-fit:contain}
.loading .loading-logo{display:block;width:56px;height:56px;object-fit:contain;border-radius:12px;margin:0 auto 18px}
.shopping-share-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.shopping-share-actions>*{flex:1;min-width:140px;text-align:center}
#shopping-share-text{font-size:14px;line-height:1.7}
.backup-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:16px 0 20px}
.backup-choice{display:flex;align-items:center;gap:10px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px;min-height:48px;cursor:pointer}
.backup-choice input{width:18px;height:18px;flex-shrink:0;accent-color:var(--green)}
.backup-selection-actions{display:flex;gap:22px}
.backup-preview{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.backup-preview ul{list-style:none;padding:0}.backup-preview li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}
.backup-preview li span{color:var(--muted);font-size:13px}
.more-menu-groups{display:grid;gap:18px;margin-bottom:20px}.more-menu-groups .hayat-module-list{margin-bottom:0}.more-utility-group{border-top:1px solid var(--line)}
.marriage-card.marriage-card-link{display:block;color:var(--ink);text-decoration:none;position:relative;border:1px solid var(--line);background:var(--accent-soft);padding:22px 24px;transition:border-color .16s,box-shadow .16s,transform .16s}.marriage-card-link:hover{border-color:var(--green);box-shadow:0 5px 18px #1f4a3b0c}.marriage-card-link:active{transform:translateY(1px)}.relationship-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.relationship-card-label{font-size:11px;color:var(--green);font-weight:600;letter-spacing:1px}.relationship-card-arrow{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--surface)}.relationship-card-arrow .ui-icon{width:16px;height:16px}
.marriage-card .marriage-card-heading{margin-bottom:20px}.marriage-card .marriage-card-heading h2{font:500 25px/1.35 Lora,Georgia,serif;letter-spacing:-.5px;overflow-wrap:anywhere}.marriage-card .marriage-counter>strong{font:500 34px/1.2 Lora,Georgia,serif}.marriage-card .marriage-counter>strong>span{font-size:20px}.marriage-card .marriage-counter small{margin-top:10px;max-width:230px;font-size:12px;line-height:1.6}.marriage-card .marriage-faces .hayat-avatar{width:54px;height:54px;border:3px solid var(--paper)}.marriage-heart{color:#c13b4a!important;background:var(--paper)!important;border-color:var(--paper)!important}.relationship-card-date-empty{display:block;font-size:13px;line-height:1.6;color:var(--green)}
.relationship-page-card .relationship-card-top{margin-bottom:12px}.relationship-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.relationship-people>.hayat-panel{min-width:0}.relationship-person-heading,.profile-edit-identity{display:flex;align-items:center;gap:14px;margin-bottom:20px}.relationship-person-heading h2,.profile-edit-identity h2{margin:0;overflow-wrap:anywhere}.relationship-person-heading small,.profile-edit-identity p{color:var(--muted);font-size:12px;display:block;margin:4px 0 0}.relationship-person-heading .hayat-avatar,.profile-edit-identity .hayat-avatar{width:58px;height:58px;object-fit:cover;flex-shrink:0}.relationship-bio{white-space:pre-wrap;overflow-wrap:anywhere}.relationship-facts{margin:0}.relationship-facts>div{padding:12px 0;border-bottom:1px solid var(--line)}.relationship-facts>div:last-child{border-bottom:0}.relationship-facts dt{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:5px}.relationship-facts dd{margin:0;font-size:14px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.relationship-date-form{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.relationship-date-form label{margin:0;flex:1;min-width:180px;max-width:350px}.relationship-date-form button,.relationship-date-form input{height:48px}.relationship-archives{display:flex;gap:10px;flex-wrap:wrap}
.settings-disclosure>summary{cursor:pointer;font:600 19px/1.4 Lora,Georgia,serif;min-height:28px}.settings-disclosure-body{padding-top:22px}.settings-disclosure-body>label:last-child,.profile-edit-basics>label:last-child{margin-bottom:0}.profile-save-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 24px}.profile-save-actions p{margin:0}.profile-login-options .hayat-actions{gap:10px;flex-wrap:wrap}
@media(max-width:600px){.marriage-card.marriage-card-link{padding:20px}.marriage-card .marriage-card-heading h2{font-size:23px}.marriage-card .marriage-counter>strong{font-size:31px}.marriage-card .marriage-faces .hayat-avatar{width:48px;height:48px}.marriage-card .marriage-counter small{max-width:180px;font-size:11px}.relationship-people{grid-template-columns:1fr;gap:0}.relationship-date-form button{flex:1;min-width:150px}.relationship-date-form label{max-width:none}.profile-save-actions>.primary{width:100%}.settings-disclosure>summary{font-size:18px}}
@media(prefers-reduced-motion:reduce){.marriage-card.marriage-card-link{transition:none}}
.family-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:22px}.family-heading h1{margin:0}
.family-profile-picker{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.family-profile-picker>label:first-child{flex:1;max-width:360px;min-width:180px}
.family-profile-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:0 16px;align-items:center}.family-profile-card .family-photo{grid-row:1/3}.family-profile-card h2{margin:0 0 4px}.family-profile-card p{margin:0;color:var(--muted)}.family-profile-card>button{grid-column:2;justify-self:start}
.family-photo{display:block;width:64px;height:64px;border-radius:18px;object-fit:cover}.family-initial{display:grid;place-items:center;background:var(--accent-soft);color:var(--green);font:600 30px Lora,Georgia,serif}
.family-profile-card>div,.family-body .life-record-main{min-width:0;overflow-wrap:anywhere}
.family-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:0 0 22px}.family-tabs button{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:10px 5px;min-height:44px;font-size:13px;overflow-wrap:anywhere}.family-tabs .active{background:var(--accent-soft);color:var(--green);border-color:var(--green);font-weight:600}
.family-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 20px}.family-actions>button{min-width:0}.family-record-filter{margin:0;flex:1;max-width:240px;min-width:150px}
.family-history-tools{align-items:flex-end}.family-history-tools>.primary,.family-history-tools select{height:48px;min-height:48px}
.family-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 26px}.family-summary>div{background:var(--light);border-radius:10px;padding:16px}.family-summary strong{display:block;font-size:26px;color:var(--green)}.family-summary span{display:block;font-size:12px;color:var(--muted)}
.family-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:15px 0;border-bottom:1px solid var(--line)}.family-row>div:first-child{flex:1;min-width:130px}.family-row strong,.family-record h3{overflow-wrap:anywhere}.family-row small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.family-row p{margin-bottom:0}.family-record{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:20px}.family-record>.family-row{border:0;padding-bottom:10px;align-items:start}.family-record h3{margin:7px 0}.family-text{white-space:pre-wrap;overflow-wrap:anywhere}.family-empty{padding:18px 0;color:var(--muted)}.family-past{margin-top:22px}.family-past summary{cursor:pointer;min-height:44px;padding:12px 0}.family-month{max-width:250px}.family-total strong{display:block;font:600 27px Lora,Georgia,serif;color:var(--green);margin-top:8px}
.family-documents{list-style:none;padding:0}.family-documents li{padding:10px 0;border-top:1px solid var(--line)}.family-documents a{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:13px;overflow-wrap:anywhere}.family-documents a>span{font-size:10px;background:var(--accent-soft);padding:3px 6px;border-radius:4px}.family-documents small{color:var(--muted)}.family-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0}.family-gallery img{display:block;object-fit:cover;width:100%;height:160px;border-radius:8px;background:var(--light)}.family-link{display:block;text-align:left;min-height:32px;padding:5px 0}.family-link-label{padding:10px 12px;border-radius:8px;background:var(--accent-soft);color:var(--green);font-size:13px}
@media(max-width:700px){.family-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.family-tabs button{font-size:12px}.family-body .family-actions>.primary,.family-body .family-actions>.secondary{flex:1 1 130px}.family-heading h1{font-size:25px}.family-heading>.primary{font-size:12px;padding:12px}.family-body{padding:20px}.family-row .life-record-actions{width:100%;justify-content:flex-end}.family-gallery img{height:130px}}

@media screen{
 :root{--paper:#FCF9F2;--white:#fff;--surface:#fff;--surface-alt:#E7EBDD;--ink:#2F3A33;--green:#1F4A3B;--muted:#5e6f63;--line:#dce2d5;--clay:#D07F6A;--light:#E7EBDD;--accent-soft:#E7EBDD;--menu-paper:#FCF9F2;--gold:#D07F6A;--brand-forest:#1F4A3B;--brand-sage:#A7B89F;--brand-accent:#D07F6A}
 :root[data-theme=dark]{--paper:#15221c;--white:#20332a;--surface:#20332a;--surface-alt:#2b4035;--ink:#FCF9F2;--green:#A7B89F;--muted:#bdcabb;--line:#405247;--clay:#D07F6A;--light:#2b4035;--accent-soft:#2d4639;--menu-paper:#1c2e25;--gold:#D07F6A}
 h1,h2,h3{font-family:Lora,Georgia,serif;font-weight:600}
 .primary:hover,.hayat-pill:hover{background:#2a5b49}
 :root[data-theme=dark] .primary:hover,:root[data-theme=dark] .hayat-pill:hover{background:#bed0b6}
 .brand img.brand-icon{background:transparent}
 .brand .brand-name{display:block;line-height:1;color:var(--green)}
 .brand .biryo-wordmark{display:block;width:84px;height:32px}
 .biryo-auth-lockup{display:flex;flex-direction:column;align-items:center;color:var(--green);text-align:center;gap:12px}
 .biryo-auth-lockup .biryo-symbol{display:block;width:74px;height:68px}
 .biryo-auth-lockup .biryo-name{display:block;line-height:1}
 .biryo-auth-lockup .biryo-wordmark{display:block;width:134px;height:52px}
 .biryo-auth-lockup small{display:block;margin:0;font:400 14px/1.5 Lora,Georgia,serif;color:var(--green);letter-spacing:0}
 .biryo-symbol>g>path:nth-of-type(2){fill:var(--paper)}
 :root[data-theme=dark] .biryo-symbol>g>path:first-of-type,:root[data-theme=dark] .biryo-symbol>g>path:last-of-type{fill:#FCF9F2}
 .auth{background:var(--paper)}
 .auth-brand{margin-bottom:30px}
 .loading{min-height:100svh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:var(--paper)}
 .supper-heading{background:#1F4A3B;color:#FCF9F2}
 .supper-heading h2,.supper-kicker,.supper-date{color:#FCF9F2}
 .marriage-card{background:var(--light);color:var(--ink)}
 .marriage-counter>strong{color:var(--green)}
 .marriage-surname,.marriage-counter small{color:var(--muted)}
 .marriage-faces .hayat-avatar,.marriage-heart{background:var(--paper);border-color:var(--paper);color:var(--green)}
 :root[data-theme=dark] .marriage-card{background:var(--light)}
}

/* Account summaries: amount beside name, edit below on the left. */
.finance-row.finance-account-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:start}.finance-account-row .finance-account-value{text-align:right;min-width:0;overflow-wrap:anywhere}.finance-account-row .finance-account-value>strong{font-size:15px}.finance-row.finance-account-row>.text-button{grid-column:1/-1;justify-self:start;margin-left:0;min-height:44px;padding:8px 0;text-align:left}

.finance-month>summary{list-style:none;cursor:pointer;display:block}.finance-month>summary::-webkit-details-marker{display:none}.finance-month-heading,.finance-month-status{display:flex;align-items:center;justify-content:space-between;gap:12px}.finance-month-heading{font:600 23px/1.4 Lora,Georgia,serif;margin-bottom:16px}.finance-month-chevron{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border-radius:50%;background:var(--accent-soft);color:var(--green);transition:transform .2s ease}.finance-month-chevron svg{display:block}.finance-month[open] .finance-month-chevron{transform:rotate(180deg)}.finance-month-status{font-size:13px;margin-bottom:14px}.finance-month-status>span{color:var(--muted)}.finance-month-status>strong{overflow-wrap:anywhere;text-align:right}.finance-month-summary .finance-month-projection{margin:0;padding:14px 0 0;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}.finance-month-summary .finance-month-projection>strong{font-size:20px}.finance-month-summary .finance-month-projection>small{width:100%;font-size:12px;color:var(--muted)}.finance-month-entries{margin-top:18px}.finance-month-entries .finance-row:last-child{padding-bottom:0}.finance-month>summary:focus-visible{outline:2px solid var(--green);outline-offset:6px;border-radius:4px}

.module-page-title,.hayat-heading h1.module-page-title{font-size:26px;line-height:1.3;margin:0 0 24px}

.guide-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.child-invite-code{font-size:30px;font-weight:700;letter-spacing:3px;color:var(--green);overflow-wrap:anywhere}

.hayat-module-row[href]{text-decoration:none;color:inherit}
.preview-notice{position:sticky;top:64px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 16px;background:#E7EBDD;border-bottom:1px solid #A7B89F;color:#1F4A3B}
.preview-notice strong{font:600 13px/1.4 'DM Sans',Arial,sans-serif}
.preview-notice button{white-space:nowrap;min-height:40px;padding:9px 12px;font-size:12px;background:#fff}
@media(max-width:900px){:root[data-native=android] .hayat-mobile-nav{padding-bottom:6px}}
