.account-shell{max-width:900px;margin:24px auto;padding:16px}.account-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.account-header .brand{text-decoration:none;margin:0}.account-header .brand span{display:block}.account-panel{max-width:760px;margin:auto}.account-panel form{margin:1.2rem 0}.account-panel input{max-width:100%;box-sizing:border-box}.account-panel button{margin-top:1rem}.account-section{margin-top:1.5rem;border-top:1px solid #ded5c4;padding-top:1rem}.account-section>summary{font-weight:650;cursor:pointer;min-height:44px}.account-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.password-field{display:block;position:relative}.password-field input{width:100%;padding-right:52px!important;box-sizing:border-box}.password-eye,.app-main .password-eye{position:absolute;right:3px;top:50%;transform:translateY(-50%);width:44px;min-height:44px!important;height:44px;padding:10px!important;margin:0!important;background:transparent!important;color:#536b3e!important;border:0;box-shadow:none!important;display:grid;place-items:center}.password-eye svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8}.header-menu{position:relative}.header-menu>summary{cursor:pointer;list-style:none;min-height:44px}.header-menu>summary::-webkit-details-marker{display:none}.header-menu-items{position:absolute;right:0;top:calc(100% + 8px);z-index:150;min-width:210px;max-width:calc(100vw - 32px);padding:8px;background:#fffdf8;border:1px solid #d9cdb9;border-radius:14px;box-shadow:0 8px 28px #40331c26}.header-menu-items a,.header-menu-items button{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding:10px 12px!important;text-decoration:none;color:#465b32!important;background:transparent!important;border:0!important;box-shadow:none!important;font-size:14px!important;line-height:1.4;border-radius:8px!important;width:100%;margin:0!important;white-space:normal;text-align:left}.header-menu-items form{margin:0}.header-menu-items a:hover,.header-menu-items button:hover{background:#edf1e4!important}.header-menu-items a:focus-visible,.header-menu-items button:focus-visible,.header-menu summary:focus-visible,.password-eye:focus-visible{outline:2px solid #6b804c;outline-offset:2px}.personal-menu .member-initial{display:grid;place-items:center;border-radius:50%;width:48px;height:48px;background:#f7dec8;color:#754d30;font-weight:700;border:1px solid #be8761}.household-menu>summary{display:flex;align-items:center;gap:10px;max-width:100%}.household-menu>summary strong{overflow-wrap:anywhere}.household-chevron{font-size:18px}.household-menu .header-menu-items{left:0;right:auto}.invitation-form{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;margin:1.25rem 0}.invitation-form label{display:block;flex:1 1 190px}.invitation-form input,.invitation-form select{width:100%;box-sizing:border-box}.invitation-card{border-top:1px solid #e1d8c7;padding:14px 0}.invitation-card p{margin:.35rem 0;overflow-wrap:anywhere}.invitation-actions{display:flex;gap:12px;flex-wrap:wrap}.invitation-actions form{margin:0}.invitation-actions button{min-height:44px}.household-selector-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin:1.25rem 0}@media(max-width:600px){.account-shell{margin:8px auto;padding:12px}.account-header{gap:12px}.account-header .brand{font-size:26px}.account-header .brand span{max-width:230px;font-size:11px}.account-panel{padding:20px}.account-header .personal-menu{flex-shrink:0}.household-menu .header-menu-items{max-width:calc(100vw - 40px)}.invitation-form{display:block}.invitation-form button{margin-top:12px}.app-header .household-title{min-width:0}.app-header .household-menu{min-width:0}}

.password-field>.password-eye{width:44px!important;max-width:44px!important;position:absolute!important;right:3px!important;display:grid!important}

/* Un espace réel sépare le libellé et la zone de focus, dans le seul formulaire d’invitation. */
.app-main .invitation-form{gap:16px;align-items:flex-end}.app-main .invitation-form>label{display:flex;flex-direction:column;gap:10px;margin:0}.app-main .invitation-form input,.app-main .invitation-form select,.app-main .invitation-form>button{height:46px;min-height:46px;margin:0;box-sizing:border-box}.app-main .invitation-form input,.app-main .invitation-form select{display:block}
@media(max-width:600px){.app-main .invitation-form{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.app-main .invitation-form>button{margin:0;justify-self:start}}
