/* NIMA 1.4 — production interaction layer; retains 1.2 typography / layout */
[hidden] {display:none!important}
.system-alert {margin:16px 0;padding:16px;border-radius:13px;border:1px solid var(--line,#e1e5eb);background:var(--surface,#f7f8fa);font-size:14px;line-height:1.6}
button:disabled {opacity:.52;cursor:not-allowed}
.auth-modal {position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:20px}
.auth-screen{position:absolute;inset:0;background:rgba(8,11,16,.56);backdrop-filter:blur(8px)}
.auth-dialog {position:relative;z-index:1;width:min(100%,510px);max-height:90vh;overflow:auto;background:#fff;color:#121519;border-radius:22px;padding:clamp(24px,5vw,42px);box-shadow:0 30px 100px rgba(0,0,0,.25)}
.auth-dialog .field{margin:15px 0}.auth-dialog input{width:100%;background:#fafafa;border:1px solid #ddd;border-radius:10px;padding:12px 14px;font:inherit;color:#111}
.auth-dialog h2 {font-size:34px;margin:8px 0}.auth-dialog p{color:#666;line-height:1.5}.auth-close{position:absolute;right:21px;top:14px;font-size:27px;border:0;background:transparent;cursor:pointer}
.auth-switch{background:none;border:0;text-decoration:underline;cursor:pointer;color:#1469d4;padding:16px 0}.auth-status{min-height:24px;color:#a43636;line-height:1.5}
.auth-hint{font-size:12px!important;color:#74777e!important;line-height:1.55!important}.account-control{font-size:12px!important;white-space:nowrap}
.studio-login{background:var(--surface,#f7f8fa);border:1px solid var(--line,#e6e6e6);padding:36px;border-radius:20px;max-width:640px;margin:0 auto 80px}
.studio-topline{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;font-size:12px;color:var(--muted,#717579);flex-wrap:wrap}
.studio-pane-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.studio-pane-header h2{margin:6px 0 16px}.studio-editor{margin:20px 0 26px}.studio-editor textarea{min-height:120px;width:100%}
.studio-editor textarea[name="body"]{min-height:300px}.studio-editor input,.studio-editor select,.studio-editor textarea{width:100%;font:inherit;color:inherit;background:var(--bg,#fff);border:1px solid var(--line,#ddd);border-radius:10px;padding:12px}
.studio-form-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}.studio-table{margin-top:24px}.studio-table-row{border-top:1px solid var(--line,#ddd);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0}.studio-table-row small{display:block;margin-top:5px;opacity:.6;overflow-wrap:anywhere}
.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:25px 0}.metric{border:1px solid var(--line,#ddd);border-radius:14px;padding:18px}.metric small{display:block;color:var(--muted,#666)}.metric strong{display:block;font-size:32px;margin-top:7px}
.moderation-item{border-top:1px solid var(--line,#ddd);padding:19px 0;overflow-wrap:anywhere}.moderation-item p{white-space:pre-wrap}.moderation-item .status-pill{font-size:11px;margin-left:5px}
@media(max-width:650px){.auth-modal{padding:10px}.auth-dialog{border-radius:20px;padding:26px 21px}.metric-grid{grid-template-columns:1fr}.account-control{max-width:105px;overflow:hidden;text-overflow:ellipsis}.studio-main{min-width:0}.studio-table-row{align-items:flex-start}.studio-table-row .btn{flex-shrink:0}}
/* NIMA 1.5 — typography & micro-motion (Apple-inspired, not Apple trademark assets). */
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',Arial,sans-serif;font-kerning:normal;font-feature-settings:normal;text-rendering:optimizeLegibility}
h1,h2,h3,.brand,.feature-copy h3,.hero h1,.article-top h1,.article-copy .quote,.join-copy h1,.page-hero h1{letter-spacing:-.025em!important;overflow-wrap:break-word;word-break:normal;line-height:1.17!important;font-kerning:normal;font-feature-settings:normal}
.hero h1{font-size:clamp(56px,7.1vw,105px);font-weight:700;line-height:1.15!important;letter-spacing:-.035em!important}
.hero h1 span{background:linear-gradient(100deg,#5d6067,#85878d);background-clip:text;-webkit-background-clip:text;color:transparent}
.article-top h1{font-size:clamp(43px,5.5vw,72px);font-weight:720;line-height:1.18!important}
.article-copy .quote{letter-spacing:-.012em!important;line-height:1.43!important}
.feature-copy h3{font-size:clamp(31px,3.4vw,49px);line-height:1.18!important}
.page-hero h1,.join-copy h1{font-size:clamp(42px,5.5vw,76px);font-weight:700;line-height:1.14!important}
.brand{letter-spacing:-.025em!important;font-weight:740}
.studio-main h2,.auth-dialog h2{font-weight:700;line-height:1.18!important}
/* Completely new hero art: a single trajectory and dot, no large logo or thick oval effects. */
.feature-visual{background:linear-gradient(145deg,#f8f9fb 0%,#e8edf4 58%,#dde9f8 100%)!important;color:#182130!important;isolation:isolate;min-height:420px}
.feature-visual:before,.feature-visual:after{display:none!important}
.feature-graphic,.feature-corner{display:none!important}
.feature-orbit{width:min(73%,370px);height:152px;position:relative;overflow:visible}
.feature-stem{position:absolute;top:50%;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#6a859d 15%,#86a3bf 85%,transparent);transform:rotate(-11deg);opacity:.62}
.feature-satellite{position:absolute;left:0;top:calc(50% - 7px);width:14px;height:14px;background:var(--blue);border:3px solid #ecf4ff;border-radius:50%;box-shadow:0 0 0 1px rgba(0,113,227,.15),0 0 35px rgba(0,113,227,.16);animation:nima-sweep 7s cubic-bezier(.45,0,.55,1) infinite alternate}
.feature-caption{position:absolute;bottom:36px;left:34px;color:#1c2937;font-weight:700;font-size:14px;letter-spacing:0}
.feature-caption span{display:block;color:#6a7583;font-size:11px;font-weight:500;margin-top:5px}
@keyframes nima-sweep{0%{left:6%;transform:translateY(17px) scale(.9);opacity:.75}50%{transform:translateY(-3px) scale(1.06);opacity:1}100%{left:92%;transform:translateY(-17px) scale(.9);opacity:.75}}
/* replace old moving wave with one fine line; user preference for calm motion */
.thread-back{display:none}.thread-primary{stroke:color-mix(in srgb,var(--blue) 48%,transparent);stroke-width:1;opacity:.7}.thread-moving{r:4px;filter:none}
/* Personal studio */
.account-control{background:transparent;border:0;border-radius:999px;padding:9px 12px;color:var(--fg);font-size:12px;white-space:nowrap;cursor:pointer}
.account-control:hover{background:var(--surface)}
.studio-welcome{background:var(--surface);padding:44px;border-radius:24px;margin:20px auto 80px;max-width:680px}
.studio-welcome h2{font-size:clamp(26px,4vw,43px);margin:5px 0 15px}
.studio-welcome p{color:var(--secondary);line-height:1.65}
.studio-table-row strong{display:block;font-size:14px;line-height:1.35}
.studio-table-row small{color:var(--secondary);font-size:12px}
.studio-table-row .btn{white-space:nowrap}
.studio-editor h3{font-size:25px;margin-top:0}
.studio-editor .field textarea{line-height:1.5}
.comment-actions{display:flex;gap:22px;flex-wrap:wrap;margin:13px 0 3px}
.comment .replies{margin-left:22px;border-left:1px solid var(--line);padding-left:18px}
.comment .replies:empty{display:none}
.comment .replies .comment{padding-top:17px}
.inline-edit{width:100%;min-height:110px;resize:vertical;border-radius:14px;padding:15px;background:var(--bg);color:var(--fg);border:1px solid var(--line);line-height:1.55}
.reply-note{padding:12px 15px;border:1px solid var(--line);border-radius:12px;margin-bottom:14px;font-size:13px}
.dialog-open{overflow:hidden}
.auth-dialog .check{display:flex;gap:10px;align-items:flex-start}.auth-dialog .check input{width:auto;min-height:auto}
.author-stack .author-panel{margin:16px 0}
@media(max-width:680px){.hero h1{font-size:clamp(53px,12vw,78px);line-height:1.16!important}.article-top h1{font-size:clamp(40px,9vw,57px);line-height:1.21!important}.feature-visual{min-height:220px}.feature-orbit{height:90px}.feature-caption{bottom:20px;left:25px}.account-control{max-width:105px;text-overflow:ellipsis;overflow:hidden;padding-inline:7px}.studio-welcome{padding:28px}.comment .replies{margin-left:11px;padding-left:11px}.studio-main{padding:19px}.studio-pane-header .btn{font-size:12px}}
@media(prefers-reduced-motion:reduce){.feature-satellite{animation:none;left:50%}.thread-moving{display:none}}
/* NIMA 1.5 FINAL — typography, photography and live conversations */
:root {--nima-soft-blue: #eaf4ff}
html{scroll-behavior:smooth}
body,button,input,textarea,select{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif!important}
.hero h1,.page-hero h1,.article-top h1,.feature-copy h3,.studio-main h2,.auth-dialog h2,.join-copy h1{
 letter-spacing:-.009em!important;line-height:1.22!important;font-weight:680!important;
 font-kerning:normal;word-break:normal;overflow-wrap:break-word
}
.hero h1{font-weight:665!important;letter-spacing:-.015em!important}
.hero h1 span{background:linear-gradient(110deg,#55585e,#84868a);-webkit-background-clip:text;background-clip:text;color:transparent}
.feature-visual{background:radial-gradient(ellipse at 35% 30%,rgba(255,255,255,.96),transparent 62%),linear-gradient(145deg,#fafbfd,#f0f4fa 75%,#eaf2fb)!important}
.feature-stem{height:1px;opacity:.37;transform:rotate(-8deg)}
.feature-satellite{width:10px;height:10px;border:2px solid #d8eaff;animation:nima-sweep 9s ease-in-out infinite alternate;box-shadow:0 0 0 5px rgba(0,113,227,.045)}
.feature-caption{font-size:13px;letter-spacing:-.01em}
.nima-avatar{width:42px;height:42px;flex-shrink:0;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#e8ecf3,#dae3f0);color:#24344d;font-weight:700;font-size:13px;letter-spacing:.02em;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04)}
.nima-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.nima-avatar.small{width:24px;height:24px;border:2px solid var(--bg,#fff);font-size:9px}
.nima-avatar-stack{display:flex;align-items:center;padding-left:5px;margin-right:3px}
.nima-avatar-stack .nima-avatar{margin-left:-6px}
.nima-discussion-link{transition:transform .24s ease,background-color .24s ease}
.nima-discussion-link:hover{transform:translateY(-2px)}
.article-discussion{scroll-margin-top:86px}
.comment-feed{display:block}
.nima-thread{padding-top:15px;animation:nima-appear .4s cubic-bezier(.2,.8,.2,1) both}
.nima-comment-row{display:flex;align-items:flex-start;gap:11px}
.nima-comment-main{flex:1;min-width:0}
.nima-comment-bubble{background:var(--surface,#f6f7f9);padding:12px 15px;border-radius:17px;max-width:100%;width:fit-content;min-width:min(100%,195px)}
.nima-comment-author{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;font-weight:700;line-height:1.25;color:var(--fg)}
.nima-comment-date{font-size:11px;font-weight:400;color:var(--secondary)}
.nima-comment-text{margin:8px 0 0!important;line-height:1.5!important;font-size:14px!important;white-space:pre-wrap;overflow-wrap:anywhere}
.nima-comment-actions{display:flex;gap:15px;flex-wrap:wrap;align-items:center;padding:7px 5px}
.nima-comment-actions .react{cursor:pointer;font-size:11px;font-weight:600}
.nima-comment-actions .react.liked{color:var(--blue)}
.nima-reply-toggler{margin:0 0 8px 6px;cursor:pointer}
.nima-replies{margin-left:8px;padding-left:15px;border-left:1px solid var(--line,#e1e1e1)}
.nima-replies:empty{display:none}
.nima-replies .nima-avatar{width:34px;height:34px}
.nima-inline-reply{margin:9px 0 8px}
.nima-reply-form textarea{width:min(100%,590px);padding:12px 15px;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:14px;font:inherit;line-height:1.5;resize:vertical}
.nima-reply-form .btn{padding:9px 13px!important;font-size:12px!important}
.nima-profile-header{display:flex;align-items:center;gap:17px;margin:24px 0 17px}
.nima-profile-header .nima-avatar{width:76px;height:76px;font-size:27px}
.nima-profile-header strong,.nima-profile-header small{display:block;overflow-wrap:anywhere}
.nima-profile-header small{margin-top:6px;font-size:12px;color:var(--secondary)}
.nima-thread [hidden]{display:none!important}
@keyframes nima-appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nima-thread{animation:none}.nima-discussion-link{transition:none}}
@media(max-width:680px){.hero h1{font-size:clamp(49px,11vw,74px)}.feature-copy h3{font-size:clamp(29px,8vw,40px)}.feature-visual{min-height:200px!important}.nima-avatar{width:36px;height:36px}.nima-replies{padding-left:9px;margin-left:4px}.nima-comment-bubble{padding:11px 12px}.nima-comment-actions{gap:9px}}

/* NIMA 1.6 · editorial polish & accessibility */
:root{--nima-radius:20px}a,button,textarea,input,select{transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease,transform .24s cubic-bezier(.2,.8,.2,1)}
button:not(:disabled):active,.btn:not(:disabled):active{transform:scale(.978)}
:focus-visible{outline:3px solid #287de8!important;outline-offset:3px!important}
.nav-shell{backdrop-filter:saturate(165%) blur(18px);-webkit-backdrop-filter:saturate(165%) blur(18px)}
.auth-dialog{animation:nima-enter .24s cubic-bezier(.2,.8,.2,1) both}.auth-screen{animation:nima-fade .24s ease both}
.nima-comment-bubble,.nima-thread,.moderation-item{animation:nima-rise .33s ease both}
.nima-replies{border-inline-start:1px solid var(--line,#e6e8ec);margin-inline-start:15px;padding-inline-start:15px}
.nima-reply-form{margin:12px 0 20px}.nima-reply-form textarea{width:100%;border-radius:15px;padding:14px;background:var(--surface,#f6f7fa);color:var(--fg);border:1px solid var(--line,#ddd)}
.nima-avatar{box-shadow:0 2px 8px rgba(15,25,50,.06),inset 0 0 0 1px rgba(20,35,65,.08)}
.nima-avatar img{transition:transform .5s cubic-bezier(.2,.8,.2,1)}.nima-avatar:hover img{transform:scale(1.07)}
.nima-comment-actions button:hover:not(:disabled){color:var(--blue)}
.feature-block,.article-tile{transition:box-shadow .28s ease,transform .28s ease}.feature-block:hover{transform:translateY(-3px);box-shadow:0 22px 70px rgba(32,58,91,.07)}
.article-copy{max-width:75ch;margin-inline:auto}.auth-dialog .auth-switch{min-height:42px}.footer-links{row-gap:14px}
.legal-page{max-width:850px;margin:0 auto;padding:65px 22px 110px}.legal-page h1{font-size:clamp(42px,6.2vw,75px);line-height:1.09;letter-spacing:-.035em;margin:20px 0 23px}.legal-page h2{font-size:24px;margin:40px 0 10px;letter-spacing:-.025em}.legal-page p,.legal-page li{color:var(--secondary,#676b73);font-size:16px;line-height:1.8}.legal-page a{color:#176fd7;text-decoration:underline}.legal-page .eyebrow{color:#176fd7}
.legal-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px max(24px,calc((100vw - 1280px)/2));border-bottom:1px solid var(--line,#e5e7eb)}.legal-top a{color:var(--fg,#111);text-decoration:none}
@keyframes nima-fade{from{opacity:0}to{opacity:1}}@keyframes nima-enter{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes nima-rise{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media (max-width:650px){.legal-page{padding-top:42px}.legal-page h2{font-size:22px}.nima-replies{margin-inline-start:8px;padding-inline-start:8px}.auth-dialog{max-height:94dvh}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
