:root{--bg: #FFFFFF;--bg-secondary: #EFEFEF;--bg-input: #FAFAFA;--border: #DBDBDB;--border-control: #8E8E8E;--text: #262626;--text-secondary: #737373;--text-tertiary: #949494;--accent: #0095F6;--accent-solid: #0F76D6;--accent-solid-pressed: #0A5FA8;--accent-text: #00376B;--like: #FF3040;--danger: #ED4956;--danger-text: #C62F3A;--chip-neutral-bg: #EFEFEF;--chip-neutral-fg: #6B6B6B;--chip-ok-bg: #E6F4EC;--chip-ok-fg: #1E7B4B;--chip-warn-bg: #FDF3DC;--chip-warn-fg: #8A5A00;--chip-danger-bg: #FDE8EA;--chip-danger-fg: #C62F3A;--brand-gradient: linear-gradient(135deg, #FEDA75 0%, #FA7E1E 25%, #D62976 50%, #962FBF 75%, #4F5BD5 100%);--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--fs-title: 16px;--fs-body: 14px;--fs-meta: 12px;--fs-input: 16px;--fs-logo: 24px;--lh-body: 18px;--lh-title: 20px;--lh-meta: 16px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 999px;--icon: 24px;--icon-sm: 20px;--icon-xs: 16px;--tap: 44px;--stroke: 1.75;--nav-h: 49px;--safe-bottom: env(safe-area-inset-bottom, 0px);--content-narrow: 470px;--content-standard: 640px;--side-nav-w: 245px;--dur-fast: .15s;--dur-base: .2s;--dur-slow: .25s;--ease: cubic-bezier(.2, 0, .2, 1);--shadow-float: 0 8px 24px rgba(0, 0, 0, .12)}@media (prefers-color-scheme: dark){:root{--bg: #000000;--bg-secondary: #262626;--bg-input: #121212;--border: #363636;--border-control: #6E6E6E;--text: #F5F5F5;--text-secondary: #A8A8A8;--text-tertiary: #737373;--accent-text: #6BB8F5;--danger-text: #F08A92;--chip-neutral-bg: #262626;--chip-neutral-fg: #A8A8A8;--chip-ok-bg: #12291C;--chip-ok-fg: #7FD1A0;--chip-warn-bg: #2A2113;--chip-warn-fg: #E8B45C;--chip-danger-bg: #2E1618;--chip-danger-fg: #F08A92;--shadow-float: 0 8px 24px rgba(0, 0, 0, .6)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-body);line-height:var(--lh-body);overscroll-behavior-y:none}body,#root{min-height:100dvh}h1,h2,h3{font-weight:600;letter-spacing:-.15px;margin:0}h1,h2{font-size:var(--fs-title);line-height:var(--lh-title)}h3{font-size:var(--fs-body);line-height:var(--lh-body)}p{margin:0}::selection{background:#0095f633}a{color:var(--accent-text)}:focus-visible{outline:2px solid var(--text);outline-offset:2px}.gap{display:flex;align-items:center;gap:var(--space-2)}.text-secondary{color:var(--text-secondary)}.text-danger{color:var(--danger-text)}.text-meta{font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary)}.text-title{font-size:var(--fs-title);font-weight:600;letter-spacing:-.15px}.text-body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text)}.app-shell{min-height:100dvh;padding-bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--space-4))}.page{width:100%;margin:0 auto;padding:0 var(--space-4) var(--space-5)}.page--narrow{max-width:var(--content-narrow)}.page--standard{max-width:var(--content-standard)}.page.page--flush{padding-left:0;padding-right:0}.section-title{font-size:var(--fs-title);font-weight:600;letter-spacing:-.15px;line-height:var(--lh-title);margin:var(--space-5) 0 var(--space-2)}.app-loading{min-height:100dvh;display:grid;place-items:center}.screen-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.screen-header-title{font-size:var(--fs-title);font-weight:600;letter-spacing:-.15px;line-height:var(--lh-title)}.screen-header-subtitle{font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);margin-top:2px}.app-bar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);height:48px;padding:0 var(--space-4);background:var(--bg)}.app-bar-brand{font-size:var(--fs-title);font-weight:600;letter-spacing:-.15px;color:var(--text);text-decoration:none}.app-bar-actions{display:flex;align-items:center;gap:var(--space-1)}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;justify-content:space-around;align-items:stretch;height:calc(var(--nav-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--bg);border-top:1px solid var(--border)}.bottom-nav-item{flex:1;display:grid;place-items:center;min-height:var(--tap);color:var(--text-secondary);text-decoration:none}.bottom-nav-item svg{width:var(--icon);height:var(--icon)}.bottom-nav-item.is-active{color:var(--text)}.bottom-nav-item:active{opacity:.6}.side-nav{position:fixed;top:0;left:0;bottom:0;width:var(--side-nav-w);z-index:50;display:none;flex-direction:column;gap:var(--space-1);padding:var(--space-4) var(--space-3);background:var(--bg);border-right:1px solid var(--border)}.side-nav-brand{font-size:var(--fs-title);font-weight:600;letter-spacing:-.15px;padding:0 12px var(--space-4);color:var(--text);text-decoration:none}.side-nav-item{display:flex;align-items:center;gap:var(--space-3);height:44px;padding:0 12px;border-radius:var(--radius-md);color:var(--text);font-size:var(--fs-body);text-decoration:none}.side-nav-item svg{width:var(--icon);height:var(--icon)}.side-nav-item.is-active{background:var(--bg-secondary);font-weight:600}.side-nav-item:hover{background:var(--bg-secondary)}.side-nav-footer{margin-top:auto;padding:var(--space-2) 0 0}.side-nav-account{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:0 12px;border:0;border-radius:var(--radius-md);background:none;color:var(--text);font:400 var(--fs-body) var(--font);text-align:left;cursor:pointer}.side-nav-account:hover{background:var(--bg-secondary)}.side-nav-account-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-3)}.divider{height:1px;background:var(--border);border:0;margin:0}.divider--label{display:flex;align-items:center;gap:var(--space-3);background:none;height:auto;color:var(--text-secondary);font-size:var(--fs-meta)}.divider--label:before,.divider--label:after{content:"";flex:1;height:1px;background:var(--border)}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:48px var(--space-4);text-align:center}.empty-icon{color:var(--text-tertiary)}.empty-icon svg{width:32px;height:32px}.empty-title{font-size:var(--fs-body);font-weight:600;color:var(--text)}.empty-hint{font-size:var(--fs-body);color:var(--text-secondary);max-width:320px}.notice{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text);font-size:var(--fs-body);line-height:var(--lh-body)}.notice svg{width:var(--icon-sm);height:var(--icon-sm);flex-shrink:0;margin-top:1px}.notice--error{background:var(--chip-danger-bg);color:var(--danger-text)}.notice--ok{background:var(--chip-ok-bg);color:var(--chip-ok-fg)}.notice--warn{background:var(--chip-warn-bg);color:var(--chip-warn-fg)}.chip{display:inline-flex;align-items:center;gap:var(--space-1);height:22px;padding:0 var(--space-2);border-radius:var(--radius-full);font-size:var(--fs-meta);font-weight:400;line-height:1;white-space:nowrap;background:var(--chip-neutral-bg);color:var(--chip-neutral-fg)}.chip--ok{background:var(--chip-ok-bg);color:var(--chip-ok-fg)}.chip--warn{background:var(--chip-warn-bg);color:var(--chip-warn-fg)}.chip--danger{background:var(--chip-danger-bg);color:var(--chip-danger-fg)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:32px;padding:0 var(--space-4);border:0;border-radius:var(--radius-md);background:var(--accent-solid);color:#fff;font:600 var(--fs-body) var(--font);line-height:1;cursor:pointer;text-decoration:none;white-space:nowrap}.btn:active{background:var(--accent-solid-pressed)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn--secondary{background:var(--bg-secondary);color:var(--text)}.btn--secondary:active{background:var(--border)}.btn--outline{background:transparent;color:var(--text);border:1px solid var(--border)}.btn--outline:active{background:var(--bg-secondary)}.btn--link{background:transparent;color:var(--accent-text);padding:0 var(--space-1)}.btn--link:active{opacity:.7}.btn--danger{background:transparent;color:var(--danger-text)}.btn--danger:active{background:var(--chip-danger-bg)}.btn--lg{height:44px}.btn--full{width:100%}.btn svg{width:var(--icon-sm);height:var(--icon-sm)}.icon-btn{width:var(--tap);height:var(--tap);display:grid;place-items:center;background:none;border:0;padding:0;color:var(--text);cursor:pointer;text-decoration:none}.icon-btn svg{width:var(--icon);height:var(--icon)}.icon-btn:active{opacity:.7}.icon-btn[disabled]{opacity:.4;cursor:not-allowed}.icon-btn--sm svg{width:var(--icon-sm);height:var(--icon-sm)}.icon-btn--xs svg{width:var(--icon-xs);height:var(--icon-xs)}.icon-btn--active{color:var(--like)}.icon-btn--danger{color:var(--danger-text)}.field{margin:var(--space-4) 0}.field:first-child{margin-top:0}.field-label{display:block;font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);margin-bottom:6px}.field-hint{display:block;font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);margin-top:var(--space-1)}.field-error{display:flex;align-items:flex-start;gap:var(--space-1);font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--danger-text);margin-top:var(--space-1)}.field-error svg{width:var(--icon-xs);height:var(--icon-xs);flex-shrink:0;margin-top:1px}.input{width:100%;height:40px;padding:0 var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-control);background:var(--bg-input);color:var(--text);font:400 var(--fs-input) var(--font);line-height:1}.input::placeholder{color:var(--text-secondary)}.input:focus-visible{border-color:var(--text);outline:2px solid var(--text);outline-offset:1px}.input:disabled{opacity:.4;cursor:not-allowed}.input[aria-invalid=true]{border-color:var(--danger)}.textarea{height:auto;min-height:88px;padding:10px var(--space-3);line-height:var(--lh-body);resize:vertical}.select-wrap{position:relative;display:block}.select-wrap>svg{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:var(--icon-xs);height:var(--icon-xs);color:var(--text-secondary);pointer-events:none}.select{appearance:none;-webkit-appearance:none;padding-right:36px;cursor:pointer}.search-input{position:relative}.search-input-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);width:var(--icon-xs);height:var(--icon-xs);color:var(--text-secondary);pointer-events:none}.search-input .input{padding-left:40px;height:40px;border-radius:var(--radius-full)}.search-input-clear{position:absolute;right:0;top:50%;transform:translateY(-50%);width:32px;height:32px;display:grid;place-items:center;border:0;background:none;color:var(--text-secondary);cursor:pointer}.search-input-clear svg{width:var(--icon-xs);height:var(--icon-xs)}.file-input{display:flex;align-items:center;gap:var(--space-3);position:relative;padding:var(--space-4);border:1px dashed var(--border);border-radius:var(--radius-lg);background:var(--bg-input);min-height:72px}.file-input-icon{color:var(--text-secondary);flex-shrink:0}.file-input-icon svg{width:var(--icon-sm);height:var(--icon-sm)}.file-input-text{flex:1;min-width:0}.file-input-name{font-size:var(--fs-body);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-input-hint{font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary)}.file-input-native{position:absolute;inset:0;width:100%;height:100%;opacity:.01;cursor:pointer}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:48px;padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.setting-row:last-child{border-bottom:0}.checkbox{width:20px;height:20px;min-height:20px;accent-color:var(--accent-solid);flex-shrink:0}.switch{position:relative;width:44px;height:24px;flex-shrink:0;border:0;padding:0;border-radius:var(--radius-full);background:var(--bg-secondary);cursor:pointer}.switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:var(--radius-full);background:var(--text-secondary);transition:transform var(--dur-fast) var(--ease)}.switch[aria-checked=true]{background:var(--bg-secondary)}.switch[aria-checked=true]:after{transform:translate(20px);background:var(--text)}.sheet-backdrop{position:fixed;inset:0;background:#00000080;z-index:100;animation:fade-in var(--dur-fast) var(--ease)}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:101;max-height:88dvh;overflow-y:auto;background:var(--bg);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-2) var(--space-4) calc(var(--space-4) + var(--safe-bottom));box-shadow:var(--shadow-float);animation:sheet-in var(--dur-base) var(--ease)}.sheet-handle{width:36px;height:4px;border-radius:var(--radius-full);background:var(--border);margin:0 auto var(--space-3)}.sheet-title{font-size:var(--fs-title);font-weight:600;line-height:var(--lh-title);text-align:center;margin-bottom:var(--space-3)}.sheet-subtitle{font-size:var(--fs-body);color:var(--text-secondary);text-align:center;margin-top:2px}.sheet-close{position:absolute;top:var(--space-2);right:var(--space-2)}.sheet-row{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:48px;padding:0;border:0;border-bottom:1px solid var(--border);background:none;color:var(--text);font:400 var(--fs-body) var(--font);text-align:left;cursor:pointer}.sheet-row:last-child{border-bottom:0}.sheet-row svg{width:var(--icon-sm);height:var(--icon-sm);color:var(--text-secondary);flex-shrink:0}.sheet-row--danger{color:var(--danger-text)}.sheet-row--danger svg{color:var(--danger-text)}.sheet-row--strong{font-weight:600}.menu{position:absolute;z-index:60;min-width:180px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);overflow:hidden}.menu-item{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:40px;padding:0 var(--space-3);border:0;background:none;color:var(--text);font:400 var(--fs-body) var(--font);text-align:left;cursor:pointer}.menu-item:hover{background:var(--bg-secondary)}.menu-item svg{width:var(--icon-xs);height:var(--icon-xs);color:var(--text-secondary)}.menu-item--danger{color:var(--danger-text)}.menu-item--danger svg{color:var(--danger-text)}.toast{position:fixed;left:50%;bottom:calc(var(--nav-h) + var(--safe-bottom) + var(--space-4));transform:translate(-50%);z-index:120;display:flex;align-items:center;gap:var(--space-3);width:calc(100% - var(--space-5));max-width:420px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--text);color:var(--bg);font-size:var(--fs-body);line-height:var(--lh-body);box-shadow:var(--shadow-float);animation:toast-in var(--dur-base) var(--ease)}.toast-close{margin-left:auto;display:grid;place-items:center;width:24px;height:24px;border:0;background:none;color:inherit;opacity:.7;cursor:pointer}.toast-close svg{width:var(--icon-xs);height:var(--icon-xs)}.spinner-inline{width:16px;height:16px;flex-shrink:0;border-radius:var(--radius-full);border:1.75px solid var(--border);border-top-color:var(--text-secondary);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:var(--bg-secondary);border-radius:var(--radius-sm);animation:skeleton-shimmer 1.2s ease-in-out infinite}.skeleton--circle{border-radius:var(--radius-full)}.avatar{border-radius:var(--radius-full);object-fit:cover;flex-shrink:0;background:var(--bg-secondary)}.avatar-initials{display:inline-grid;place-items:center;border-radius:var(--radius-full);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-meta);font-weight:600}.media{position:relative;overflow:hidden;background:var(--bg-secondary)}.media img,.media video{display:block;width:100%;height:100%;object-fit:cover;animation:media-in var(--dur-base) var(--ease)}.media--image{aspect-ratio:4 / 5}.media--reel{aspect-ratio:9 / 16}.media--story{aspect-ratio:1 / 1}.media--audio{aspect-ratio:auto;padding:var(--space-3)}.media--fill{position:absolute;inset:0;aspect-ratio:auto}.media--audio audio{width:100%;display:block}.media-duration{position:absolute;right:var(--space-2);bottom:var(--space-2);padding:2px var(--space-2);border-radius:var(--radius-sm);background:#000000a6;color:#fff;font-size:var(--fs-meta);line-height:var(--lh-meta)}.user-header{display:flex;align-items:center;gap:var(--space-3);min-height:48px;padding:var(--space-2) var(--space-4)}.user-header-main{display:flex;flex-direction:column;flex:1;min-width:0}.user-header-name{font-size:var(--fs-body);font-weight:600;letter-spacing:-.15px;color:var(--text);text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-1)}.user-header-dot{width:6px;height:6px;border-radius:var(--radius-full);background:var(--accent);flex-shrink:0}.user-header-star{color:var(--text);flex-shrink:0}.user-header-star svg{width:12px;height:12px}.feed{list-style:none;margin:0;padding:0}.feed>li{border-top:1px solid var(--border)}.feed>li:first-child{border-top:0}.post-card{position:relative;display:block;color:inherit;text-decoration:none}.post-card-link{position:absolute;inset:0;z-index:1;border-radius:0}.post-card-user-link{position:relative;z-index:2;color:inherit;text-decoration:none}.post-card-media{width:100%}.post-card-actions{position:relative;z-index:2;display:flex;align-items:center;gap:0;min-height:44px;padding:var(--space-1) var(--space-3) var(--space-1) 4px}.post-card-actions-spacer{flex:1}.post-card-likes{font-size:var(--fs-body);font-weight:600;color:var(--text);padding:0 var(--space-4)}.post-card-caption{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);padding:var(--space-1) var(--space-4) 0}.post-card-caption strong{font-weight:600}.post-card-meta{font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);padding:var(--space-1) var(--space-4) var(--space-3)}.post-card-meta a{color:var(--text-secondary)}.list-row{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:72px;padding:var(--space-3) var(--space-4);border:0;border-bottom:1px solid var(--border);background:none;color:var(--text);font:400 var(--fs-body) var(--font);text-align:left;text-decoration:none;cursor:pointer}.list-row--56{min-height:56px}.list-row--64{min-height:64px}.list-row-main{display:flex;flex-direction:column;flex:1;min-width:0}.list-row-title{display:block;font-size:var(--fs-body);font-weight:600;color:var(--text)}.list-row-title-line{display:flex;align-items:center;gap:var(--space-1);min-width:0}.list-row-mark{display:inline-flex;align-items:center;justify-content:center;width:12px;flex-shrink:0;color:var(--accent)}.list-row-mark svg{width:12px;height:12px}.list-row-sub{display:block;font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);margin-top:2px}.list-row-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.list-row-body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);padding:var(--space-1) 0 var(--space-3)}.quick-actions{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-4) var(--space-4)}.quick-action{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);min-height:var(--tap);background:none;border:0;padding:0;color:var(--text);font:400 var(--fs-meta) var(--font);text-decoration:none;cursor:pointer}.quick-action svg{width:var(--icon);height:var(--icon)}.quick-action:hover{color:var(--text-secondary)}.debt-meter{margin-top:var(--space-2)}.debt-meter-bar{display:flex;gap:3px;width:240px;height:3px}.debt-meter-seg{flex:1;border-radius:var(--radius-full);background:var(--border)}.debt-meter-seg.is-used{background:var(--text)}.debt-meter-seg.is-over{background:var(--danger)}.debt-meter-legend{margin-top:var(--space-2);font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary)}.debt-meter-legend.is-over{color:var(--danger-text)}.debt-block{padding-top:var(--space-4);padding-bottom:var(--space-4);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.receipt-link{display:inline-flex;align-items:center;gap:var(--space-1);margin-top:var(--space-1);color:var(--accent-text);font-size:var(--fs-body);font-weight:600;text-decoration:none}.receipt-link svg{width:var(--icon-xs);height:var(--icon-xs)}.profile-head{padding:var(--space-4) var(--space-4) 0}.profile-head-top{display:flex;align-items:center;gap:var(--space-5)}.profile-stats{display:flex;align-items:flex-start;gap:var(--space-5)}.profile-stat{display:flex;flex-direction:column;gap:2px}.stat-value{font-size:var(--fs-title);font-weight:600;color:var(--text)}.stat-label{font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary)}.profile-name{font-size:var(--fs-body);font-weight:600;margin-top:var(--space-4)}.profile-title{font-size:var(--fs-body);color:var(--text-secondary);margin-top:2px}.profile-bio{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);margin-top:var(--space-1)}.profile-actions{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.profile-actions>*{flex:1;min-width:0}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.grid-3>*{aspect-ratio:1 / 1}.grid-thumb{position:relative;display:block;width:100%;height:100%;overflow:hidden;background:var(--bg-secondary);border:0;padding:0}.grid-thumb img,.grid-thumb video{width:100%;height:100%;object-fit:cover;display:block}.grid-thumb-label{display:grid;place-items:center;height:100%;font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary)}.icon-tabs{display:flex;align-items:center;justify-content:center;gap:var(--space-5);height:44px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.icon-tab{display:grid;place-items:center;width:var(--tap);height:44px;border:0;background:none;color:var(--text);cursor:pointer}.icon-tab svg{width:var(--icon);height:var(--icon)}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.stats-item{display:flex;flex-direction:column;gap:2px}.detail-bar{display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 var(--space-2);border-bottom:1px solid var(--border)}.comment-row{display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border)}.comment-main{flex:1;min-width:0}.comment-author{font-size:var(--fs-body);font-weight:600}.comment-body{font-size:var(--fs-body);line-height:var(--lh-body);margin-top:2px}.comment-meta{font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);margin-top:2px}.comment-link{border:0;background:none;padding:0;color:var(--text-secondary);font:inherit;cursor:pointer}.comment-chips{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1);flex-shrink:0}.comment-footer{position:sticky;bottom:calc(var(--nav-h) + var(--safe-bottom));z-index:30;background:var(--bg);border-top:1px solid var(--border)}.comment-hint{font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);padding:var(--space-2) var(--space-4) 0}.comment-bar{display:flex;align-items:center;gap:var(--space-2);min-height:56px;padding:var(--space-2) var(--space-4);background:var(--bg)}.comment-input-wrap{position:relative;flex:1;min-width:0;display:flex;align-items:center}.comment-bar-input{width:100%;height:36px;padding:0 var(--space-3) 0 36px;border-radius:var(--radius-full);border:0;background:var(--bg-secondary);color:var(--text);font:400 var(--fs-body) var(--font)}.comment-bar-input:focus-visible{outline:2px solid var(--text);outline-offset:1px}.comment-visibility{position:absolute;left:0;top:50%;transform:translateY(-50%);width:32px;height:36px;color:var(--text-secondary)}.comment-bar-send{border:0;background:none;color:var(--accent-text);font:600 var(--fs-body) var(--font);cursor:pointer;padding:0 var(--space-1);flex-shrink:0}.comment-bar-send[disabled]{color:var(--text-tertiary);cursor:not-allowed}.login-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6) var(--space-5);background:var(--bg)}.login-inner{width:100%;max-width:380px}.login-header{text-align:center;margin-bottom:var(--space-6)}.brand-mark{width:64px;height:64px;border-radius:16px;background:var(--brand-gradient);color:#fff;display:inline-grid;place-items:center;font:600 20px var(--font);letter-spacing:-.3px}.login-title{font-size:var(--fs-logo);font-weight:600;letter-spacing:-.3px;margin-top:var(--space-4)}.login-subtitle{font-size:var(--fs-body);color:var(--text-secondary);margin-top:var(--space-1)}.quick-account{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--bg)}.quick-account-row{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:var(--space-2) var(--space-3);border:0;border-bottom:1px solid var(--border);background:none;color:var(--text);font:400 var(--fs-body) var(--font);text-align:left;cursor:pointer}.quick-account-row:last-child{border-bottom:0}.quick-account-row:hover{background:var(--bg-secondary)}.waiting-screen{min-height:calc(100dvh - 44px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-5) var(--space-5) var(--space-6);text-align:center}.waiting-name{font-size:var(--fs-title);font-weight:600;margin-top:var(--space-4)}.waiting-when{font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);margin-top:var(--space-1)}.waiting-clock{color:var(--text-tertiary);margin-top:var(--space-5)}.waiting-clock svg{width:32px;height:32px}.waiting-message{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);margin-top:var(--space-2);max-width:320px}.waiting-chip{margin-top:var(--space-4)}.waiting-meter{margin-top:var(--space-5)}.waiting-action{width:100%;margin-top:var(--space-5);padding:0 var(--space-5)}.waiting-note{font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);margin-top:var(--space-3);max-width:320px}.step-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-3)}.step-panel.is-disabled{opacity:.5;pointer-events:none}.step-head{display:flex;align-items:center;gap:var(--space-3)}.step-number{width:20px;height:20px;flex-shrink:0;display:grid;place-items:center;border-radius:var(--radius-full);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--fs-meta);font-weight:600}.step-title{font-size:var(--fs-body);font-weight:600}.step-text{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-secondary);margin-top:var(--space-2)}.step-actions{margin-top:var(--space-4)}.moderation-row{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);animation:fade-in var(--dur-base) var(--ease)}.moderation-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-1)}.preview-frame{width:100%;border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-secondary);border:1px solid var(--border)}.preview-media{width:100%}.preview-media--encuadre{cursor:grab;touch-action:none;user-select:none}.preview-media--encuadre:active{cursor:grabbing}.preview-media--encuadre img{pointer-events:none}.preview-hint{margin-top:var(--space-2);font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary)}.preview-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);margin-top:var(--space-2)}.preview-meta-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.char-counter{position:absolute;right:var(--space-2);bottom:var(--space-2);font-size:var(--fs-meta);line-height:var(--lh-meta);color:var(--text-secondary);pointer-events:none}.comment-input-wrap .char-counter{bottom:auto;top:50%;right:var(--space-3);transform:translateY(-50%)}.textarea-wrap{position:relative}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes media-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@keyframes skeleton-shimmer{0%{opacity:1}50%{opacity:.55}to{opacity:1}}@keyframes like-pulse{0%{transform:scale(1)}40%{transform:scale(1.25)}to{transform:scale(1)}}.is-pulsing{animation:like-pulse .22s var(--ease)}.publication-overlay{position:fixed;inset:0;z-index:60;overflow-y:auto;overscroll-behavior:contain;background:var(--bg);-webkit-overflow-scrolling:touch}.publication-overlay .detail-bar{position:sticky;top:0;z-index:2;background:var(--bg)}.publication-overlay .comment-footer{bottom:0;padding-bottom:var(--safe-bottom)}@media (max-width: 639px){.stats-row{gap:var(--space-3)}}@media (min-width: 640px){.page{padding-left:var(--space-5);padding-right:var(--space-5)}}@media (min-width: 1024px){.bottom-nav,.app-bar{display:none}.side-nav{display:flex}.app-shell{padding-left:var(--side-nav-w)}.profile-head-top{gap:var(--space-6)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.skeleton,.spinner-inline{animation:none}}
