.membership .brand{color:inherit;text-decoration:none;letter-spacing:.02em}.membership .brand small{font-size:.7em;font-weight:400;display:block;opacity:.8}
.membership .top-in{flex-wrap:wrap}.membership #member-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.membership #member-actions select{max-width:150px;padding:6px;border-radius:0}
.membership .auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.membership .member-card{background:var(--surface);border:1px solid var(--line);border-radius:0;padding:24px;margin-bottom:18px;min-width:0}
.membership h2{margin-top:0}.membership .field{display:grid;gap:7px;margin-bottom:16px}.membership input:not([type=checkbox]),.membership textarea,.membership select{width:100%;min-width:0;max-width:100%;padding:11px;border:1px solid var(--line-strong);border-radius:0;background:white;color:var(--ink)}
.membership textarea{min-height:100px;resize:vertical}.membership button{min-height:42px}.membership .actions{display:flex;gap:10px;flex-wrap:wrap}.membership .member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.membership .check-grid{display:flex;flex-wrap:wrap;gap:10px;padding:10px 0}
.membership .status-pill{display:inline-block;background:var(--surface-soft);border:1px solid var(--line);border-radius:0;padding:5px 12px;font-size:.85rem}.membership .status-approved{color:var(--ok);background:var(--ok-bg)}
.membership #member-message{position:sticky;top:8px;z-index:4;border-radius:0;padding:13px;background:var(--ok-bg);border:1px solid var(--ok-line)}.membership #member-message.error{background:#fff0ec;color:#7c3024;border-color:#dcaa9a}
.membership .member-footer{margin:30px 0;color:var(--ink-muted);font-size:.88rem}.membership .uid{font-size:.8rem;overflow-wrap:anywhere}.membership .asset-list{display:grid;gap:8px}.membership .asset-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--line)}.membership .asset-row span{flex:1;overflow-wrap:anywhere}
.membership .public-details{white-space:pre-wrap;overflow-wrap:anywhere}.membership .danger-text{color:var(--danger)}.membership .region-list{max-height:260px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:0}.membership summary{cursor:pointer;padding:8px}.membership .label-hint{font-size:.85rem;color:var(--ink-muted)}
.membership .timeline pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.membership .notice{overflow-wrap:anywhere}.membership .bottom button{flex:1;font-size:.85rem}.membership .member-photo{max-width:100%;border-radius:0}.membership .auth-switch{margin-top:16px}.membership .file-preview{width:100%;max-height:180px;object-fit:contain}
@media(max-width:650px){.membership .shell{padding:0 14px 100px}.membership .top-in{padding:12px 14px}.membership .auth-layout,.membership .member-grid{grid-template-columns:1fr}.membership .member-card{padding:18px}.membership .intro h1{font-size:1.65rem}.membership .nav{display:flex;overflow:auto}.membership .nav button{white-space:nowrap}.membership .actions>button{flex:1}.membership #member-actions{width:100%;justify-content:flex-end}}
.page-heading,.case-title,.actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.page-heading{margin-bottom:16px}.page-heading h2,.case-title h2,.case-title h3{margin:0}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.case-details{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px 16px;margin:20px 0}
.case-details dt{font-weight:700;color:var(--ink)}.case-details dd{margin:0;overflow-wrap:anywhere}
.case-card .uid{overflow-wrap:anywhere}.danger{color:#8c2f27;border-color:#c98a84}
@media(max-width:640px){.form-grid,.case-details{grid-template-columns:1fr}.case-details dt{margin-top:8px}.page-heading>button{width:100%}}
.member-dialog{max-width:min(420px,calc(100vw - 32px));border:0;border-radius:0;padding:24px;box-shadow:0 20px 70px #1b233870;color:inherit}.member-dialog::backdrop{background:#1b233870}.member-dialog h2{margin-top:0}.member-dialog button{width:100%}
.timeline{display:grid;gap:10px}.timeline-item{border-left:3px solid var(--sage);padding:4px 0 4px 12px}.timeline-item p{margin:2px 0}.manual-note{background:#fff5d8;border-radius:0;padding:12px;color:#6c5310}
.extension-block{margin:1.25rem 0;padding:1rem;border:1px solid var(--line);border-radius:0;background:#fffdf8}.extension-block legend{padding:0 .4rem;font-weight:800;color:var(--ink)}
.checkbox-field{display:flex!important;grid-template-columns:none!important;flex-direction:row;align-items:center;gap:.55rem}.checkbox-field input{width:auto!important}
.extension-summary{margin:.75rem 0;padding:.75rem;border-radius:0;background:#f7f4ed}.extension-summary .status-pill{display:inline-block;margin:.2rem .15rem}
.extension-item{padding:1rem 0;border-bottom:1px solid var(--line)}.extension-item:last-child{border-bottom:0}
.field-label{display:inline}.required-star{color:#b42318;font-weight:800}.multi-picker{margin:0 0 16px;padding:0;border:0}.multi-picker legend{margin-bottom:7px}.multi-picker details{border:1px solid var(--line-strong);border-radius:0;background:#fff}.multi-picker summary{padding:11px;list-style-position:inside}.multi-picker .check-grid{padding:6px 12px 12px}
.agreement-box{margin:14px 0;padding:14px;border:1px solid var(--line-strong);border-radius:0;background:var(--paper)}.agreement-box h3{margin:0 0 8px}.agreement-box h3:not(:first-child){margin-top:16px}.consent-row{display:flex;align-items:flex-start;gap:10px;margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:0;background:#fff}.consent-row input{width:auto;margin-top:3px}.required-consent{border-color:#bd5b50;background:#fff8f7}.agreement-history{padding:10px 0;border-top:1px solid var(--line)}
.conversation-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.conversation-card .message-preview{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-muted)}.unread-badge{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:0;background:#b42318;color:#fff;font-weight:800}.conversation-shell{max-width:780px;margin:0 auto}.conversation-summary{position:sticky;top:8px;z-index:3;margin-bottom:12px;padding:16px;border:1px solid var(--line);border-radius:0;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(10px)}.conversation-summary h2,.conversation-summary p{margin:0}.protected-contact{margin-top:10px;padding:12px;border-radius:0;background:var(--ok-bg);border:1px solid var(--ok-line)}.protected-contact p{margin:.4rem 0 0}.message-thread{display:flex;flex-direction:column;gap:10px;min-height:280px;padding:16px 4px}.message-bubble{width:min(82%,560px);padding:11px 13px;border-radius:0;background:#fff;border:1px solid var(--line);overflow-wrap:anywhere}.message-bubble.mine{align-self:flex-end;background:#e4ece7;border-bottom-right-radius:0}.message-bubble.theirs{align-self:flex-start;border-bottom-left-radius:0}.message-bubble p{white-space:pre-wrap;margin:.35rem 0}.message-bubble small,.system-message small{display:block;color:var(--ink-muted);font-size:.76rem}.system-message{align-self:center;max-width:90%;padding:7px 12px;border-radius:0;background:var(--surface-soft);color:var(--ink-muted);text-align:center;font-size:.85rem}.message-composer{position:sticky;bottom:74px;padding:14px;border:1px solid var(--line);border-radius:0;background:var(--surface);box-shadow:0 -8px 28px #2a373020}.message-composer textarea{min-height:74px}.canned-messages,.conversation-actions{display:flex;gap:8px;overflow-x:auto;padding:4px 0 10px}.canned-messages button,.conversation-actions button{white-space:nowrap}.conversation-actions{margin-top:10px}.conversation-actions button{flex:1}.message-composer details{margin-top:12px}
@media(max-width:650px){.conversation-list{grid-template-columns:1fr}.conversation-summary{top:4px;padding:13px}.message-thread{padding:12px 0}.message-bubble{width:88%}.message-composer{bottom:68px;padding:12px}.conversation-actions{flex-wrap:wrap}.conversation-actions button{min-width:calc(50% - 4px)}}
.membership .auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:#777;font-size:.9rem}.membership .auth-divider::before,.membership .auth-divider::after{content:"";height:1px;background:#ddd;flex:1}.membership [data-action="google-auth"]{width:100%;min-height:46px;background:#fff;border:1px solid #c9c9c9;color:#282828;font-weight:700}.membership [data-action="google-auth"]::before{content:"G";display:inline-grid;place-items:center;width:22px;height:22px;margin-right:9px;border-radius:50%;background:linear-gradient(135deg,#4285f4 0 25%,#34a853 25% 50%,#fbbc05 50% 75%,#ea4335 75%);color:#fff;font-size:.82rem}.membership .onboarding-card{max-width:620px;margin-inline:auto}.membership .role-choice{border:1px solid #ddd;border-radius:0;padding:14px;margin:16px 0}.membership .role-choice label{display:inline-flex;align-items:center;gap:7px;margin:8px 20px 8px 0}.membership .payment-mask,.membership .deposit-instructions{padding:14px;border:1px solid #d9d4ca;border-radius:0;background:#fbfaf7;margin:12px 0}.membership .account-number{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.05rem;letter-spacing:.04em;word-break:break-all}
.region-actions{display:flex;gap:8px;padding:4px 8px}.region-actions button{min-height:36px}.verification-grid{display:grid;gap:16px}.verification-slot{padding:16px;border:1px solid var(--line);border-radius:0;background:#fbfaf7}.verification-slot h3{margin-top:0}.verification-preview{margin:12px 0}.check-pass{padding:10px;border-radius:0;background:var(--ok-bg);color:var(--ok)}.check-fail{padding:10px;border-radius:0;background:#fff0ec;color:#7c3024}.check-fail ul{padding-left:22px}.conversation-quote{min-width:min(100%,360px);padding:8px;border:1px solid var(--line);border-radius:0;background:#fff}.conversation-quote summary{font-weight:700}.conversation-quote form{padding:8px}
.password-wrap{position:relative;display:block}.membership .password-wrap input{padding-right:44px}.password-toggle{position:absolute;top:50%;right:4px;transform:translateY(-50%);display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:0;background:transparent;color:var(--ink-soft);cursor:pointer}.password-toggle:hover{color:var(--ink)}.password-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.password-toggle[aria-pressed="false"] .eye-slash{display:none}
.membership .team-member-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.membership .team-member-row:last-child{border-bottom:0}.membership .team-member-row p{margin:.3rem 0 0}.membership .collaboration-card .case-details,.membership .collaboration-summary .case-details{margin-top:14px}.membership .collaboration-shell{display:grid;gap:16px}
@media(max-width:640px){.membership .team-member-row{align-items:flex-start;flex-direction:column}.membership .team-member-row .actions{width:100%}.membership .team-member-row .actions button{flex:1}}
.membership .calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}.membership .calendar-modes{display:flex;gap:6px}.membership .calendar-modes .active{background:var(--ink);color:#fff}.membership .calendar-board{display:grid;gap:14px}.membership .calendar-day{padding:16px;border:1px solid var(--line);border-radius:0;background:var(--surface)}.membership .calendar-day h3{margin:0 0 10px}.membership .calendar-event{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid var(--line)}.membership .calendar-event p{margin:.3rem 0}.membership a.secondary{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
@media(max-width:640px){.membership .calendar-toolbar,.membership .calendar-event{align-items:stretch;flex-direction:column}.membership .calendar-modes>*{flex:1}.membership .calendar-event .actions{width:100%}.membership .calendar-event .actions>*{flex:1}}
.membership .assistant-hero{padding:28px;margin-bottom:18px;border-radius:0;background:linear-gradient(135deg,#fffbd0,#fff8e7);border:1px solid var(--line)}.membership .assistant-hero h2{margin:12px 0 8px}.membership .assistant-compare,.membership .assistant-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.membership .assistant-after{border-color:var(--sage);background:#eef3ef}.membership .assistant-mock{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.membership .assistant-mock>div{display:grid;gap:6px;padding:16px;border-radius:0;background:var(--surface-soft);min-width:0}.membership .assistant-mock strong{overflow-wrap:anywhere}.membership .assistant-plans ul,.membership .assistant-compare ul{padding-left:20px}.membership .assistant-plans li,.membership .assistant-compare li{margin:.55rem 0}
.membership .product-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.membership .product-entry-grid button{display:grid;gap:5px;text-align:left;padding:16px;border:1px solid var(--line);border-radius:0;background:var(--surface-soft);color:inherit}.membership .product-entry-grid button:hover{border-color:var(--sage)}.membership .product-entry-grid strong{font-size:1rem}.membership .product-entry-grid span{color:var(--muted);line-height:1.5}.membership .assistant-product{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:24px;align-items:start}.membership .assistant-product ul{padding-left:20px}.membership .assistant-price{font-size:1.7rem;font-weight:800;margin:.5rem 0;color:var(--ink)}
@media(max-width:640px){.membership .assistant-hero{padding:20px}.membership .assistant-hero button{width:100%}.membership .assistant-compare,.membership .assistant-plans,.membership .assistant-mock{grid-template-columns:1fr}}
@media(max-width:640px){.membership .product-entry-grid,.membership .assistant-product{grid-template-columns:1fr}}

.membership .sponsor-label{display:inline-flex;align-items:center;margin-right:.35rem;border:1px solid #8a6b2d;border-radius:0;padding:.2rem .55rem;background:#fff7df;color:#6f5018;font-size:.78rem;font-weight:800}.membership .extension-service-card .case-details{margin-block:1rem}.membership .extension-service-card details>summary{cursor:pointer;font-weight:800;color:var(--accent,var(--sage))}
.membership .storage-preference-result{display:grid;gap:14px}.membership .preference-type{display:inline-flex;width:max-content;max-width:100%;padding:8px 16px;background:var(--lemon);color:var(--indigo-deep);font-family:var(--serif);font-size:1.25rem;font-weight:700;letter-spacing:.04em}.membership .preference-meters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.membership .preference-meters>div{display:grid;grid-template-columns:1fr auto;gap:6px 10px;color:var(--ink-soft)}.membership .preference-meters strong{color:var(--ink);font-variant-numeric:tabular-nums}.membership .preference-meters progress{grid-column:1/-1;width:100%;height:10px;appearance:none;-webkit-appearance:none;border:0;border-radius:0;background:var(--linen);color:var(--indigo)}.membership .preference-meters progress::-webkit-progress-bar{background:var(--linen);border-radius:0}.membership .preference-meters progress::-webkit-progress-value{background:var(--indigo);border-radius:0}.membership .preference-meters progress::-moz-progress-bar{background:var(--indigo);border-radius:0}.membership .preference-quiz{display:grid;gap:14px}.membership .preference-question{margin:0;padding:18px 20px;border:1px solid var(--line);background:var(--surface)}.membership .preference-question legend{display:flex;align-items:baseline;gap:12px;padding:0 6px;font-weight:700;color:var(--ink)}.membership .preference-question legend span{flex:0 0 auto;min-width:1.4em;font-family:var(--serif);font-size:1.35rem;line-height:1;color:var(--brick);text-align:center}.membership .preference-question label{display:flex;align-items:flex-start;gap:10px;margin:10px 0 0;padding:12px 14px;border:1px solid var(--line-strong);background:#fff;cursor:pointer;transition:border-color .2s,background-color .2s}.membership .preference-question label:hover{border-color:var(--sage)}.membership .preference-question label:has(input:checked){border-color:var(--indigo);background:var(--linen);font-weight:700}.membership .preference-question label:has(input:focus-visible){outline:3px solid var(--brick);outline-offset:2px}.membership .preference-question input{width:auto;margin-top:3px;accent-color:var(--brick)}.membership .preference-lede{max-width:40em;color:var(--ink-soft);line-height:1.75}.membership .preference-result-page h2.preference-type{margin:0 0 18px;font-size:clamp(1.5rem,2.4vw,2rem);padding:10px 20px}@media (prefers-reduced-motion:reduce){.membership .preference-question label{transition:none}}.membership .preference-reminder .actions{align-items:stretch}.membership .preference-reminder .actions>*{flex:1}
@media(max-width:640px){.membership .preference-meters{grid-template-columns:1fr}.membership .preference-question{padding:14px}.membership .preference-reminder .actions{flex-direction:column}}

/* 找整理師：案主邀請整理師到自己的需求 */
.directory-invite {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--line-soft);
  display: grid;
  gap: 10px;
}

.membership .ops-monitor{margin-block:18px}.membership .ops-ledger-row{border-top:1px solid var(--line-strong);padding-block:16px;overflow-wrap:anywhere}.membership #ops-ledger-detail{margin-block:18px;padding:16px;background:var(--linen);overflow-wrap:anywhere}.membership .ops-panel>details{margin-top:18px}
.directory-invite label {
  display: grid;
  gap: 6px;
}

.membership .link-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--line-strong);background:var(--surface);color:var(--indigo);font-weight:700;text-decoration:none}.membership .link-button:hover{background:var(--linen)}
.membership .quote-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:14px}.membership .quote-card{padding:16px;border:1px solid var(--line-strong);background:#fff;min-width:0;overflow-wrap:anywhere}.membership .quote-card.expired{opacity:.7}.membership .quote-price{margin:4px 0 10px;font-family:var(--serif);font-size:1.6rem;font-weight:700;color:var(--brick)}.membership .quote-card .case-details{margin:0 0 10px}.membership .my-applications{margin-top:28px}@media(min-width:900px){.membership .quote-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* 手機：觸控目標至少 44px；輸入框字級 16px，避免 iOS 聚焦時自動放大造成版面跑位 */
.membership .ops-panel{margin-bottom:28px;min-width:0}.membership .ops-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;margin-top:16px}.membership .ops-task,.membership .ops-detail{min-width:0;overflow-wrap:anywhere}.membership .ops-detail{margin-top:20px;scroll-margin-top:20px}.membership .ops-panel [aria-pressed=true]{background:var(--indigo);color:#fff}.membership .ops-detail .uid{overflow-wrap:anywhere}.membership .ops-detail form{margin-block:20px}.membership .ops-panel .page-heading{flex-wrap:wrap}
@media(max-width:650px){.membership button,.membership .link-button,.membership .secondary,.membership select,.membership input:not([type=checkbox]):not([type=radio]){min-height:44px}.membership input:not([type=checkbox]):not([type=radio]),.membership textarea,.membership select{font-size:16px}.membership .region-actions button{min-height:44px}.membership .actions{gap:10px}.membership .nav button{min-height:44px;padding-inline:14px}.membership dialog{max-width:calc(100vw - 24px)}}
