.avatar{display:grid;place-items:center;flex:none;overflow:hidden;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:600;line-height:1;user-select:none}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar[data-size=sm]{width:36px;height:36px;font-size:13px}.avatar[data-size=md]{width:44px;height:44px;font-size:15px}.avatar[data-size=lg]{width:72px;height:72px;font-size:22px}.avatar[data-size=xl]{width:96px;height:96px;font-size:28px}.avatar-initials{letter-spacing:.02em}.rel-badge{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin-top:10px;padding:7px 14px;border:1px solid var(--accent-line);border-radius:var(--radius-pill);background:var(--accent-soft);font-size:var(--step--1);line-height:1.4}.rel-badge-mark{width:7px;height:7px;border-radius:50%;background:var(--accent);transform:translateY(-1px);flex:none;align-self:center}.rel-badge-link{color:var(--accent);font-weight:500;text-decoration:underline;text-underline-offset:2px}.rel-badge-since{color:var(--ink-muted)}.profile-page{padding:clamp(24px,5vw,56px) 0 96px}.profile-status{padding:32px 0}.profile-head{display:grid;grid-template-columns:168px minmax(0,1fr);grid-template-areas:"portrait topline" "portrait stats" "portrait identity";align-items:start;column-gap:44px;row-gap:18px}.profile-portrait{grid-area:portrait}.profile-head .avatar[data-size=xl]{width:152px;height:152px;font-size:44px}.profile-topline{grid-area:topline;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;min-width:0}.profile-handle{font-family:var(--font-display);font-weight:500;font-size:var(--step-2);line-height:1.15;min-width:0;overflow-wrap:anywhere}.profile-actions{display:flex;flex-wrap:wrap;gap:10px}.profile-head .btn-primary,.profile-head .btn-secondary{min-height:44px;padding:0 20px;font-size:var(--step--1);box-shadow:none}.profile-stats{grid-area:stats;display:flex;flex-wrap:wrap;align-items:center;gap:4px 32px}.profile-stats-empty{display:none}.profile-count{display:inline-flex;align-items:baseline;gap:7px;min-height:44px;padding:8px 0;font-size:var(--step--1);color:var(--ink-muted);text-decoration:none;transition:color .16s var(--ease)}.profile-count:hover{color:var(--ink)}.profile-count-flat{cursor:default}.profile-count-flat:hover{color:var(--ink-muted)}.profile-count-value{font-size:var(--step-0);font-weight:600;color:var(--ink)}.profile-identity{grid-area:identity;min-width:0}.profile-realname{font-size:var(--step-0);font-weight:600;line-height:1.35;overflow-wrap:anywhere}.profile-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:4px;font-size:var(--step--1);color:var(--ink-muted)}.profile-meta:empty{display:none}.profile-chip{padding:3px 10px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-muted)}.profile-closed{margin-top:16px;padding:16px 18px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--ground-soft)}.profile-closed-line{font-size:var(--step-0);font-weight:500}.profile-closed-hint{margin-top:6px;font-size:var(--step--1);line-height:1.55;color:var(--ink-muted)}.profile-bio{margin-top:12px;font-size:var(--step-0);line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}.profile-note{margin-top:16px;padding:12px 14px;border:1px solid var(--rule);border-radius:var(--radius);background:var(--ground-soft);font-size:var(--step--1)}.profile-page .form-error{margin-top:16px}.profile-shelf{margin-top:36px;padding-top:26px;border-top:1px solid var(--rule)}.profile-sections{display:none}@media (max-width: 860px){.profile-sections{display:flex}}.profile-sections{flex-wrap:wrap;gap:10px;margin-top:22px;padding-top:22px;border-top:1px solid var(--rule)}.profile-sections .btn-secondary{min-height:44px}.settings-section{margin-top:34px;padding-top:26px;border-top:1px solid var(--rule)}.settings-title{font-size:var(--step-1);font-weight:600;margin-bottom:16px}.settings-section .auth-form{margin-top:0}.settings-avatar{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:14px}.settings-avatar-actions{display:flex;flex-wrap:wrap;gap:10px}.profile-page .field textarea{width:100%;padding:12px 14px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--step-0);line-height:1.55;resize:vertical;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.profile-page .field textarea:focus{outline:none;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.profile-page .field textarea[aria-invalid=true]{border-color:var(--accent)}.switch-row{display:flex;align-items:center;gap:16px;min-height:56px;padding:10px 0;cursor:pointer}.switch-text{display:grid;gap:3px;flex:1 1 auto;min-width:0}.switch-label{font-size:var(--step-0)}.switch-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.switch-track{position:relative;flex:none;width:50px;height:30px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--track);transition:background-color .16s var(--ease),border-color .16s var(--ease)}.switch-knob{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .18s var(--ease)}.switch-input:checked~.switch-track{background:var(--accent);border-color:var(--accent)}.switch-input:checked~.switch-track .switch-knob{transform:translate(20px)}.switch-input:focus-visible~.switch-track{outline:2px solid var(--accent);outline-offset:3px}.settings-danger{border-top-color:var(--accent-line)}.settings-danger .btn-secondary{margin-top:16px}.settings-confirm{display:grid;gap:16px;margin-top:16px;padding:20px;border:1px solid var(--accent-line);border-radius:var(--radius-lg);background:var(--accent-soft)}.settings-confirm .btn-secondary{margin-top:0}.danger-btn{border-color:var(--accent-line);color:var(--accent)}.danger-btn:hover{border-color:var(--accent);background:var(--accent-soft)}@media (max-width: 560px){.profile-actions .btn-primary,.profile-actions .btn-secondary,.settings-avatar-actions .btn-secondary,.settings-danger>.btn-secondary{width:100%}.profile-counts{gap:8px}.profile-count{flex:1 1 auto;justify-content:center}.profile-sections .btn-secondary{flex:1 1 auto}}@media (max-width: 760px){.profile-head{grid-template-columns:92px minmax(0,1fr);grid-template-areas:"handle   handle" "portrait stats" "identity identity" "actions  actions";column-gap:22px;row-gap:16px;align-items:center}.profile-topline{display:contents}.profile-handle{grid-area:handle;font-size:var(--step-1)}.profile-actions{grid-area:actions}.profile-head .avatar[data-size=xl]{width:92px;height:92px;font-size:28px}.profile-stats{justify-content:space-around;gap:4px 12px;text-align:center}.profile-count{flex-direction:column;align-items:center;gap:2px}.profile-identity{align-self:start}.profile-actions>*{flex:1 1 130px;justify-content:center}}.feed-page,.post-page,.create-post-page{padding:clamp(24px,5vw,56px) 0 96px}.feed-title{margin-top:10px;font-family:var(--font-display);font-size:var(--step-3);line-height:1.15;letter-spacing:-.01em}.feed-state{margin-top:26px;font-size:var(--step-0)}.feed-sentinel{height:1px}.feed-more{display:flex;justify-content:center;margin-top:22px}.feed-more .ghost-btn{min-height:44px}.post-page-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.post-page-actions .btn-secondary{min-height:44px}.post-list{display:flex;flex-direction:column;gap:16px;margin-top:26px}.post-card{padding:18px 20px 14px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.post-page .post-card{margin-top:18px}.post-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.post-author{display:flex;align-items:center;gap:12px;min-width:0;color:inherit}.post-author-text{display:grid;gap:2px;min-width:0}.post-name{font-size:var(--step-0);font-weight:600;line-height:1.3;overflow-wrap:anywhere;transition:color .16s var(--ease)}.post-author:hover .post-name{color:var(--accent)}.post-sub{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:var(--step--1);color:var(--ink-faint)}.post-nick{overflow-wrap:anywhere}.post-body{margin-top:12px;font-size:var(--step-0);line-height:1.62;white-space:pre-line;overflow-wrap:anywhere}.post-images{display:grid;gap:4px;margin-top:14px;border-radius:var(--radius);overflow:hidden}.post-image{display:block;width:100%;height:100%;object-fit:cover;background:var(--ground-soft)}.post-images[data-count="1"]{grid-template-columns:minmax(0,1fr)}.post-images[data-count="1"] .post-image{aspect-ratio:4 / 3;max-height:520px}.post-images[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.post-images[data-count="2"] .post-image{aspect-ratio:1 / 1}.post-images[data-count="3"]{grid-template-columns:repeat(2,minmax(0,1fr))}.post-images[data-count="3"] .post-image{aspect-ratio:1 / 1}.post-images[data-count="3"] .post-image:first-child{grid-column:1 / -1;aspect-ratio:16 / 9}.post-images[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}.post-images[data-count="4"] .post-image{aspect-ratio:1 / 1}.post-actions{display:flex;align-items:center;gap:4px;margin-top:8px}.post-action{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border-radius:var(--radius-pill);font-size:var(--step--1);color:var(--ink-muted);transition:color .16s var(--ease),background-color .16s var(--ease)}.post-action:hover{color:var(--ink);background:var(--ground-soft)}.post-action svg,.post-action .material-symbols-rounded{flex:none}.post-action-count{min-width:1ch}.post-like[data-liked=true],.post-like[data-liked=true]:hover{color:var(--accent)}.post-like .material-symbols-rounded{transition:transform .16s var(--ease)}.post-like:active .material-symbols-rounded{transform:scale(.92)}.post-remove{margin-left:auto}.post-remove:hover{color:var(--accent)}.post-confirm{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-top:10px;padding:12px 14px;border:1px solid var(--accent-line);border-radius:var(--radius);background:var(--accent-soft)}.post-confirm-line{font-size:var(--step--1);color:var(--ink)}.post-confirm-actions{display:flex;flex-wrap:wrap;gap:8px}.post-confirm-btn{min-height:44px;padding:0 16px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--surface);font-size:var(--step--1);transition:border-color .16s var(--ease),background-color .16s var(--ease),color .16s var(--ease)}.post-confirm-btn:hover{border-color:var(--accent-line);background:var(--surface-hover)}.post-confirm-btn:disabled{opacity:.6;cursor:default}.post-confirm-yes{color:var(--accent);border-color:var(--accent-line)}.post-confirm-yes:hover{border-color:var(--accent)}.post-error{margin-top:10px;font-size:var(--step--1);color:var(--accent)}.post-composer{margin-top:26px;padding:16px 18px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.post-composer-closed{padding:0}.post-composer-open{display:flex;align-items:center;width:100%;min-height:56px;padding:0 18px;border-radius:var(--radius-lg);color:var(--ink-faint);font-size:var(--step-0);text-align:left;transition:color .16s var(--ease),background-color .16s var(--ease)}.post-composer-open:hover{color:var(--ink-muted);background:var(--surface-hover)}.post-composer-area{width:100%;min-height:88px;padding:12px 14px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--step-0);line-height:1.55;resize:vertical;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.post-composer-area::placeholder{color:var(--ink-faint)}.post-composer-area:focus{outline:none;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.post-composer-area[aria-invalid=true]{border-color:var(--accent)}.post-composer-shots{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none}.post-composer-shot{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--ground-soft)}.post-composer-shot img{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover}.post-composer-drop{position:absolute;inset:auto 0 0;min-height:44px;width:100%;padding:0 8px;border-top:1px solid var(--rule);background:var(--surface);color:var(--ink-muted);font-size:var(--step--1);transition:color .16s var(--ease),background-color .16s var(--ease)}.post-composer-drop:hover{color:var(--accent);background:var(--surface-hover)}.post-composer-drop:disabled{opacity:.6;cursor:default}.post-composer-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px}.post-composer-pick{min-height:44px;padding:0 16px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--surface);font-size:var(--step--1);transition:border-color .16s var(--ease),background-color .16s var(--ease)}.post-composer-pick:hover:not(:disabled){border-color:var(--accent-line);background:var(--surface-hover)}.post-composer-pick:disabled{opacity:.55;cursor:default}.post-composer-count{margin-left:auto;font-size:var(--step--1);color:var(--ink-faint)}.post-composer-count[data-over=true]{color:var(--accent)}.post-composer-send{min-height:44px;padding:0 22px;font-size:var(--step--1);box-shadow:none}.post-composer-send:disabled{opacity:.5;cursor:default;filter:none}.post-composer-hint{margin-top:10px;font-size:var(--step--1);color:var(--ink-faint);line-height:1.5}.post-composer .field-error{margin-top:8px}.post-composer .form-error{margin-top:12px}.comments{margin-top:32px;padding-top:24px;border-top:1px solid var(--rule)}.comments-title{font-size:var(--step-1);font-weight:600}.comment-list{margin:18px 0 0;padding:0;list-style:none;border-top:1px solid var(--rule)}.comment{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 12px;padding:14px 0;border-bottom:1px solid var(--rule)}.comment-author{display:inline-flex;align-items:center;gap:10px;min-width:0;color:inherit}.comment-name{font-size:var(--step--1);font-weight:600;overflow-wrap:anywhere;transition:color .16s var(--ease)}.comment-author:hover .comment-name{color:var(--accent)}.comment-time{font-size:var(--step--1);color:var(--ink-faint);white-space:nowrap}.comment-body{grid-column:1 / -1;font-size:var(--step-0);line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}.comment-drop{grid-column:1 / -1;justify-self:start;min-height:44px;padding:0 2px;font-size:var(--step--1);color:var(--ink-faint);transition:color .16s var(--ease)}.comment-drop:hover{color:var(--accent)}.comment-drop:disabled{opacity:.6;cursor:default}.comment-form{margin-top:22px}.comment-form .post-composer-area{min-height:68px}.comment-form-foot{display:flex;justify-content:flex-end;margin-top:12px}.comment-send{min-height:44px;padding:0 22px;font-size:var(--step--1);box-shadow:none}.comment-send:disabled{opacity:.5;cursor:default;filter:none}.comment-form .field-error{margin-top:8px}.comment-form .form-error{margin-top:12px}.profile-posts-title{font-size:var(--step-1);font-weight:600}.profile-posts .post-list{margin-top:18px}.profile-posts .feed-state{margin-top:0}@media (max-width: 560px){.post-card,.post-composer{margin-inline:-18px;border-radius:0;border-left:0;border-right:0}.post-composer-closed{margin-inline:-18px}.post-list{gap:12px}.post-composer-foot{gap:10px}.post-composer-send{flex:1 1 100%;justify-content:center}.post-composer-count{margin-left:auto}.comment-send{width:100%;justify-content:center}.post-page-actions .btn-secondary{width:100%}}.bottom-nav,.bottom-nav-spacer{display:none}@media (max-width: 860px){.bottom-nav-spacer{display:block;height:calc(78px + env(safe-area-inset-bottom,0px))}.bottom-nav{display:block;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:0 14px calc(14px + env(safe-area-inset-bottom,0px));pointer-events:none}.bottom-nav-bar{position:relative;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;height:64px;padding:0 6px;border:1px solid var(--glass-edge);border-radius:26px;background:var(--glass-tint);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:inset 0 1px 0 var(--glass-sheen),var(--glass-shadow);pointer-events:auto}.bottom-nav-bar:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:linear-gradient(to bottom,var(--glass-gloss) 0%,color-mix(in srgb,var(--glass-gloss) 30%,transparent) 45%,transparent 82%)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.bottom-nav-bar{background:var(--surface);border-color:var(--rule);box-shadow:var(--shadow-md)}.bottom-nav-bar:before{display:none}}.bottom-nav-item{display:grid;place-items:center;height:100%;min-height:52px;border-radius:20px;color:color-mix(in srgb,var(--nav-ink) 72%,transparent);text-decoration:none;transition:color .16s var(--ease);-webkit-tap-highlight-color:transparent}.bottom-nav-item:hover{color:var(--nav-ink)}.bottom-nav-item[aria-current=page]{color:var(--nav-ink-strong)}.bottom-nav-item:focus-visible{outline:none;color:var(--nav-ink-strong);box-shadow:0 0 0 2px color-mix(in srgb,var(--nav-ink) 22%,transparent)}.bottom-nav-icon{position:relative;display:grid;place-items:center;width:26px;height:26px}.bottom-nav-icon .material-symbols-rounded{display:block}.bottom-nav-plus{justify-self:center;display:grid;place-items:center;width:48px;height:44px;border-radius:16px;background:var(--nav-ink);color:#fff;text-decoration:none;box-shadow:var(--shadow-lift),0 8px 18px -10px color-mix(in srgb,var(--nav-ink) 60%,transparent);transition:transform .16s var(--ease),filter .16s var(--ease);-webkit-tap-highlight-color:transparent}.bottom-nav-plus:hover{filter:brightness(1.06)}.bottom-nav-plus:active{transform:translateY(1px)}.bottom-nav-plus:focus-visible{outline:none;box-shadow:var(--shadow-lift),0 8px 18px -10px color-mix(in srgb,var(--nav-ink) 60%,transparent),0 0 0 3px color-mix(in srgb,var(--nav-ink) 25%,transparent)}.bottom-nav-plus .material-symbols-rounded{display:block}.bottom-nav-avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;overflow:hidden;background:color-mix(in srgb,var(--nav-ink) 14%,transparent);color:var(--nav-ink);font-size:11px;font-weight:600;line-height:1;box-shadow:0 0 0 2px transparent;transition:box-shadow .16s var(--ease)}.bottom-nav-avatar img{width:100%;height:100%;object-fit:cover}.bottom-nav-me[aria-current=page] .bottom-nav-avatar{box-shadow:0 0 0 2px var(--nav-ink-strong)}.bottom-nav-badge{position:absolute;top:-5px;right:-9px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border:2px solid var(--glass-ring);border-radius:var(--radius-pill);background:var(--nav-ink);color:#fff;font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1}}.chat-shell{padding-block:clamp(20px,4vw,40px) clamp(28px,5vw,56px)}.chat-panes{--chat-height: clamp(420px, 66vh, 720px);display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:16px;align-items:start}.chat-pane{display:flex;flex-direction:column;height:var(--chat-height);min-width:0;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.photo-bg .chat-pane,.custom-bg .chat-pane{background:var(--surface-veil);backdrop-filter:blur(7px) saturate(125%);-webkit-backdrop-filter:blur(7px) saturate(125%)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.photo-bg .chat-pane,.custom-bg .chat-pane{background:var(--surface)}}.chat-thread-slot{min-width:0}.pane-head{display:flex;align-items:center;gap:10px;min-height:56px;padding:10px 16px;border-bottom:1px solid var(--rule)}.pane-title{font-family:var(--font-display);font-size:var(--step-1);font-weight:500;letter-spacing:-.01em}.pane-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.pane-note{display:grid;gap:12px;justify-items:start;padding:20px 16px;font-size:var(--step-0);line-height:1.6}.pane-note .ghost-btn{display:inline-flex;align-items:center;min-height:44px}.chat-blank{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px 24px;text-align:center;line-height:1.6}.chat-blank p{max-width:40ch}.chat-blank .ghost-btn{display:inline-flex;align-items:center;min-height:44px}.conv-items{list-style:none;margin:0;padding:6px;display:grid;gap:2px}.conv{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-height:60px;padding:8px 10px;border-radius:var(--radius);transition:background-color .16s var(--ease)}.conv:hover{background:var(--surface-hover)}.conv[data-active=true]{background:var(--accent-soft)}.conv-avatar{position:relative;display:grid;place-items:center}.conv-dot{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--surface)}.conv[data-active=true] .conv-dot{box-shadow:0 0 0 2px var(--accent-soft)}.conv-text{display:grid;gap:2px;min-width:0}.conv-top,.conv-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px}.conv-name{font-size:var(--step-0);font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-time{font-size:.75rem;color:var(--ink-faint);white-space:nowrap}.conv-preview{font-size:var(--step--1);color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-preview-draft{color:var(--accent)}.conv-unread{display:grid;place-items:center;min-width:22px;height:22px;padding:0 7px;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-size:.72rem;font-weight:600;line-height:1}.thread-head{gap:6px}.thread-back{display:none;place-items:center;width:44px;height:44px;margin-left:-8px;border-radius:var(--radius);color:var(--ink-muted);flex:none;transition:color .16s var(--ease),background-color .16s var(--ease)}.thread-back:hover{color:var(--ink);background:var(--ground-soft)}.thread-back .material-symbols-rounded{display:block}.thread-who{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:44px;padding:0 8px;margin-left:-8px;border-radius:var(--radius);transition:background-color .16s var(--ease)}.thread-who:hover{background:var(--ground-soft)}.thread-who-text{display:grid;min-width:0}.thread-name{font-size:var(--step-0);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-presence{font-size:.75rem;line-height:1.2;color:var(--accent)}.thread-link-state{padding:8px 16px;border-bottom:1px solid var(--rule);background:var(--ground-soft);font-size:var(--step--1);line-height:1.45;color:var(--ink-muted)}.thread-scroll{display:flex;flex-direction:column;gap:6px;padding:14px 16px 18px}.thread-older{display:flex;justify-content:center;padding:4px 0 10px}.thread-older .ghost-btn{display:inline-flex;align-items:center;min-height:44px}.thread-older .ghost-btn[disabled]{opacity:.6;cursor:default}.thread-edge,.thread-day{align-self:center;padding:8px 0 4px;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.thread-empty{margin:auto;max-width:34ch;text-align:center;line-height:1.6}.msg{display:flex;flex-direction:column;max-width:min(560px,84%)}.msg[data-own=false]{align-self:flex-start;align-items:flex-start}.msg[data-own=true]{align-self:flex-end;align-items:flex-end}.msg-bubble{padding:8px 14px 6px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--ground-soft)}.msg[data-own=true] .msg-bubble{border-color:var(--accent-line);background:var(--accent-soft)}.msg[data-state=pending] .msg-bubble{opacity:.72}.msg[data-state=failed] .msg-bubble{border-color:var(--accent);background:transparent}.msg-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--step-0);line-height:1.5;color:var(--ink)}.msg-meta{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:2px;font-size:.72rem;color:var(--ink-faint)}.msg-mark{letter-spacing:-.06em}.msg[data-state=sent] .msg-mark{color:var(--accent)}.msg[data-state=failed] .msg-mark{color:var(--accent);font-weight:700}.msg-failed{margin-top:4px;font-size:var(--step--1);color:var(--ink-muted)}.msg-failed .text-btn{padding:4px 0;font-size:var(--step--1);color:var(--accent)}.msg-images{display:grid;gap:4px;margin-bottom:6px}.msg-images[data-count="1"]{grid-template-columns:minmax(0,1fr)}.msg-images:not([data-count="1"]){grid-template-columns:repeat(2,minmax(0,1fr))}.msg-docs{display:grid;gap:4px;margin-bottom:6px}.msg-bubble[data-bare=true]{padding:0;border-color:transparent;background:none}.msg-bubble[data-bare=true] .msg-images,.msg-bubble[data-bare=true] .msg-docs{margin-bottom:2px}.att-image{display:block;width:100%;padding:0;overflow:hidden;border:1px solid var(--rule);border-radius:var(--radius);background:var(--ground-soft);transition:border-color .16s var(--ease),opacity .16s var(--ease)}.att-image:hover{border-color:var(--accent-line)}.att-image[disabled]{cursor:default;opacity:.72}.att-image img{display:block;width:100%;max-height:240px;object-fit:cover}.msg-images:not([data-count="1"]) .att-image img{aspect-ratio:1 / 1;max-height:none}.att-doc{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:52px;padding:8px 12px;border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);transition:border-color .16s var(--ease),background-color .16s var(--ease)}.att-doc:hover{border-color:var(--accent-line);background:var(--surface-hover)}.att-doc-local{cursor:default;opacity:.72}.att-doc-local:hover{border-color:var(--rule);background:var(--surface)}.att-doc-icon{display:grid;place-items:center;width:26px;height:26px;color:var(--accent);flex:none}.att-doc-icon .material-symbols-rounded{display:block}.att-doc-text{display:grid;gap:1px;min-width:0}.att-doc-name{display:flex;align-items:baseline;min-width:0;font-size:var(--step--1);font-weight:500;color:var(--ink)}.att-doc-stem{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.att-doc-ext{flex:none}.att-doc-meta{font-size:.72rem;color:var(--ink-faint)}.att-viewer{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:24px;background:#17120fdb;animation:att-viewer-in .18s var(--ease) both}@keyframes att-viewer-in{0%{opacity:0}to{opacity:1}}.att-viewer-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius)}.att-viewer-close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:#f3eae3;background:#17120f8c;transition:background-color .16s var(--ease)}.att-viewer-close:hover{background:#17120fcc}.att-viewer-close .material-symbols-rounded{display:block}.composer{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:10px;padding:10px 12px;border-top:1px solid var(--rule);background:var(--surface)}.composer-files,.composer-error,.composer-status{grid-column:1 / -1}.composer-files{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.composer-file{position:relative;display:flex;align-items:center;min-height:56px;border:1px solid var(--rule);border-radius:var(--radius);background:var(--ground-soft);overflow:hidden}.composer-file[data-kind=image]{width:56px}.composer-file[data-kind=document]{max-width:220px;padding:8px 34px 8px 12px}.composer-file-image{display:block;width:56px;height:56px;object-fit:cover}.composer-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--step--1);color:var(--ink-muted)}.composer-file-drop{position:absolute;top:2px;right:2px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--surface);color:var(--ink-muted);box-shadow:var(--shadow-sm);transition:color .16s var(--ease),background-color .16s var(--ease)}.composer-file-drop:hover{color:var(--accent);background:var(--surface-hover)}.composer-file-drop[disabled]{opacity:.5;cursor:default}.composer-file-drop .material-symbols-rounded{display:block}.composer-error{font-size:var(--step--1);line-height:1.45;color:var(--accent)}.composer-status{font-size:var(--step--1);line-height:1.45;color:var(--ink-muted)}.composer-attach{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--ink-muted);transition:color .16s var(--ease),background-color .16s var(--ease),opacity .16s var(--ease)}.composer-attach:hover{color:var(--ink);background:var(--ground-soft)}.composer-attach[disabled]{opacity:.45;cursor:default}.composer-attach .material-symbols-rounded{display:block}.composer-input{width:100%;min-height:44px;max-height:150px;padding:11px 16px;border:1px solid var(--rule-strong);border-radius:var(--radius-lg);background:var(--ground);color:var(--ink);font:inherit;font-size:var(--step-0);line-height:1.45;resize:none;overflow-y:auto;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.composer-input::placeholder{color:var(--ink-faint)}.composer-input:focus{outline:none;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.composer-input[disabled]{opacity:.6}.composer-send{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--accent);color:var(--accent-ink);transition:filter .16s var(--ease),opacity .16s var(--ease)}.composer-send:hover{filter:brightness(1.06)}.composer-send[disabled]{opacity:.45;cursor:default;filter:none}.composer-send .material-symbols-rounded{display:block}.composer-hint{padding:0 16px 10px;font-size:.72rem;line-height:1.4;color:var(--ink-faint)}@media (max-width: 860px){.shell.chat-shell{max-width:none;padding-inline:0;padding-block:0}.chat-panes{grid-template-columns:minmax(0,1fr);gap:0;--chat-height: max(420px, calc(100vh - 147px - env(safe-area-inset-bottom, 0px)) );--chat-height: max(420px, calc(100dvh - 147px - env(safe-area-inset-bottom, 0px)) )}.chat-pane{border:0;border-radius:0;box-shadow:none}.chat-panes[data-pane=thread] .chat-list-pane,.chat-panes[data-pane=list] .chat-thread-slot{display:none}.thread-back{display:grid}.msg{max-width:88%}.composer-hint{display:none}}@media (max-width: 560px){.chat-panes{--chat-height: max(420px, calc(100vh - 135px - env(safe-area-inset-bottom, 0px)) );--chat-height: max(420px, calc(100dvh - 135px - env(safe-area-inset-bottom, 0px)) )}.conv-items{padding:4px}.thread-scroll{padding:12px 12px 16px}}.result-card{display:flex;flex-direction:column;gap:10px;padding:18px 20px;margin-top:22px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.result-card-title{margin:0;font-family:var(--font-display);font-size:var(--step-1);font-weight:600;color:var(--ink)}.result-card-score{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.result-card-value{font-family:var(--font-display);font-size:var(--step-3);line-height:1;color:var(--accent)}.result-card-level{font-size:var(--step-0);color:var(--ink-muted)}.result-card-date{margin:0;font-size:var(--step--1)}.result-card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.result-card-actions .btn-primary,.result-card-actions .btn-secondary,.result-card .btn-primary{align-self:flex-start;min-height:44px;display:inline-flex;align-items:center}.compare-page{padding:clamp(28px,5vw,56px) 0 96px}.compare-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0 8px}.compare-person{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:16px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);min-width:0}.compare-person-name{font-weight:600;color:var(--ink);text-decoration:none;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.compare-person-name:hover{color:var(--accent)}.compare-person-level{font-family:var(--font-display);font-size:var(--step-2);line-height:1.1;color:var(--accent)}.compare-note{margin-top:24px;font-size:var(--step--1)}@media (max-width: 560px){.compare-people{grid-template-columns:1fr}}.search-page{padding:clamp(32px,5vw,64px) 0 96px}.search-page h1{margin-top:10px;font-family:var(--font-display);font-size:var(--step-3);line-height:1.15;letter-spacing:-.01em}.search-lead{margin-top:10px;max-width:46ch;color:var(--ink-muted);font-size:var(--step-0);line-height:1.6}.search-field{margin-top:26px}.search-input{width:100%;min-height:52px;padding:12px 20px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--step-0);transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.search-input::placeholder{color:var(--ink-faint)}.search-input:focus{outline:none;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.search-hint{margin-top:10px;font-size:var(--step--1);color:var(--ink-faint);line-height:1.5}.search-status{min-height:22px;margin-top:18px;font-size:var(--step--1)}.search-placeholder{margin-top:28px;font-size:var(--step-0)}.state-note{margin-top:20px;display:grid;gap:12px;justify-items:start;padding:18px 20px;border:1px solid var(--accent-line);border-radius:var(--radius-lg);background:var(--accent-soft);color:var(--ink);font-size:var(--step-0);line-height:1.6}.search-page .ghost-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px}.follow-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.follow-tab{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-muted);font-size:var(--step--1);font-weight:500;transition:border-color .16s var(--ease),background-color .16s var(--ease),color .16s var(--ease)}.follow-tab:hover{color:var(--ink);background:var(--surface-hover)}.follow-tab[data-active=true]{border-color:var(--accent-line);background:var(--accent-soft);color:var(--ink)}.user-list{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}.user-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);transition:border-color .16s var(--ease),background-color .16s var(--ease)}.user-card:hover{border-color:var(--rule-strong);background:var(--surface-hover)}.user-card-main{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-height:44px;min-width:0;border-radius:var(--radius)}.user-avatar{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:var(--step--1);font-weight:600;overflow:hidden}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-card-text{display:grid;gap:2px;min-width:0}.user-card-name{font-size:var(--step-0);font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-card-nick{font-size:var(--step--1);line-height:1.4;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-card-meta{font-size:var(--step--1);color:var(--ink-faint)}.user-card-bio{font-size:var(--step--1);line-height:1.5;color:var(--ink-muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.user-card-action{justify-self:end}.list-more{display:flex;justify-content:center;margin-top:20px}.list-more .ghost-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:200px}.list-more .ghost-btn[disabled]{opacity:.6;cursor:default}.follow{display:inline-grid;gap:6px;justify-items:stretch}.follow-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border:1px solid var(--accent);border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-size:var(--step--1);font-weight:500;transition:border-color .16s var(--ease),background-color .16s var(--ease),color .16s var(--ease)}.follow-btn:hover{filter:brightness(1.06)}.follow-btn[data-following=true]{border-color:var(--rule-strong);background:var(--surface);color:var(--ink-muted)}.follow-btn[data-following=true]:hover{filter:none;border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.follow-btn[disabled]{opacity:.55;cursor:default;filter:none}.follow-labels{display:grid;align-items:center;justify-items:center}.follow-label{grid-area:1 / 1;white-space:nowrap;transition:opacity .14s var(--ease)}.follow-label-hover{opacity:0}@media (hover: hover){.follow-btn[data-following=true]:hover .follow-label-idle{opacity:0}.follow-btn[data-following=true]:hover .follow-label-hover{opacity:1}}.follow-btn[data-following=true]:focus-visible .follow-label-idle{opacity:0}.follow-btn[data-following=true]:focus-visible .follow-label-hover{opacity:1}.follow-error{font-size:var(--step--1);line-height:1.45;color:var(--accent);max-width:22ch}@media (max-width: 480px){.user-card{grid-template-columns:minmax(0,1fr);gap:10px}.user-card-action{justify-self:stretch}.follow{display:grid;justify-items:stretch}.follow-btn{width:100%}.follow-error{max-width:none}.list-more .ghost-btn{width:100%;min-width:0}}.notifications-page{padding:clamp(24px,5vw,56px) 0 96px}.notifications-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}.notifications-page h1{margin-top:10px;font-family:var(--font-display);font-weight:500;font-size:var(--step-3);line-height:1.15;letter-spacing:-.01em}.notifications-read-all{display:inline-flex;align-items:center;justify-content:center;min-height:44px}.notifications-state{padding:28px 0;font-size:var(--step-0)}.notifications-note{margin-top:22px;display:grid;gap:12px;justify-items:start;padding:18px 20px;border:1px solid var(--accent-line);border-radius:var(--radius-lg);background:var(--accent-soft);color:var(--ink);font-size:var(--step-0);line-height:1.6}.notifications-note .ghost-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px}.notifications-error{margin-top:14px;color:var(--accent);font-size:var(--step--1);line-height:1.5}.notification-list{list-style:none;margin:22px 0 0;padding:0}.notification{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:56px;padding:12px 14px;border-left:3px solid transparent;border-radius:var(--radius);transition:background-color .18s var(--ease),border-color .18s var(--ease)}.notification+.notification{border-top:1px solid var(--rule);border-top-left-radius:0;border-top-right-radius:0}.notification[data-unread=true]{border-left-color:var(--accent);background:var(--surface)}.notification:hover{background:var(--surface-hover)}.notification:focus-within{outline:2px solid var(--accent);outline-offset:-2px}.notification-text{min-width:0;display:grid;gap:2px}.notification-line{font-size:var(--step-0);line-height:1.5;color:var(--ink);overflow-wrap:anywhere}.notification-actor{position:relative;z-index:1;color:var(--ink);font-weight:500;text-decoration:none}.notification-actor:hover{text-decoration:underline}.notification-when{font-size:var(--step--1);color:var(--ink-faint)}.notification-thumb{width:44px;height:44px;border-radius:var(--radius);border:1px solid var(--rule);object-fit:cover;background:var(--ground-soft)}.notification-excerpt{max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-faint);font-size:var(--step--1)}.notification-hit{position:absolute;inset:0;border-radius:inherit}.notifications-sentinel{height:1px}.notifications-more{display:flex;justify-content:center;margin-top:18px}.notifications-more .ghost-btn{min-height:44px}@media (max-width: 560px){.notification-excerpt{display:none}}@media (max-width: 480px){.notification{padding:12px 10px;gap:10px}.notifications-read-all,.notifications-more .ghost-btn{width:100%}}.requests-page{padding:clamp(24px,5vw,56px) 0 96px}.requests-page h1{margin-top:10px;font-family:var(--font-display);font-weight:500;font-size:var(--step-3);line-height:1.15;letter-spacing:-.01em}.requests-lead{margin-top:10px;max-width:48ch;color:var(--ink-muted);font-size:var(--step-0);line-height:1.6}.requests-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.requests-tab{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-muted);font-size:var(--step--1);font-weight:500;transition:border-color .16s var(--ease),background-color .16s var(--ease),color .16s var(--ease)}.requests-tab:hover{color:var(--ink);background:var(--surface-hover)}.requests-tab[data-active=true]{border-color:var(--accent-line);background:var(--accent-soft);color:var(--ink)}.requests-tab-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-size:.75rem;font-weight:600}.requests-tab[data-active=false] .requests-tab-count{background:var(--track);color:var(--ink-muted)}.requests-live:not(:empty){margin-top:18px;padding:12px 16px;border:1px solid var(--accent-line);border-radius:var(--radius);background:var(--accent-soft);color:var(--ink);font-size:var(--step--1);line-height:1.5}.requests-panel{margin-top:22px}.requests-state{padding:24px 0}.requests-inline-error{margin-bottom:16px;font-size:var(--step--1);color:var(--accent);line-height:1.5}.requests-note{display:grid;gap:12px;justify-items:start;padding:18px 20px;border:1px solid var(--accent-line);border-radius:var(--radius-lg);background:var(--accent-soft);color:var(--ink);font-size:var(--step-0);line-height:1.6}.requests-note .ghost-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px}.requests-empty{display:grid;gap:16px;justify-items:start;padding:26px 0 8px;font-size:var(--step-0);line-height:1.6}.requests-hint{padding:12px 16px;border:1px solid var(--rule);border-left:3px solid var(--accent-line);border-radius:var(--radius);background:var(--ground-soft);color:var(--ink-muted);font-size:var(--step--1);line-height:1.55}.requests-archive{margin-top:34px}.requests-section-title{font-size:var(--step--1);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.request-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}.request-card{display:grid;gap:12px;padding:14px 16px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);transition:border-color .16s var(--ease),background-color .16s var(--ease)}.request-card:hover{border-color:var(--rule-strong);background:var(--surface-hover)}.request-card[data-done=true]{background:transparent;border-style:dashed;color:var(--ink-muted)}.request-card[data-done=true]:hover{background:transparent}.request-card[data-leaving=true]{animation:request-out .24s var(--ease) forwards;pointer-events:none}@keyframes request-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-8px)}}.request-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.request-person{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-height:44px;min-width:0;border-radius:var(--radius)}.request-person-text{display:grid;gap:2px;min-width:0}.request-name{font-size:var(--step-0);font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-when{font-size:var(--step--1);color:var(--ink-faint)}.request-type{justify-self:end;padding:4px 12px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-muted);font-size:var(--step--1);white-space:nowrap}.request-type[data-type=relationship]{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.request-message{padding:10px 14px;border-radius:var(--radius);background:var(--ground-soft);color:var(--ink);font-size:var(--step--1);line-height:1.55;overflow-wrap:anywhere}.request-card[data-done=true] .request-message{background:transparent;padding:0;color:var(--ink-muted)}.request-actions{display:flex;flex-wrap:wrap;gap:8px}.request-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font-size:var(--step--1);font-weight:500;transition:border-color .16s var(--ease),background-color .16s var(--ease),color .16s var(--ease),filter .16s var(--ease)}.request-btn[data-kind=accept]{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.request-btn[data-kind=accept]:hover{filter:brightness(1.06)}.request-btn[data-kind=decline]:hover,.request-btn[data-kind=cancel]:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.request-btn[disabled]{opacity:.55;cursor:default;filter:none}.request-error{font-size:var(--step--1);line-height:1.45;color:var(--accent)}.request-dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto}.request-dialog-head{display:grid;gap:4px}.request-dialog-to{color:var(--ink-muted);font-size:var(--step-0);line-height:1.5;overflow-wrap:anywhere}.request-dialog-form{display:grid;gap:18px}.request-dialog-form h2{font-family:var(--font-display);font-weight:500;font-size:var(--step-2);line-height:1.2;overflow-wrap:anywhere}.request-types{display:grid;gap:8px;margin:0;padding:0;border:0}.request-legend{padding:0;margin-bottom:8px;font-size:var(--step--1);font-weight:500;color:var(--ink-muted)}.request-type-option{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;min-height:56px;padding:12px 14px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer;transition:border-color .16s var(--ease),background-color .16s var(--ease)}.request-type-option[data-active=true]{border-color:var(--accent-line);background:var(--accent-soft)}.request-type-option input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--accent)}.request-type-option:focus-within{outline:2px solid var(--accent);outline-offset:2px}.request-type-text{display:grid;gap:3px;min-width:0}.request-type-name{font-size:var(--step-0);font-weight:500;color:var(--ink)}.request-type-note{font-size:var(--step--1);line-height:1.5;color:var(--ink-muted)}.request-hint{padding:12px 16px;border:1px solid var(--rule);border-left:3px solid var(--accent-line);border-radius:var(--radius);background:var(--ground-soft);color:var(--ink-muted);font-size:var(--step--1);line-height:1.55}.request-dialog .field textarea{width:100%;padding:12px 14px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--step-0);line-height:1.55;resize:vertical;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.request-dialog .field textarea:focus{outline:none;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.request-dialog .field textarea[aria-invalid=true]{border-color:var(--accent)}.request-dialog-actions{display:flex;flex-wrap:wrap;gap:12px}.request-dialog-actions .btn-primary,.request-dialog-actions .btn-secondary{flex:1 1 160px;justify-content:center}.request-dialog-actions .btn-primary[disabled],.request-dialog-actions .btn-secondary[disabled]{opacity:.6;cursor:default}@media (max-width: 480px){.request-dialog .modal-inner{padding:22px 20px 18px}.request-dialog-form{gap:14px}.request-dialog .field textarea{height:76px;line-height:1.5}.request-head{grid-template-columns:minmax(0,1fr);align-items:start;gap:10px}.request-type{justify-self:start}.request-actions{display:grid;grid-template-columns:minmax(0,1fr)}.request-btn,.requests-empty .btn-secondary{width:100%}.request-dialog-actions .btn-primary,.request-dialog-actions .btn-secondary{flex:1 1 100%}}.avatar-editor{width:min(420px,calc(100vw - 32px))}.avatar-editor-inner{display:grid;gap:18px;padding:26px 26px 22px}.avatar-editor-title{font-family:var(--font-display);font-weight:500;font-size:var(--step-2)}.avatar-editor-stage{position:relative;width:min(280px,100%);aspect-ratio:1 / 1;margin-inline:auto;overflow:hidden;border-radius:50%;background:var(--ground-soft);box-shadow:inset 0 0 0 1px var(--rule-strong);touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;transition:box-shadow .18s var(--ease)}.avatar-editor-stage:active{cursor:grabbing}.avatar-editor-stage[data-ready=true]{box-shadow:inset 0 0 0 1px var(--accent-line)}.avatar-editor-canvas{display:block;width:100%;height:100%;pointer-events:none}.avatar-editor-zoom{display:flex;align-items:center;gap:14px}.avatar-editor-zoom-label{flex:none;font-size:var(--step--1);font-weight:500;color:var(--ink-muted)}.avatar-editor-range{flex:1 1 auto;min-width:0;height:44px;margin:0;padding:0;background:transparent;color:var(--accent);accent-color:var(--accent);cursor:pointer;-webkit-appearance:none;appearance:none}.avatar-editor-range:disabled{opacity:.5;cursor:default}.avatar-editor-range::-webkit-slider-runnable-track{height:6px;border-radius:var(--radius-pill);background:var(--track)}.avatar-editor-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;margin-top:-8px;border:2px solid var(--surface);border-radius:50%;background:var(--accent);box-shadow:var(--shadow-sm);transition:transform .15s var(--ease)}.avatar-editor-range:active::-webkit-slider-thumb{transform:scale(1.08)}.avatar-editor-range::-moz-range-track{height:6px;border-radius:var(--radius-pill);background:var(--track)}.avatar-editor-range::-moz-range-thumb{width:20px;height:20px;border:2px solid var(--surface);border-radius:50%;background:var(--accent);box-shadow:var(--shadow-sm);transition:transform .15s var(--ease)}.avatar-editor-range:active::-moz-range-thumb{transform:scale(1.08)}.avatar-editor-hint{margin:-6px 0 0;font-size:var(--step--1);line-height:1.5;color:var(--ink-faint)}.avatar-editor-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;padding-top:4px;border-top:1px solid var(--rule);margin-top:2px}.avatar-editor-actions>*{min-height:44px;margin-top:14px}.avatar-editor-actions .btn-primary{min-height:44px;padding:0 24px}.avatar-editor-actions .btn-primary[disabled]{opacity:.6;cursor:default}@media (max-width: 560px){.avatar-editor-inner{padding:22px 20px 20px}.avatar-editor-actions{flex-direction:column-reverse}.avatar-editor-actions>*{width:100%;justify-content:center}}.settings-list{list-style:none;margin:26px 0 0;padding:0;border-top:1px solid var(--rule)}.settings-list-info{margin-top:34px}.settings-item{border-bottom:1px solid var(--rule)}.settings-row{display:grid;grid-template-columns:26px minmax(0,1fr) 20px;align-items:center;column-gap:14px;width:100%;min-height:56px;padding:13px 4px;border:none;border-radius:var(--radius);background:none;font:inherit;color:var(--ink);text-align:left;cursor:pointer;transition:background-color .16s var(--ease)}.settings-row:hover{background:var(--ground-soft)}.settings-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.settings-row-icon{color:var(--ink-faint);justify-self:center}.settings-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}.settings-row-title{font-size:var(--step-0);font-weight:400;line-height:1.35}.settings-row-desc{font-size:var(--step--1);line-height:1.45;color:var(--ink-muted)}.settings-row-chevron{color:var(--ink-faint);justify-self:end}.settings-danger-row{margin-top:40px}.settings-row-danger{grid-template-columns:26px minmax(0,1fr);color:var(--accent)}.settings-row-danger .settings-row-icon{color:var(--accent)}.settings-row-danger:hover{background:var(--accent-soft)}.settings-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-left:-8px;padding:8px;border:none;border-radius:var(--radius);background:none;font:inherit;font-size:var(--step--1);color:var(--ink-muted);cursor:pointer;transition:color .16s var(--ease),background-color .16s var(--ease)}.settings-back:hover{background:var(--ground-soft);color:var(--ink)}.settings-back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.settings-heading{margin-top:6px;font-size:var(--step-2);line-height:1.25}.settings-body{min-width:0}.settings-body>.settings-section:first-child,.settings-body>*:first-child>.settings-section:first-child{margin-top:26px;padding-top:0;border-top:none}.settings-appearance,.settings-appearance .popover-label{display:block}.settings-note{margin-top:18px;padding:12px 14px;border:1px solid var(--rule);border-radius:var(--radius);background:var(--ground-soft);font-size:var(--step--1);line-height:1.55;color:var(--ink-muted)}.settings-note-strong{border-color:var(--accent-line);background:var(--accent-soft);color:var(--ink)}.settings-subtitle{margin-top:22px;margin-bottom:8px;font-size:var(--step-0);font-weight:600}.settings-about-name{font-size:var(--step-1);font-weight:600}.settings-about-text{margin-top:14px;line-height:1.6;color:var(--ink-muted)}.settings-list-plain{margin:0;padding-left:20px;line-height:1.6;color:var(--ink-muted)}.settings-list-plain li{margin-top:6px}.settings-faq{margin:0}.settings-faq-item{margin-top:20px;padding-top:20px;border-top:1px solid var(--rule)}.settings-faq-item:first-child{margin-top:8px;padding-top:0;border-top:none}.settings-faq-q{font-weight:600}.settings-faq-a{margin:6px 0 0;line-height:1.6;color:var(--ink-muted)}.settings-time-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:16px}.settings-time-row .field{flex:0 1 160px}.settings-avatar-btn{display:inline-flex;align-items:center;gap:8px}.settings-avatar-btn .settings-avatar-btn-icon{display:none}@media (max-width: 560px){.settings-page .settings-avatar-actions .settings-avatar-btn{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border-radius:var(--radius-pill);justify-content:center}.settings-page .settings-avatar-actions .settings-avatar-btn .settings-avatar-btn-icon{display:inline-block}.settings-page .settings-avatar-actions .settings-avatar-btn-text{display:none}.settings-row{column-gap:12px;padding-inline:0}.settings-danger-row{margin-top:32px}}.auth-page{padding:clamp(32px,5vw,64px) 0 96px;max-width:460px}.auth-page h1{margin-top:10px;font-family:var(--font-display);font-size:var(--step-3);line-height:1.15;letter-spacing:-.01em}.auth-lead{margin-top:10px;color:var(--ink-muted);font-size:var(--step-0)}.auth-form{margin-top:28px;display:grid;gap:18px}.field{display:grid;gap:7px}.field>label{font-size:var(--step--1);font-weight:500;color:var(--ink-muted)}.field input,.field select{box-sizing:border-box;width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--step-0);line-height:1.4;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.field select{appearance:none;-webkit-appearance:none;padding-right:38px;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%238A7568' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px 12px}[data-theme=dark] .field select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%2383888E' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E")}.field input[type=date]{-webkit-appearance:none;appearance:none;display:block}.field input[type=date]::-webkit-date-and-time-value{text-align:left;margin:0}.field input[type=date]::-webkit-datetime-edit{padding:0}.field input:focus,.field select:focus{outline:none;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:var(--accent)}.field-hint{font-size:var(--step--1);color:var(--ink-faint)}.field-error{font-size:var(--step--1);color:var(--accent)}.form-error{padding:12px 14px;border:1px solid var(--accent-line);border-radius:var(--radius);background:var(--accent-soft);color:var(--ink);font-size:var(--step-0)}.auth-form .btn-primary{width:100%;justify-content:center}.auth-form .btn-primary[disabled]{opacity:.6;cursor:default}.auth-alt{margin-top:22px;padding-top:18px;border-top:1px solid var(--rule);font-size:var(--step-0);color:var(--ink-muted)}.auth-alt a{color:var(--accent);font-weight:500}.auth-nav{display:flex;align-items:center;gap:2px}.account-wrap{margin-left:4px}.auth-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 8px 5px 5px;border:1px solid transparent;border-radius:var(--radius-pill);background:none;font:inherit;font-size:var(--step--1);color:var(--ink);cursor:pointer;transition:background-color .16s var(--ease),border-color .16s var(--ease)}.auth-chip:hover{background:var(--ground-soft)}.auth-chip[aria-expanded=true]{background:var(--ground-soft);border-color:var(--rule)}.chip-caret{flex:none;color:var(--ink-faint);transition:transform .18s var(--ease)}.auth-chip[aria-expanded=true] .chip-caret{transform:rotate(180deg)}.auth-avatar{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:600;overflow:hidden;flex:none}.auth-avatar img{width:100%;height:100%;object-fit:cover}.auth-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 861px){.chip-dot{display:none}}.chip-dot{width:7px;height:7px;margin-left:-4px;border-radius:50%;background:var(--accent);flex:none;align-self:flex-start;margin-top:2px}.account-menu{width:268px;padding:6px}.menu-page{padding:2px 8px 8px}.menu-back{display:flex;align-items:center;gap:6px;width:100%;margin-bottom:12px;padding:7px 8px 7px 4px;border:none;border-radius:var(--radius);background:none;font:inherit;font-size:var(--step--1);font-weight:500;color:var(--ink);cursor:pointer;transition:background-color .16s var(--ease)}.menu-back:hover{background:var(--ground-soft)}.menu-back .material-symbols-rounded{flex:none;color:var(--ink-faint)}.menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;border:none;border-radius:var(--radius);background:none;font:inherit;font-size:var(--step--1);color:var(--ink);text-align:left;cursor:pointer;transition:background-color .16s var(--ease),color .16s var(--ease)}.menu-item:hover{background:var(--ground-soft)}.menu-item:focus-visible{outline:none;background:var(--ground-soft);box-shadow:0 0 0 2px var(--accent-soft)}.menu-item-next .menu-caret{margin-left:auto;flex:none;color:var(--ink-faint)}.menu-item-quiet{color:var(--ink-muted)}.menu-item-quiet:hover{color:var(--ink)}.menu-item[disabled]{opacity:.55;cursor:default}.account-menu .popover-divider{margin:6px 8px}.menu-item-narrow{display:none}@media (max-width: 860px){.auth-nav .nav-section{display:none}.menu-item-narrow{display:flex}}@media (max-width: 560px){.auth-name{display:none}}@media (max-width: 560px){.auth-nav .nav-register{display:none}}.nav-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1;flex:none}.nav-section{display:inline-flex;align-items:center;gap:6px}.menu-item .nav-badge{margin-left:auto}.header-search{position:relative;display:flex;align-items:center;margin-right:6px}.header-search-icon{position:absolute;left:10px;display:grid;place-items:center;pointer-events:none;color:var(--ink-faint)}.header-search-icon .material-symbols-rounded{display:block}.header-search input{width:208px;padding:7px 12px 7px 32px;border:1px solid var(--rule);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--step--1);transition:border-color .16s var(--ease),box-shadow .16s var(--ease),width .18s var(--ease)}.header-search input::placeholder{color:var(--ink-faint)}.header-search input:focus{outline:none;width:248px;border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.header-search input::-webkit-search-decoration,.header-search input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.site-header .header-search-compact{display:none}@media (max-width: 860px){.header-search{display:none}.site-header .header-search-compact{display:grid}}:root{--ground: #FBF9F7;--ground-soft: #F4F0EC;--surface: #FFFFFF;--surface-veil: rgba(255, 255, 255, .62);--nav-ink: #8E2E2E;--nav-ink-strong:#7A2323;--surface-hover: #FCFAF8;--ink: #2B2421;--ink-muted: #7A6E67;--ink-faint: #8B7F77;--rule: #EDE7E1;--rule-strong: #DCD3CB;--accent: #A9533F;--accent-ink: #FFFFFF;--accent-soft: #F8EDE8;--accent-line: #E3CCC3;--track: #EDE7E1;--overlay: rgba(251, 249, 247, .9);--overlay-photo: rgba(251, 249, 247, .72);--illo-wash: #F6EDE8;--illo-mid: #E7C7BA;--illo-deep: #C97A61;--shadow-sm: 0 1px 2px rgba(62, 40, 30, .05);--shadow-md: 0 2px 6px rgba(62, 40, 30, .04), 0 16px 40px -20px rgba(62, 40, 30, .24);--shadow-lift: 0 1px 2px rgba(62, 40, 30, .04), 0 8px 20px -14px rgba(62, 40, 30, .22);--glass-tint: rgba(255, 255, 255, .34);--glass-blur: blur(24px) saturate(150%);--glass-edge: rgba(255, 255, 255, .3);--glass-sheen: rgba(255, 255, 255, .52);--glass-gloss: rgba(255, 255, 255, .2);--glass-shadow: 0 8px 30px rgba(62, 40, 30, .1);--glass-ring: rgba(255, 255, 255, .72);--glass-ink-muted: #5F5650;--glass-ink-faint: #6A615B;--pattern-ink: rgba(43, 36, 33, .055);--pattern-ink-soft: rgba(43, 36, 33, .034);--pattern-glow: rgba(169, 83, 63, .055);--shell: 1120px;--column: 760px;--radius: 12px;--radius-lg: 18px;--radius-pill: 999px;--step--1: clamp(.8125rem, .79rem + .1vw, .875rem);--step-0: clamp(.9375rem, .91rem + .14vw, 1rem);--step-1: clamp(1.0625rem, 1.02rem + .22vw, 1.1875rem);--step-2: clamp(1.3125rem, 1.24rem + .36vw, 1.5625rem);--step-3: clamp(1.5rem, 1.34rem + .74vw, 2.0625rem);--step-4: clamp(2.0625rem, 1.62rem + 2.1vw, 3.375rem);--font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ease: cubic-bezier(.22, .61, .36, 1);color-scheme:light}:root[data-theme=warm]{--ground: #FDF7F1;--ground-soft: #F7EDE3;--surface: #FFFCF9;--surface-veil: rgba(255, 252, 249, .62);--nav-ink: #8E2E2E;--nav-ink-strong:#7A2323;--surface-hover: #FFF8F2;--ink: #2A211C;--ink-muted: #7C6A5F;--ink-faint: #8A7568;--rule: #EFE2D6;--rule-strong: #E0CDBE;--accent-soft: #FAEBE2;--accent-line: #E7CDBF;--track: #EFE2D6;--overlay: rgba(253, 247, 241, .9);--overlay-photo: rgba(253, 247, 241, .72);--illo-wash: #F8EBE0;--illo-mid: #EBC9B6;--illo-deep: #C97A61;--pattern-ink: rgba(42, 33, 28, .06);--pattern-ink-soft: rgba(42, 33, 28, .036);--pattern-glow: rgba(169, 83, 63, .06);--glass-tint: rgba(255, 252, 249, .34);--glass-edge: rgba(255, 253, 250, .3);--glass-sheen: rgba(255, 253, 250, .52);--glass-gloss: rgba(255, 253, 250, .2);--glass-shadow: 0 8px 30px rgba(62, 40, 30, .1);--glass-ring: rgba(255, 252, 249, .72);--glass-ink-muted: #62544B;--glass-ink-faint: #6D5F55;color-scheme:light}:root[data-theme=gray]{--ground: #F4F4F5;--ground-soft: #EBEBED;--surface: #FFFFFF;--surface-veil: rgba(255, 255, 255, .62);--nav-ink: #8A2C2C;--nav-ink-strong:#761F1F;--surface-hover: #FAFAFB;--ink: #24262A;--ink-muted: #676C72;--ink-faint: #83888E;--rule: #E4E4E7;--rule-strong: #D2D3D7;--accent-soft: #F3EDEB;--accent-line: #DFCEC8;--track: #E4E4E7;--overlay: rgba(244, 244, 245, .9);--overlay-photo: rgba(244, 244, 245, .74);--illo-wash: #EFEAE8;--illo-mid: #DFC7BD;--illo-deep: #C0765F;--pattern-ink: rgba(36, 38, 42, .055);--pattern-ink-soft: rgba(36, 38, 42, .034);--pattern-glow: rgba(169, 83, 63, .05);--glass-shadow: 0 8px 30px rgba(30, 32, 36, .1);--glass-ink-muted: #54595D;--glass-ink-faint: #5E6367;color-scheme:light}:root[data-theme=dark]{--ground: #17120F;--ground-soft: #1F1815;--surface: #211A16;--surface-veil: rgba(33, 26, 22, .6);--nav-ink: #E07A72;--nav-ink-strong:#EE9089;--surface-hover: #281F1A;--ink: #F3EAE3;--ink-muted: #A2938A;--ink-faint: #7B6D64;--rule: #2F2620;--rule-strong: #423630;--accent: #E08A6E;--accent-ink: #1A1310;--accent-soft: #2B211B;--accent-line: #4A382F;--track: #2F2620;--overlay: rgba(23, 18, 15, .88);--overlay-photo: rgba(23, 18, 15, .7);--illo-wash: #241C18;--illo-mid: #7C4B38;--illo-deep: #DA8B70;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .45);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4), 0 18px 44px -22px rgba(0, 0, 0, .7);--shadow-lift: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 24px -16px rgba(0, 0, 0, .6);--pattern-ink: rgba(243, 234, 227, .07);--pattern-ink-soft: rgba(243, 234, 227, .042);--pattern-glow: rgba(224, 138, 110, .09);--glass-tint: rgba(26, 20, 17, .4);--glass-blur: blur(24px) saturate(160%);--glass-edge: rgba(255, 255, 255, .1);--glass-sheen: rgba(255, 255, 255, .1);--glass-gloss: rgba(255, 255, 255, .06);--glass-shadow: 0 8px 30px rgba(0, 0, 0, .45);--glass-ring: rgba(33, 26, 22, .78);--glass-ink-muted: #B0A49C;--glass-ink-faint: #A79A92;color-scheme:dark}.custom-bg:before,.photo-bg:before{content:"";position:fixed;inset:0;z-index:-2;background-image:var(--bg-image);background-size:cover;background-position:center;background-repeat:no-repeat}.photo-bg:before{background-image:var(--photo-image)}.custom-bg:before{background-image:var(--bg-image)}.custom-bg:after,.photo-bg:after{content:"";position:fixed;inset:0;z-index:-1;background:var(--overlay);backdrop-filter:saturate(80%)}.photo-bg:after{background:var(--overlay-photo, var(--overlay));backdrop-filter:saturate(88%) blur(1px)}.custom-bg body,.photo-bg body{background-color:transparent;background-image:none}.material-symbols-rounded{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;font-size:var(--icon-size, 24px);line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";font-feature-settings:"liga";-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.material-symbols-rounded.active{font-variation-settings:"FILL" 1,"wght" 500,"GRAD" 0,"opsz" 24}.material-symbols-rounded.thin{font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24}.icons-pending .material-symbols-rounded{visibility:hidden}.icons-missing .material-symbols-rounded{font-family:inherit;font-size:0;width:1em}.icons-missing .material-symbols-rounded:before{content:"•";font-size:18px;line-height:1}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background-color:var(--ground);background-image:var(--pattern-image, none);background-size:var(--pattern-size, auto);background-repeat:var(--pattern-repeat, repeat);background-position:center top;background-attachment:fixed;color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.65;font-feature-settings:"cv05" 1,"ss01" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .2s var(--ease),color .2s var(--ease)}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.012em;line-height:1.2;text-wrap:balance}.hero h1,.section-title,.question h2,.score-number,.modal h2{font-family:var(--font-display);font-weight:500;font-optical-sizing:auto}p{margin:0}a{color:inherit;text-decoration:none}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.shell{width:100%;max-width:var(--shell);margin-inline:auto;padding-inline:24px}.column{width:100%;max-width:var(--column);margin-inline:auto}#app>.column{padding-inline:24px}.eyebrow{font-size:var(--step--1);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);opacity:.85}.muted{color:var(--ink-muted)}.num{font-variant-numeric:tabular-nums}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:40;--ink-muted: var(--glass-ink-muted);--ink-faint: var(--glass-ink-faint);border-bottom:1px solid var(--glass-edge);background:var(--glass-tint);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:inset 0 1px 0 var(--glass-sheen),var(--glass-shadow)}.site-header:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(to bottom,var(--glass-gloss) 0%,color-mix(in srgb,var(--glass-gloss) 30%,transparent) 45%,transparent 82%)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.site-header{background:var(--surface);border-bottom-color:var(--rule);box-shadow:var(--shadow-sm)}.site-header:before{display:none}}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;height:68px}.brand{display:inline-flex;align-items:center;flex:none}.brand-logo{display:block;height:49px;width:auto;flex:none;margin-block:-2px}.brand-logo .logo-hearts{fill:var(--accent)}.brand-logo .logo-word{fill:var(--ink)}@media (max-width: 560px){.brand-logo{height:41px}}.header-actions{display:flex;align-items:center;gap:4px}@media (max-width: 860px){.site-header .about-collapsible{display:none}}.link-btn{padding:8px 12px;border-radius:var(--radius);font-size:var(--step--1);color:var(--ink-muted);transition:color .16s var(--ease),background-color .16s var(--ease)}.link-btn:hover{color:var(--ink);background:var(--ground-soft)}.icon-btn{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius);color:var(--ink-muted);transition:color .16s var(--ease),background-color .16s var(--ease)}.icon-btn:hover{color:var(--ink);background:var(--ground-soft)}.site-header .link-btn:hover,.site-header .icon-btn:hover{background:color-mix(in srgb,var(--glass-sheen) 55%,transparent)}.icon-btn svg{width:17px;height:17px}.icon-btn .material-symbols-rounded{display:block}.popover-wrap{position:relative}.popover{position:absolute;top:calc(100% + 10px);right:0;z-index:50;width:268px;padding:14px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);opacity:0;transform:translateY(-4px);visibility:hidden;transition:opacity .18s var(--ease),transform .18s var(--ease),visibility .18s}.popover[data-open=true]{opacity:1;transform:translateY(0);visibility:visible}.popover-label{display:block;margin-bottom:10px;font-size:var(--step--1);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.theme-option{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--rule);border-radius:var(--radius);font-size:var(--step--1);color:var(--ink-muted);text-align:left;transition:border-color .16s var(--ease),color .16s var(--ease),background-color .16s var(--ease)}.theme-option:hover{border-color:var(--accent-line);color:var(--ink)}.theme-option[aria-pressed=true]{border-color:var(--accent);color:var(--ink);background:var(--accent-soft)}.swatch{width:15px;height:15px;border-radius:50%;border:1px solid var(--rule-strong);flex:none}.swatch-light{background:#fbf9f7}.swatch-warm{background:#f7eadc}.swatch-gray{background:#e9e9eb}.swatch-dark{background:#211a16}.carousel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.carousel-head .popover-label{margin-bottom:0}.carousel-nav{display:flex;gap:2px}.carousel-arrow{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;color:var(--ink-muted);transition:color .16s var(--ease),background-color .16s var(--ease),opacity .16s var(--ease)}.carousel-arrow:hover:not(:disabled){color:var(--ink);background:var(--ground-soft)}.carousel-arrow:disabled{opacity:.28;cursor:default}.carousel-arrow svg{width:13px;height:13px}.carousel{display:flex;gap:8px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:2px}.carousel::-webkit-scrollbar{display:none}.pattern-option{flex:none;width:72px;scroll-snap-align:start;display:flex;flex-direction:column;gap:6px;padding:0;text-align:center}.pattern-preview{height:78px;border:1px solid var(--rule);border-radius:10px;background-color:var(--ground);background-image:var(--tile-image, none);background-size:cover;background-position:center;background-repeat:no-repeat;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.pattern-name{font-size:.72rem;line-height:1.2;color:var(--ink-muted);transition:color .16s var(--ease)}.pattern-option:hover .pattern-preview{border-color:var(--rule-strong)}.pattern-option:hover .pattern-name{color:var(--ink)}.pattern-option[aria-pressed=true] .pattern-preview{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.pattern-option[aria-pressed=true] .pattern-name{color:var(--ink)}.popover-divider{height:1px;margin:14px 0;background:var(--rule)}.file-row{display:flex;flex-direction:column;gap:8px}.ghost-btn{padding:10px 16px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);font-size:var(--step--1);color:var(--ink);background:var(--surface);transition:border-color .16s var(--ease),background-color .16s var(--ease)}.ghost-btn:hover{border-color:var(--accent-line);background:var(--surface-hover)}.popover-hint{font-size:.75rem;line-height:1.5;color:var(--ink-faint)}.view{display:none}.view[data-active=true]{display:block;animation:view-in .24s var(--ease) both}@keyframes view-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);align-items:center;gap:clamp(32px,5vw,72px);padding:clamp(52px,8vw,104px) 0 clamp(44px,6vw,80px)}.hero-inner{max-width:680px}.hero-art{display:block;width:100%;max-width:480px;justify-self:end;height:auto;animation:art-in .7s var(--ease) both}@keyframes art-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.hero h1{margin-top:18px;font-size:var(--step-4);font-weight:600;letter-spacing:-.032em;line-height:1.06}.hero-sub{margin-top:22px;max-width:56ch;font-size:var(--step-1);line-height:1.6;color:var(--ink-muted)}.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:36px}.btn-primary{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 28px;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-size:var(--step-0);font-weight:500;letter-spacing:-.005em;box-shadow:var(--shadow-lift);transition:transform .18s var(--ease),box-shadow .18s var(--ease),filter .18s var(--ease)}.btn-primary:hover{filter:brightness(1.06);box-shadow:var(--shadow-md)}.btn-primary:active{transform:translateY(1px)}.btn-primary svg{width:15px;height:15px}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);background:var(--surface);font-size:var(--step-0);font-weight:500;transition:border-color .16s var(--ease),background-color .16s var(--ease)}.btn-secondary:hover{border-color:var(--accent-line);background:var(--surface-hover)}.meta-line{font-size:var(--step--1);color:var(--ink-faint)}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--rule)}.pillar{padding:32px 32px 36px 0;border-right:1px solid var(--rule)}.pillar:last-child{border-right:0;padding-right:0}.pillar:not(:first-child){padding-left:32px}.pillar-mark{display:block;width:26px;height:26px;color:var(--accent)}.pillar-mark svg{width:100%;height:100%}.pillar h3{margin-top:16px;font-size:var(--step-1);font-weight:600}.pillar p{margin-top:8px;font-size:var(--step-0);color:var(--ink-muted);line-height:1.55}.disclaimer{padding:26px 0 72px;font-size:var(--step--1);color:var(--ink-faint);max-width:68ch}.test-wrap{padding:clamp(32px,5vw,64px) 0 96px}.test-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.test-counter{font-size:var(--step--1);font-weight:500;color:var(--ink-muted);font-variant-numeric:tabular-nums}.test-partner{font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.progress{position:relative;height:3px;margin-top:16px;background:var(--track);overflow:hidden;border-radius:var(--radius-pill)}.progress-bar{position:absolute;inset:0 auto 0 0;width:0;border-radius:var(--radius-pill);background:var(--accent);transition:width .32s var(--ease)}.question{margin-top:44px;animation:q-in .22s var(--ease) both}@keyframes q-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.question.is-leaving{animation:q-out .16s var(--ease) both}@keyframes q-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.question-topic{font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.question h2{margin-top:12px;font-size:var(--step-3);font-weight:600;line-height:1.24;letter-spacing:-.024em}.answers{display:flex;flex-direction:column;gap:8px;margin-top:32px}.answer{display:flex;align-items:flex-start;gap:16px;width:100%;min-height:60px;padding:18px 20px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);text-align:left;line-height:1.55;box-shadow:var(--shadow-sm);transition:border-color .18s var(--ease),background-color .18s var(--ease),box-shadow .18s var(--ease),transform .18s var(--ease)}.answer:hover{border-color:var(--accent-line);background:var(--surface-hover);box-shadow:var(--shadow-lift);transform:translateY(-1px)}.answer:active{transform:translateY(0)}.answer-key{flex:none;width:26px;height:26px;margin-top:0;display:grid;place-items:center;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);font-size:.75rem;font-weight:500;color:var(--ink-muted);transition:border-color .17s var(--ease),background-color .17s var(--ease),color .17s var(--ease)}.answer[data-selected=true]{border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--shadow-sm)}.answer[data-selected=true] .answer-key{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.test-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px}.text-btn{padding:8px 2px;font-size:var(--step--1);color:var(--ink-muted);transition:color .16s var(--ease)}.text-btn:hover{color:var(--ink)}.text-btn[hidden]{display:none}.result-wrap{padding:clamp(32px,5vw,64px) 0 96px}.score-block{padding-bottom:40px;border-bottom:1px solid var(--rule)}.score-value{display:flex;align-items:baseline;gap:14px;margin-top:16px;font-variant-numeric:tabular-nums}.score-number{font-size:clamp(3.5rem,2.2rem + 6vw,6rem);font-weight:500;letter-spacing:-.03em;line-height:1;color:var(--accent)}.score-max{font-size:var(--step-2);color:var(--ink-faint);font-weight:500}.score-level{display:inline-flex;align-items:center;margin-top:18px;padding:7px 16px;border:1px solid var(--accent-line);border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--step--1);font-weight:500;letter-spacing:.02em}.score-lead{margin-top:20px;max-width:62ch;font-size:var(--step-1);line-height:1.55;color:var(--ink-muted)}.section{padding-top:56px}.section-title{font-size:var(--step-2);font-weight:600;letter-spacing:-.02em}.section-note{margin-top:8px;max-width:62ch;font-size:var(--step--1);color:var(--ink-faint)}.scales{margin-top:26px;border-top:1px solid var(--rule)}.scale{display:grid;grid-template-columns:minmax(0,1fr) 152px 46px;align-items:center;gap:20px;padding:14px 0;border-bottom:1px solid var(--rule)}.scale.is-total{border-bottom:0;padding-top:18px;font-weight:600}.scale-name{font-size:var(--step-0);line-height:1.35}.scale-track{position:relative;height:6px;border-radius:var(--radius-pill);background:var(--track);overflow:hidden}.scale-fill{position:absolute;inset:0 auto 0 0;width:0;border-radius:var(--radius-pill);background:var(--accent);transition:width .7s var(--ease)}.scale-value{text-align:right;font-size:var(--step-0);font-variant-numeric:tabular-nums;color:var(--ink)}.ai-panel{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-top:24px;padding:20px 22px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.ai-panel-title{font-size:var(--step-0);font-weight:600}.ai-panel-text{margin-top:6px;max-width:62ch;font-size:var(--step--1);line-height:1.6;color:var(--ink-muted)}.ai-panel .ghost-btn{flex:none}.ai-status{margin-top:18px;font-size:var(--step--1);color:var(--ink-muted)}.ai-status[data-state=loading]:before{content:"";display:inline-block;width:6px;height:6px;margin-right:9px;border-radius:50%;background:var(--accent);vertical-align:middle;animation:pulse 1.4s var(--ease) infinite}@keyframes pulse{0%,to{opacity:.25}50%{opacity:1}}.ai-source{margin-top:14px;display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;font-size:var(--step--1);color:var(--ink-faint)}.analysis{margin-top:26px;border-top:1px solid var(--rule)}.analysis-item{padding:22px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px}.analysis-item h4{font-size:var(--step-0);font-weight:600;letter-spacing:-.01em}.analysis-item p{color:var(--ink-muted);line-height:1.62;max-width:64ch}.marks{margin-top:22px;display:flex;flex-direction:column;gap:1px;background:var(--rule);border-block:1px solid var(--rule)}.mark{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:18px;padding:15px 0;background:var(--ground)}.custom-bg .mark{background:transparent}.mark-name{font-weight:500}.mark-desc{grid-column:1 / -1;margin-top:4px;font-size:var(--step--1);color:var(--ink-muted);max-width:66ch}.mark-value{font-variant-numeric:tabular-nums;color:var(--ink-muted);font-size:var(--step--1)}.note-card{margin-top:22px;padding:20px 22px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink-muted);font-size:var(--step-0);line-height:1.6}.contradiction{padding:18px 0;border-bottom:1px solid var(--rule)}.contradiction:first-child{border-top:1px solid var(--rule)}.contradiction-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.tag{padding:3px 9px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}.tag[data-level=strong]{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.contradiction p{margin-top:10px;color:var(--ink-muted);line-height:1.62;max-width:66ch}.summary-text{margin-top:22px;max-width:66ch;font-size:var(--step-1);line-height:1.66;color:var(--ink)}.result-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:44px;padding-top:32px;border-top:1px solid var(--rule)}.compare-wrap{padding:clamp(32px,5vw,64px) 0 96px}.table-scroll{margin-top:26px;overflow-x:auto;border-top:1px solid var(--rule)}table.compare{width:100%;min-width:560px;border-collapse:collapse;font-variant-numeric:tabular-nums}table.compare th,table.compare td{padding:13px 12px;text-align:right;border-bottom:1px solid var(--rule);font-size:var(--step-0);white-space:nowrap}table.compare th:first-child,table.compare td:first-child{text-align:left;padding-left:0;white-space:normal;min-width:210px}table.compare td:last-child,table.compare th:last-child{padding-right:0}table.compare thead th{font-size:var(--step--1);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}table.compare tbody tr:last-child td{border-bottom:0}table.compare tr.is-total td{font-weight:600}.diff-tag{display:inline-block;padding:3px 9px;border:1px solid var(--rule-strong);border-radius:var(--radius-pill);font-size:.72rem;letter-spacing:.02em;color:var(--ink-muted)}.diff-tag[data-level=strong]{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.modal{width:min(560px,calc(100vw - 32px));padding:0;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-md)}.modal::backdrop{background:#281a1457;backdrop-filter:blur(3px)}.modal-inner{padding:30px 30px 26px}.modal h2{font-size:var(--step-2)}.modal p{margin-top:12px;color:var(--ink-muted);line-height:1.62;font-size:var(--step-0)}.modal-close{margin-top:22px}@media (max-width: 860px){.hero{grid-template-columns:1fr;gap:8px;padding-top:clamp(32px,6vw,56px)}.hero-art{order:-1;justify-self:center;max-width:380px;margin-bottom:4px}.hero-inner{max-width:none}.pillars{grid-template-columns:1fr}.pillar{padding:24px 0;border-right:0;border-bottom:1px solid var(--rule)}.pillar:not(:first-child){padding-left:0}.pillar:last-child{border-bottom:0}.analysis-item{grid-template-columns:1fr;gap:10px}.scale{grid-template-columns:minmax(0,1fr) 88px 42px;gap:14px}}@media (max-width: 560px){.shell{padding-inline:18px}#app>.column{padding-inline:18px}.header-inner{height:56px}.question h2{font-size:var(--step-2);line-height:1.28}.question{margin-top:34px}.hero{padding-top:44px}.hero-cta{gap:14px}.btn-primary,.btn-secondary{width:100%;justify-content:center}.answer{padding:15px;gap:13px}.scale{grid-template-columns:minmax(0,1fr) 46px;grid-template-areas:"name value" "track track";gap:6px 12px}.scale-name{grid-area:name}.scale-value{grid-area:value}.scale-track{grid-area:track;margin-top:4px}.result-actions .btn-primary,.result-actions .btn-secondary{width:100%}.ai-panel{flex-direction:column;gap:14px}.ai-panel .ghost-btn{width:100%}.popover{width:min(300px,calc(100vw - 36px))}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
