:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#0f172a;background-color:#f4f9ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f4f9ff}button,input,textarea{font:inherit}#root{min-height:100vh;width:100%}:root{--bsky-blue: #1083fe;--bsky-blue-dark: #0062c8;--bsky-blue-soft: #e8f3ff;--bsky-border: #d5e3f0;--bsky-text: #0f1419;--bsky-muted: #536471;--bsky-error: #b42318;--bsky-bg: #f4f9ff;--bsky-bg-tint: rgba(16, 131, 254, .12);--bsky-header-bg: rgba(255, 255, 255, .9);--bsky-surface: #ffffff;--bsky-surface-hover: #f8fbff}.app-shell{min-height:100vh;background:linear-gradient(180deg,var(--bsky-bg-tint),transparent 15rem),var(--bsky-bg);color:var(--bsky-text)}.app-header,.app-main{margin:0 auto;width:min(100%,600px)}.app-header{background:var(--bsky-header-bg);border-color:var(--bsky-border);border-style:solid;border-width:0 1px;padding:.85rem 1rem;position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.app-header__bar{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.app-header__title{min-width:0;text-align:left}.app-header__actions{align-items:flex-end;display:flex;flex-direction:column;gap:.35rem;min-width:fit-content}.app-header__actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.app-header__actions [data-scope=tag]{border-radius:999px}.app-header__user{color:var(--bsky-muted);font-size:.875rem;font-weight:600;max-width:16ch;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.app-main{background:var(--bsky-surface);border-color:var(--bsky-border);border-style:solid;border-width:0 1px;min-height:calc(100vh - 4.5rem)}.draft-toolbar{align-items:center;background:transparent;border:0;bottom:calc(env(safe-area-inset-bottom) + 1.25rem);display:flex;justify-content:flex-end;min-height:0;padding:0;pointer-events:none;position:fixed;right:max(1rem,calc((100vw - 600px)/2 + 1rem));width:calc((min(100vw,600px) - 2rem) / 3);z-index:6}.draft-toolbar__button{box-shadow:0 12px 28px #1083fe42;pointer-events:auto;width:100%}.draft-toolbar__button,.app-header__actions button,.post-card__actions button,.dialog-footer button{border-radius:999px;font-weight:700}.posts-grid{display:flex;flex-direction:column;padding-bottom:4rem}.empty-state{padding:3rem 1rem;text-align:center}.post-card{background:var(--bsky-surface);border-color:var(--bsky-border);border-style:solid;border-radius:0;border-width:0 0 1px;box-shadow:none;height:auto;min-width:0;padding:.85rem 1rem .6rem;text-align:left;transition:background-color .16s ease,border-color .16s ease}.post-card:hover{background:var(--bsky-surface-hover)}.post-card__layout{display:flex;gap:.75rem}.post-card__avatar-col{flex-shrink:0;padding-top:.15rem}.post-card__avatar{border-radius:50%;height:2.5rem;overflow:hidden;width:2.5rem}.post-card__content{flex:1;min-width:0}.post-card__identity{align-items:baseline;display:flex;flex-wrap:wrap;gap:.3rem;line-height:1.3;margin-bottom:.15rem}.post-card__display-name{color:var(--bsky-text);font-size:.9375rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-card__handle,.post-card__timestamp{color:var(--bsky-muted);font-size:.875rem}.post-card__timestamp:before{content:"·";margin-right:.3rem}.post-card__body{color:var(--bsky-text);font-size:.98rem;line-height:1.45;margin:0;overflow-wrap:anywhere;padding:0 0 .4rem;white-space:pre-wrap}.post-card__actions{align-items:center;display:flex;gap:.5rem;justify-content:flex-end;margin-top:.1rem;padding:0}.post-card__draft-actions{display:flex;gap:.15rem}.post-card__action-icon{opacity:.6;transition:opacity .16s ease}.post-card__action-icon:hover{opacity:1}.login-dialog,.draft-dialog{width:min(calc(100vw - 2rem),34rem)}.form-label{color:var(--bsky-text);font-size:.875rem;font-weight:600;text-align:left}.login-error{color:var(--bsky-error);font-size:.875rem}.app-header__brand{align-items:center;display:flex;gap:.5rem}.app-header__logo{flex-shrink:0}.app-header__heading{font-weight:800;letter-spacing:-.01em;line-height:1.1}.app-header__subtitle{font-size:.8rem;margin-left:calc(26px + .5rem)}.draft-composer{display:flex;gap:.75rem}.draft-composer__avatar-col{flex-shrink:0;padding-top:.2rem}.draft-composer__avatar{border-radius:50%;height:2.5rem;overflow:hidden;width:2.5rem}.draft-composer__textarea-col{flex:1;min-width:0}.draft-composer__textarea{border:none!important;box-shadow:none!important;font-size:1.0625rem!important;outline:none!important;padding:.25rem 0!important;resize:none}.char-ring{align-items:center;display:inline-flex;justify-content:center;position:relative}.char-ring__label{align-items:center;display:flex;font-size:.62rem;font-variant-numeric:tabular-nums;font-weight:600;top:0;right:0;bottom:0;left:0;justify-content:center;line-height:1;position:absolute}.login-dialog,.draft-dialog{border-radius:1.5rem}.dialog-footer{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}.draft-dialog__footer{justify-content:space-between}.dialog-actions{flex-wrap:wrap;justify-content:flex-end}@media (max-width: 1024px){.app-header,.app-main{border-width:0;width:100%}.draft-toolbar{right:1rem;width:min(calc((100vw - 2rem) / 3),12rem)}}@media (max-width: 640px){.app-header{padding:.75rem .85rem}.app-header__bar{align-items:flex-start}.app-header__actions,.dialog-actions{justify-content:stretch}.dialog-footer>button,.dialog-actions>button{width:100%}.dialog-footer,.dialog-actions{flex-direction:column}.post-card{padding:.85rem}.draft-dialog__footer{align-items:stretch}}html.dark{--bsky-blue: #208bfe;--bsky-blue-dark: #1472e4;--bsky-blue-soft: #1a2a40;--bsky-border: #2a3947;--bsky-text: #f1f3f5;--bsky-muted: #8a96a3;--bsky-error: #f87171;--bsky-bg: #161e27;--bsky-bg-tint: rgba(32, 139, 254, .08);--bsky-header-bg: rgba(22, 30, 39, .92);--bsky-surface: #1e2936;--bsky-surface-hover: #243344}html.dark body{background:#161e27}html.dark .draft-dialog,html.dark .login-dialog{background:var(--bsky-surface);border:2px solid #5f7488;box-shadow:0 0 0 1px #ffffff14;color:var(--bsky-text)}
