.tww-public-body { min-height: 100vh; font-size: calc(16px * var(--tww-font-scale, 1)); }
.tww-public-section { padding: clamp(2rem, 5vw, 5rem) 0; }
.tww-public-page-header { display: flex; justify-content: space-between; gap: 1.25rem; align-items: end; margin-bottom: clamp(1.25rem, 3vw, 2.5rem); }
.tww-public-page-header h1 { max-width: 22ch; overflow-wrap: anywhere; }
.tww-public-filter-bar { display: flex; flex-wrap: wrap; align-items: end; gap: .75rem; padding: 1rem; margin-bottom: 1.25rem; border: 1px solid var(--tww-border, rgba(100,116,139,.25)); border-radius: 1rem; background: var(--tww-surface, rgba(255,255,255,.8)); }
.tww-public-filter-bar label { flex: 1 1 16rem; }
.tww-public-filter-bar label span { display: block; margin-bottom: .35rem; font-weight: 700; }
.tww-public-filter-bar input, .tww-public-filter-bar select { width: 100%; min-height: 2.8rem; border-radius: .75rem; padding: .65rem .85rem; }
.tww-public-card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: 1rem; }
.tww-public-card { overflow: hidden; border: 1px solid var(--tww-border, rgba(100,116,139,.25)); border-radius: 1rem; background: var(--tww-surface, #fff); }
.tww-public-card-body { padding: 1rem; }
.tww-blog-card-media { display: block; aspect-ratio: 16 / 9; background: #e2e8f0; }
.tww-blog-card-media img, .tww-portfolio-media img { width: 100%; height: 100%; object-fit: cover; }
.tww-public-meta-row { display: flex; flex-wrap: wrap; gap: .4rem .8rem; font-size: .82rem; opacity: .75; }
.tww-reading-container { max-width: 74rem; }
.tww-blog-gallery, .tww-portfolio-gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: .8rem; margin-block: 1.5rem; }
.tww-blog-gallery figure, .tww-portfolio-gallery figure { margin: 0; overflow: hidden; border-radius: 1rem; border: 1px solid var(--tww-border, rgba(100,116,139,.25)); }
.tww-blog-gallery img, .tww-portfolio-gallery img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.tww-blog-gallery figcaption, .tww-portfolio-gallery figcaption { padding: .65rem .8rem; font-size: .85rem; }
.tww-responsive-embed { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 1rem; margin-block: 1.5rem; }
.tww-responsive-embed iframe, .tww-blog-video video { width: 100%; height: 100%; border: 0; }
.tww-blog-video { margin-block: 1.5rem; }
.tww-blog-resources { padding: 1rem; margin-block: 1.5rem; border-radius: 1rem; border: 1px solid var(--tww-border, rgba(100,116,139,.25)); }
.tww-rich-content { font-size: 1.05rem; line-height: 1.75; overflow-wrap: anywhere; }
.tww-rich-content :where(img, video, iframe) { max-width: 100%; }
.tww-stack-note { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--tww-border, rgba(100,116,139,.25)); font-size: .8rem; opacity: .72; }
.tww-public-empty-state { grid-column: 1 / -1; padding: 2rem; text-align: center; border: 1px dashed var(--tww-border, rgba(100,116,139,.35)); border-radius: 1rem; }
@media (max-width: 42rem) { .tww-public-page-header { align-items: start; flex-direction: column; } .tww-public-filter-bar > * { width: 100%; } }
html[data-density="compact"] .tww-public-section { padding-block: clamp(1.5rem, 3.5vw, 3.5rem); }
html[data-density="spacious"] .tww-public-section { padding-block: clamp(2.75rem, 6vw, 6rem); }
html[data-motion="reduced"] *, html[data-motion="reduced"] *::before, html[data-motion="reduced"] *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
html[data-theme="light"] body.tww-public-body:not([data-public-theme="portfolio_neon"]) { --tww-surface: rgba(255,255,255,.94); --tww-border: rgba(100,116,139,.24); color: #0f172a; }
html[data-theme="light"] body.tww-public-body:not([data-public-theme="portfolio_neon"]) .tww-shell { background: radial-gradient(circle at 16% 8%, color-mix(in srgb, var(--tww-primary) 18%, transparent), transparent 28rem), radial-gradient(circle at 84% 14%, rgba(14,165,233,.14), transparent 25rem), linear-gradient(135deg,#f8fafc 0%,#eef4ff 50%,#f8fafc 100%); color: #0f172a; }
html[data-theme="light"] body.tww-public-body:not([data-public-theme="portfolio_neon"]) .tww-shell::before { opacity: .3; filter: invert(1); }
html[data-theme="light"] body.tww-public-body:not([data-public-theme="portfolio_neon"]) :where(.tww-public-page-header h1,.tww-public-card h2,.tww-rich-content h1,.tww-rich-content h2,.tww-rich-content h3) { color: #0f172a; }
html[data-theme="light"] body.tww-public-body:not([data-public-theme="portfolio_neon"]) :where(.tww-public-page-header p,.tww-public-card p,.tww-rich-content,.tww-blog-resources,.tww-stack-note) { color: #475569; }
html[data-theme="light"] body.tww-public-body:not([data-public-theme="portfolio_neon"]) .tww-public-nav .tww-nav-inner { background: rgba(255,255,255,.9); border-color: rgba(15,23,42,.1); }
html[data-theme="light"] body.tww-public-body:not([data-public-theme="portfolio_neon"]) .tww-brand-title { color: #0f172a; }
html[data-theme="light"] body.tww-public-body:not([data-public-theme="portfolio_neon"]) :where(.tww-menu a,.tww-nav-link) { color: #334155; }
html[data-theme="light"] body.tww-public-body:not([data-public-theme="portfolio_neon"]) .tww-footer { background: #e2e8f0; color: #334155; }
