:root{--bg: #f4f7f5;--bg-soft: #eef5f0;--card: #ffffff;--text: #17211b;--muted: #66756c;--border: #dfe8e2;--border-strong: #c7d6cc;--primary: #2f7d4f;--primary-dark: #24633e;--primary-soft: #e8f5ed;--danger-bg: #fff1f2;--danger-border: #fecdd3;--danger-text: #9f1239;--success-bg: #edfdf3;--success-border: #bbf7d0;--success-text: #166534;--shadow: 0 18px 45px rgba(20, 48, 32, .08);--shadow-soft: 0 10px 28px rgba(20, 48, 32, .06);--radius: 8px}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}a{color:var(--primary);font-weight:650;text-decoration:none}a:hover{color:var(--primary-dark)}input,button{font:inherit}button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(47,125,79,.28);outline-offset:3px}::selection{background:#2f7d4f2e}.auth-card .login-connection{padding:12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--primary-soft);color:var(--primary-dark);font-size:14px;overflow-wrap:anywhere}.login-connection p{margin:6px 0 0}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:32px 18px;background:linear-gradient(180deg,#e8f5edeb,#f4f7f5fa),var(--bg)}.auth-card{width:min(440px,100%);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;display:grid;gap:14px}.auth-header{display:grid;gap:6px;margin-bottom:4px}.auth-title{font-size:34px;line-height:1.05;margin:0;letter-spacing:0}.auth-sub{margin:0;color:var(--muted);font-size:15px}.auth-field{display:grid;gap:7px}.auth-row{display:flex;justify-content:flex-end;font-size:13px;margin-top:-2px}.auth-card label{font-size:13px;font-weight:650;color:#314238}.auth-card input{width:100%;min-height:46px;padding:11px 13px;border:1px solid var(--border);border-radius:var(--radius);outline:none;background:#fbfdfb;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.auth-card input:focus{background:#fff;border-color:#2f7d4f8c;box-shadow:0 0 0 4px #2f7d4f21}.auth-card button{width:100%;min-height:46px;padding:11px 14px;border:0;border-radius:var(--radius);background:var(--primary);color:#fff;cursor:pointer;font-weight:750;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.auth-card button:hover{background:var(--primary-dark);box-shadow:0 10px 24px #2f7d4f33}.auth-card button:active{transform:translateY(1px)}.auth-card button:disabled{opacity:.68;cursor:not-allowed;box-shadow:none;transform:none}.auth-card .muted{color:var(--muted);font-size:13px;margin:2px 0 0}.auth-card .error,.auth-card .success{padding:11px 12px;border-radius:var(--radius);font-size:13px;line-height:1.4}.auth-card .error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text)}.auth-card .success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}@media(max-width:520px){.auth-wrap{align-items:stretch;padding:18px}.auth-card{align-self:center;padding:22px}.auth-title{font-size:30px}}.dashboard-page{min-height:100vh;padding:28px 18px 44px;background:var(--bg)}.dashboard-page .container{max-width:1120px;margin:0 auto}.dashboard-page .topbar{display:flex;gap:18px;align-items:flex-start;justify-content:space-between;padding:4px 0 22px}.dashboard-page .topbar h2{margin:0;font-size:32px;line-height:1.12;letter-spacing:0}.dashboard-page .titleBlock{display:grid;gap:4px}.dashboard-page .top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.dashboard-page .linkBtn,.dashboard-page .primaryBtn{min-height:42px;border-radius:var(--radius);cursor:pointer;font-weight:700;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.dashboard-page .linkBtn{border:1px solid var(--border);background:#fff;color:var(--text);padding:9px 13px}.dashboard-page .linkBtn:hover{border-color:var(--border-strong);background:#f8fbf9}.dashboard-page .primaryBtn{width:auto;padding:10px 16px;border:0;background:var(--primary);color:#fff}.dashboard-page .primaryBtn:hover{background:var(--primary-dark);box-shadow:0 10px 22px #2f7d4f2e}.dashboard-page .linkBtn:active,.dashboard-page .primaryBtn:active{transform:translateY(1px)}.dashboard-page .create-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:14px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin-bottom:18px}.dashboard-page .create-card input{width:100%;min-height:44px;padding:10px 13px;border:1px solid var(--border);border-radius:var(--radius);outline:none;background:#fbfdfb;color:var(--text)}.dashboard-page .create-card input:focus{background:#fff;border-color:#2f7d4f8c;box-shadow:0 0 0 4px #2f7d4f21}.dashboard-page .grid{display:grid;gap:14px;grid-template-columns:1fr}@media(min-width:640px){.dashboard-page .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.dashboard-page .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.dashboard-page .card{appearance:none;width:100%;color:var(--text);text-align:left;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:18px;min-height:118px;display:flex;flex-direction:column;justify-content:space-between;gap:18px}.dashboard-page .clickable{cursor:pointer}.dashboard-page .clickable:hover{border-color:#2f7d4f59;box-shadow:var(--shadow);transform:translateY(-1px)}.dashboard-page .card-title{font-weight:800;font-size:17px;line-height:1.3;overflow-wrap:anywhere}.dashboard-page .badge{display:inline-flex;width:fit-content;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:750;background:var(--primary-soft);color:var(--primary-dark);border:1px solid #cfe8d7}.dashboard-page .muted{color:var(--muted);font-size:13px}.dashboard-page .error,.dashboard-page .empty{border-radius:var(--radius)}.dashboard-page .error{margin:10px 0 16px;background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);padding:11px 12px;font-size:13px}.dashboard-page .empty{grid-column:1 / -1;background:#ffffffb8;border:1px dashed var(--border-strong);color:var(--muted);padding:28px 18px;text-align:center}@media(max-width:640px){.dashboard-page{padding:20px 14px 34px}.dashboard-page .topbar{display:grid;gap:14px}.dashboard-page .top-actions,.dashboard-page .create-card{grid-template-columns:1fr;width:100%}.dashboard-page .top-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}.dashboard-page .linkBtn,.dashboard-page .primaryBtn{width:100%}}.household-page{min-height:100vh;padding:28px 18px 44px;background:var(--bg)}.household-page .container{max-width:1120px;margin:0 auto}.household-page .topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:4px 0 22px}.household-page .titleBlock{display:flex;gap:12px;align-items:flex-start;min-width:0}.household-page .topbar h2{margin:0;font-size:32px;line-height:1.12;letter-spacing:0}.household-page .top-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}.household-page .muted{color:var(--muted);font-size:13px}.household-page .create-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:14px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin-bottom:12px}.household-page .create-card input{width:100%;min-height:44px;padding:10px 13px;border:1px solid var(--border);border-radius:var(--radius);outline:none;background:#fbfdfb;color:var(--text)}.household-page .create-card input:focus{background:#fff;border-color:#2f7d4f8c;box-shadow:0 0 0 4px #2f7d4f21}.household-page .linkBtn,.household-page .primaryBtn{min-height:42px;border-radius:var(--radius);cursor:pointer;font-weight:700;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.household-page .linkBtn{border:1px solid var(--border);background:#fff;color:var(--text);padding:9px 13px}.household-page .linkBtn:hover{border-color:var(--border-strong);background:#f8fbf9}.household-page .primaryBtn{width:auto;padding:10px 16px;border:0;background:var(--primary);color:#fff}.household-page .primaryBtn:hover{background:var(--primary-dark);box-shadow:0 10px 22px #2f7d4f2e}.household-page .linkBtn:active,.household-page .primaryBtn:active{transform:translateY(1px)}.household-page .statusNote{margin:4px 0 14px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:#ffffffb3;color:var(--muted);font-size:13px}.household-page .sectionBlock{margin-top:22px}.household-page .sectionHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.household-page .sectionHeader h3{margin:0;font-size:20px;line-height:1.2}.household-page .memberList{display:grid;gap:10px}.household-page .memberRow{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:14px;display:flex;align-items:center;justify-content:space-between;gap:14px}.household-page .memberMain{min-width:0}.household-page .memberName{font-weight:800;font-size:15px;margin-bottom:3px;overflow-wrap:anywhere}.household-page .memberMeta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;text-align:right}.household-page .grid{display:grid;gap:14px;grid-template-columns:1fr}.household-page .listGrid{margin-top:12px}@media(min-width:640px){.household-page .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.household-page .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.household-page .card{appearance:none;width:100%;color:var(--text);text-align:left;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:18px;min-height:112px;display:flex;flex-direction:column;justify-content:space-between;gap:16px}.household-page .card-title{font-weight:800;font-size:17px;line-height:1.3;overflow-wrap:anywhere}.household-page .badge{display:inline-flex;width:fit-content;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:750;background:var(--primary-soft);color:var(--primary-dark);border:1px solid #cfe8d7}.household-page .clickable{cursor:pointer}.household-page .clickable:hover{border-color:#2f7d4f59;box-shadow:var(--shadow);transform:translateY(-1px)}.household-page .empty{text-align:center;color:var(--muted);padding:26px 18px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:#ffffffb8}.household-page .error{margin:10px 0 16px;background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);padding:11px 12px;border-radius:var(--radius);font-size:13px}@media(max-width:700px){.household-page{padding:20px 14px 34px}.household-page .topbar,.household-page .titleBlock,.household-page .memberRow,.household-page .memberMeta{display:grid;gap:10px}.household-page .top-actions,.household-page .create-card{grid-template-columns:1fr;width:100%}.household-page .memberMeta{justify-content:stretch;text-align:left}.household-page .linkBtn,.household-page .primaryBtn{width:100%}}.household-settings-page{min-height:100vh;padding:28px 18px 44px;background:var(--bg)}.household-settings-page .container{max-width:960px;margin:0 auto}.household-settings-page .topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:4px 0 22px}.household-settings-page .titleBlock{display:flex;gap:12px;align-items:flex-start;min-width:0}.household-settings-page .topbar h2{margin:0;font-size:32px;line-height:1.12;letter-spacing:0}.household-settings-page .top-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}.household-settings-page .muted{color:var(--muted);font-size:13px}.household-settings-page .settingsGrid{display:grid;gap:16px}.household-settings-page .settingsPanel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:18px}.household-settings-page .dangerPanel{border-color:var(--danger-border)}.household-settings-page .panelHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}.household-settings-page .panelHeader h3{margin:0;font-size:20px;line-height:1.2}.household-settings-page .settingsForm{display:grid;gap:8px}.household-settings-page .settingsForm label,.household-settings-page .readonlyLabel{color:var(--muted);font-size:13px;font-weight:750}.household-settings-page .formRow{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.household-settings-page input{width:100%;min-height:44px;padding:10px 13px;border:1px solid var(--border);border-radius:var(--radius);outline:none;background:#fbfdfb;color:var(--text)}.household-settings-page input:focus{background:#fff;border-color:#2f7d4f8c;box-shadow:0 0 0 4px #2f7d4f21}.household-settings-page .readonlyBlock{display:grid;gap:6px}.household-settings-page .readonlyValue{font-weight:800;font-size:17px;overflow-wrap:anywhere}.household-settings-page .linkBtn,.household-settings-page .primaryBtn,.household-settings-page .dangerBtn{min-height:42px;border-radius:var(--radius);cursor:pointer;font-weight:700;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.household-settings-page .linkBtn{border:1px solid var(--border);background:#fff;color:var(--text);padding:9px 13px}.household-settings-page .linkBtn:hover{border-color:var(--border-strong);background:#f8fbf9}.household-settings-page .primaryBtn{width:auto;padding:10px 16px;border:0;background:var(--primary);color:#fff}.household-settings-page .primaryBtn:hover:not(:disabled){background:var(--primary-dark);box-shadow:0 10px 22px #2f7d4f2e}.household-settings-page .dangerBtn{width:fit-content;padding:10px 16px;border:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger-text)}.household-settings-page .dangerBtn:hover:not(:disabled){background:#fde8e8;box-shadow:0 10px 22px #b91c1c1f}.household-settings-page button:disabled{cursor:not-allowed;opacity:.68}.household-settings-page .linkBtn:active,.household-settings-page .primaryBtn:active,.household-settings-page .dangerBtn:active{transform:translateY(1px)}.household-settings-page .badge{display:inline-flex;width:fit-content;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:750;background:var(--primary-soft);color:var(--primary-dark);border:1px solid #cfe8d7;white-space:nowrap}.household-settings-page .statusNote,.household-settings-page .success,.household-settings-page .error,.household-settings-page .empty{border-radius:var(--radius)}.household-settings-page .statusNote{padding:11px 12px;border:1px solid var(--border);background:#ffffffb3;color:var(--muted);font-size:13px}.household-settings-page .success{margin:0 0 16px;background:var(--primary-soft);border:1px solid #cfe8d7;color:var(--primary-dark);padding:11px 12px;font-size:13px}.household-settings-page .error{margin:0 0 16px;background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);padding:11px 12px;font-size:13px}.household-settings-page .empty{text-align:center;color:var(--muted);padding:26px 18px;border:1px dashed var(--border-strong);background:#ffffffb8}@media(max-width:700px){.household-settings-page{padding:20px 14px 34px}.household-settings-page .topbar,.household-settings-page .titleBlock,.household-settings-page .panelHeader,.household-settings-page .formRow{display:grid;gap:10px}.household-settings-page .top-actions,.household-settings-page .linkBtn,.household-settings-page .primaryBtn,.household-settings-page .dangerBtn{width:100%}}.list-page{min-height:100vh;padding:28px 18px 44px;background:var(--bg)}.list-page .container{max-width:940px;margin:0 auto}.list-page .topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:4px 0 22px}.list-page .titleBlock{display:flex;gap:12px;align-items:flex-start}.list-page .topbar h2{margin:0;font-size:32px;line-height:1.12;letter-spacing:0}.list-page .muted{color:var(--muted);font-size:13px}.list-page .statPill{display:inline-flex;width:fit-content;align-items:center;margin-top:5px;padding:4px 10px;border-radius:999px;background:var(--primary-soft);border:1px solid #cfe8d7;color:var(--primary-dark);font-size:12px;font-weight:750}.list-page .linkBtn,.list-page .primaryBtn{min-height:42px;border-radius:var(--radius);cursor:pointer;font-weight:700;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.list-page .linkBtn{border:1px solid var(--border);background:#fff;color:var(--text);padding:9px 13px}.list-page .linkBtn:hover{border-color:var(--border-strong);background:#f8fbf9}.list-page .primaryBtn{width:auto;padding:10px 16px;border:0;background:var(--primary);color:#fff}.list-page .primaryBtn:hover{background:var(--primary-dark);box-shadow:0 10px 22px #2f7d4f2e}.list-page .linkBtn:active,.list-page .primaryBtn:active{transform:translateY(1px)}.list-page .addCard{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:14px;display:grid;gap:10px;margin-bottom:18px}.list-page .row{display:grid;grid-template-columns:minmax(180px,1fr) 88px 108px auto;gap:10px;align-items:center}.list-page .row+.row{grid-template-columns:1fr}.list-page .addCard input{width:100%;min-height:44px;padding:10px 13px;border:1px solid var(--border);border-radius:var(--radius);outline:none;background:#fbfdfb;color:var(--text)}.list-page .addCard input:focus{background:#fff;border-color:#2f7d4f8c;box-shadow:0 0 0 4px #2f7d4f21}.list-page .list{display:grid;gap:10px}.list-page .itemRow{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:12px;display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:12px;align-items:center}.list-page .check,.list-page .trash{width:36px;height:36px;border-radius:var(--radius);border:1px solid var(--border);background:#fff;cursor:pointer;display:inline-grid;place-items:center;transition:background .15s ease,border-color .15s ease,color .15s ease}.list-page .check{color:var(--primary-dark);font-weight:850}.list-page .check:hover,.list-page .trash:hover{background:#f8fbf9;border-color:var(--border-strong)}.list-page .check.checked{background:var(--primary-soft);border-color:#2f7d4f59;color:var(--primary-dark)}.list-page .itemMain{min-width:0}.list-page .itemTop{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.list-page .itemName{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-page .itemMeta{color:var(--muted);font-size:13px;white-space:nowrap}.list-page .itemNotes{margin-top:4px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.list-page .itemRow.done{background:#ffffffb8}.list-page .itemRow.done .itemName{text-decoration:line-through;color:var(--muted)}.list-page .empty{text-align:center;color:var(--muted);padding:28px 18px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:#ffffffb8}.list-page .error{margin:10px 0 16px;background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);padding:11px 12px;border-radius:var(--radius);font-size:13px}@media(max-width:700px){.list-page{padding:20px 14px 34px}.list-page .topbar,.list-page .titleBlock{display:grid;gap:10px}.list-page .row,.list-page .row+.row{grid-template-columns:1fr}.list-page .primaryBtn,.list-page .linkBtn{width:100%}.list-page .itemRow{grid-template-columns:40px minmax(0,1fr) 40px}.list-page .itemTop{display:grid;gap:2px}.list-page .itemName{white-space:normal;overflow-wrap:anywhere}}.invites-page{min-height:100vh;padding:28px 18px 44px;background:var(--bg)}.invites-page .container{max-width:900px;margin:0 auto}.invites-page .topbar{padding:4px 0 22px}.invites-page .titleBlock{display:flex;gap:12px;align-items:flex-start}.invites-page .topbar h2{margin:0;font-size:32px;line-height:1.12;letter-spacing:0}.invites-page .muted{color:var(--muted);font-size:13px}.invites-page .linkBtn,.invites-page .primaryBtn{min-height:42px;border-radius:var(--radius);cursor:pointer;font-weight:700;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.invites-page .linkBtn{border:1px solid var(--border);background:#fff;color:var(--text);padding:9px 13px}.invites-page .linkBtn:hover{border-color:var(--border-strong);background:#f8fbf9}.invites-page .primaryBtn{width:auto;padding:10px 16px;border:0;background:var(--primary);color:#fff}.invites-page .primaryBtn:hover{background:var(--primary-dark);box-shadow:0 10px 22px #2f7d4f2e}.invites-page .linkBtn:active,.invites-page .primaryBtn:active{transform:translateY(1px)}.invites-page .inviteList{display:grid;gap:12px}.invites-page .inviteCard{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:16px;display:flex;gap:14px;align-items:center;justify-content:space-between}.invites-page .inviteMain{min-width:0}.invites-page .inviteTitle{font-weight:800;font-size:16px;margin-bottom:4px;overflow-wrap:anywhere}.invites-page .inviteMeta{overflow-wrap:anywhere}.invites-page .empty{text-align:center;color:var(--muted);padding:28px 18px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:#ffffffb8}.invites-page .error{margin:10px 0 16px;background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);padding:11px 12px;border-radius:var(--radius);font-size:13px}@media(max-width:640px){.invites-page{padding:20px 14px 34px}.invites-page .titleBlock,.invites-page .inviteCard{display:grid;gap:10px}.invites-page .primaryBtn,.invites-page .linkBtn{width:100%}}.profile-page{min-height:100vh;padding:28px 18px 44px;background:var(--bg)}.profile-page .container{max-width:760px;margin:0 auto}.profile-page .topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:4px 0 22px}.profile-page .titleBlock{display:flex;gap:12px;align-items:flex-start}.profile-page .topbar h2{margin:0;font-size:32px;line-height:1.12;letter-spacing:0}.profile-page .muted{color:var(--muted);font-size:13px}.profile-page .linkBtn,.profile-page .primaryBtn{min-height:42px;border-radius:var(--radius);cursor:pointer;font-weight:700;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.profile-page .linkBtn{border:1px solid var(--border);background:#fff;color:var(--text);padding:9px 13px}.profile-page .linkBtn:hover{border-color:var(--border-strong);background:#f8fbf9}.profile-page .primaryBtn{width:fit-content;padding:10px 16px;border:0;background:var(--primary);color:#fff}.profile-page .primaryBtn:hover{background:var(--primary-dark);box-shadow:0 10px 22px #2f7d4f2e}.profile-page .primaryBtn:disabled{opacity:.68;cursor:not-allowed;box-shadow:none}.profile-page .linkBtn:active,.profile-page .primaryBtn:active{transform:translateY(1px)}.profile-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:18px;display:grid;gap:16px}.profile-field{display:grid;gap:7px}.profile-field label{font-size:13px;font-weight:750;color:#314238}.profile-field input{width:100%;min-height:44px;padding:10px 13px;border:1px solid var(--border);border-radius:var(--radius);outline:none;background:#fbfdfb;color:var(--text)}.profile-field input:focus{background:#fff;border-color:#2f7d4f8c;box-shadow:0 0 0 4px #2f7d4f21}.profile-field input[readonly]{background:#f8fbf9c7;color:var(--muted)}.profile-page .error,.profile-page .success,.profile-page .empty{border-radius:var(--radius);margin-bottom:16px}.profile-page .error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);padding:11px 12px;font-size:13px}.profile-page .success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text);padding:11px 12px;font-size:13px}.profile-page .empty{color:var(--muted);padding:28px 18px;border:1px dashed var(--border-strong);background:#ffffffb8;text-align:center}@media(max-width:640px){.profile-page{padding:20px 14px 34px}.profile-page .topbar,.profile-page .titleBlock{display:grid;gap:10px}.profile-page .linkBtn,.profile-page .primaryBtn{width:100%}.profile-card{padding:14px}}
