/* Codex.me UI · design system 0.5.57 */
:root{
  --ui-bg:#f3f5f7;--ui-panel:#ffffff;--ui-panel-alt:#f8fafc;--ui-ink:#0b1220;
  --ui-muted:#526174;--ui-line:#d7dee7;--ui-line-strong:#aeb9c7;
  --ui-accent:#00a8e8;--ui-accent-strong:#006f9f;--ui-accent-soft:#e6f7fd;
  --ui-positive:#177245;--ui-warning:#925a00;--ui-negative:#b42318;
  --ui-shadow:0 14px 34px rgba(11,18,32,.07);--ui-shadow-small:0 4px 14px rgba(11,18,32,.06);
  --ui-radius:2px;--ui-content:1280px;--ui-reading:760px;
}
html{background:var(--ui-bg)}
body.codex-ui{background:var(--ui-bg);color:var(--ui-ink);font-size:16px;line-height:1.58;letter-spacing:.002em}
body.codex-ui::before{content:"";position:fixed;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--ui-accent),#66d5ff 55%,var(--ui-accent-strong));z-index:90;pointer-events:none}
body.codex-ui .shell{width:min(var(--ui-content),calc(100% - 40px))}
body.codex-ui .narrow{max-width:var(--ui-reading)}
body.codex-ui .surface{background:var(--ui-panel);border:1px solid var(--ui-line);border-radius:var(--ui-radius);box-shadow:none}
body.codex-ui .surface:hover{border-color:#c5ced9}
body.codex-ui h1,body.codex-ui h2,body.codex-ui h3{color:var(--ui-ink);text-wrap:balance}
body.codex-ui h1{letter-spacing:-.038em;line-height:1.03}
body.codex-ui h2{letter-spacing:-.022em;line-height:1.14}
body.codex-ui p{max-width:72ch}
body.codex-ui a{text-decoration-thickness:1px}
body.codex-ui .kicker{color:var(--ui-accent-strong);font-size:.72rem;letter-spacing:.15em;font-weight:850}
body.codex-ui .handle,body.codex-ui .post-meta,body.codex-ui .muted,body.codex-ui small{color:var(--ui-muted)}
body.codex-ui .page-space{padding-block:46px 82px}
body.codex-ui .page-heading{margin:0 0 28px;padding-top:6px}
body.codex-ui .page-heading h1{font-size:clamp(2.15rem,5vw,4.25rem);margin:.28rem 0 .65rem}
body.codex-ui .page-heading p{margin:0;color:var(--ui-muted);font-size:1.03rem}
body.codex-ui .primary-button,body.codex-ui .secondary-button,body.codex-ui .danger-button,body.codex-ui .small-button,
body.codex-ui button:not(.icon-button):not(.menu-button):not([data-menu-close]){
  border-radius:var(--ui-radius);min-height:42px;font-weight:780;letter-spacing:.005em;box-shadow:none;transition:background-color .15s,border-color .15s,color .15s,transform .15s
}
body.codex-ui .primary-button{background:var(--ui-ink);border-color:var(--ui-ink);color:#fff}
body.codex-ui .primary-button:hover{background:#1a2639;border-color:#1a2639;color:#fff;transform:translateY(-1px)}
body.codex-ui .secondary-button{background:#fff;border-color:var(--ui-line-strong);color:var(--ui-ink)}
body.codex-ui .secondary-button:hover{background:var(--ui-panel-alt);border-color:#8190a3}
body.codex-ui .danger-button{background:var(--ui-negative);color:#fff}
body.codex-ui .small-button{background:#fff;border-color:var(--ui-line);color:var(--ui-ink)}
body.codex-ui .text-link,body.codex-ui .read-more{color:var(--ui-accent-strong);font-weight:780}
body.codex-ui .form{gap:20px}
body.codex-ui .form label{color:#263448;font-weight:760}
body.codex-ui .form input,body.codex-ui .form textarea,body.codex-ui .form select,
body.codex-ui input,body.codex-ui textarea,body.codex-ui select{
  border-radius:var(--ui-radius);border-color:var(--ui-line-strong);background:#fff;color:var(--ui-ink)
}
body.codex-ui .form input:focus,body.codex-ui .form textarea:focus,body.codex-ui .form select:focus,
body.codex-ui input:focus,body.codex-ui textarea:focus,body.codex-ui select:focus{
  border-color:var(--ui-accent-strong);box-shadow:0 0 0 3px rgba(0,168,232,.16);outline:0
}
body.codex-ui .flash{border-radius:var(--ui-radius);box-shadow:var(--ui-shadow-small)}
body.codex-ui .status-pill,body.codex-ui .status-badge{border-radius:999px;font-weight:820;letter-spacing:.04em}
body.codex-ui table{font-variant-numeric:tabular-nums}
body.codex-ui .empty-state{padding:50px 28px;background:linear-gradient(180deg,#fff,var(--ui-panel-alt))}
body.codex-ui .empty-mark{border-radius:50%;background:var(--ui-accent-soft);color:var(--ui-accent-strong)}
body.codex-ui .content-anchor{scroll-margin-top:90px}

/* 0.5.58 · header, drawer e footer */
body.codex-ui .site-header{top:0;background:rgba(255,255,255,.97);border-bottom:1px solid var(--ui-line);box-shadow:0 1px 0 rgba(11,18,32,.02);backdrop-filter:blur(16px)}
body.codex-ui .header-inner{min-height:74px;grid-template-columns:180px minmax(240px,680px) auto;gap:22px}
body.codex-ui .brand{width:164px;height:42px}
body.codex-ui .brand img{width:164px}
body.codex-ui .global-search input{height:44px;border-radius:2px;background:#f5f7f9;padding:0 44px 0 15px}
body.codex-ui .global-search::after{content:"⌕";position:absolute;right:15px;top:50%;translate:0 -52%;font-size:1.35rem;color:#718096;pointer-events:none}
body.codex-ui .menu-button{display:inline-flex;align-items:center;gap:10px;justify-self:end;height:44px;padding:0 14px;border:1px solid var(--ui-line-strong);border-radius:2px;background:#fff;color:var(--ui-ink)}
body.codex-ui .launcher-symbol{display:grid;grid-template-columns:repeat(2,5px);gap:3px}
body.codex-ui .launcher-symbol i{display:block;width:5px;height:5px;background:var(--ui-accent-strong)}
body.codex-ui .site-header nav{display:flex;position:fixed;z-index:82;right:0;top:0;bottom:0;width:min(390px,92vw);padding:18px 18px 34px;background:#fff;border-left:1px solid var(--ui-line);box-shadow:-22px 0 55px rgba(11,18,32,.14);transform:translateX(105%);transition:transform .22s ease;overflow-y:auto;overscroll-behavior:contain;align-content:start;align-items:stretch;justify-content:flex-start;flex-direction:column;gap:2px}
body.codex-ui .site-header nav.open{transform:none}
body.codex-ui .site-header nav a{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:10px 12px;border-radius:2px;border-bottom:1px solid #edf1f5;color:#233044;font-weight:700}
body.codex-ui .site-header nav a:hover{background:var(--ui-accent-soft);color:var(--ui-ink)}
body.codex-ui .site-header nav .nav-register{background:var(--ui-ink);color:#fff;border:0;margin-top:8px;justify-content:center}
body.codex-ui .site-header nav .nav-messages span,body.codex-ui .site-header nav .nav-notifications span{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--ui-accent);color:#00283a;font-size:.76rem}
body.codex-ui .mobile-nav-head{display:flex;position:sticky;top:-18px;z-index:2;align-items:center;justify-content:space-between;gap:20px;padding:18px 4px 15px;background:#fff;border-bottom:2px solid var(--ui-ink);margin-bottom:8px}
body.codex-ui .mobile-nav-head span{display:grid}
body.codex-ui .mobile-nav-head small{font-size:.78rem;color:var(--ui-muted)}
body.codex-ui .mobile-nav-head button{width:40px;height:40px;border:1px solid var(--ui-line);background:#fff;color:var(--ui-ink);font-size:1.6rem}
body.codex-ui .nav-backdrop{position:fixed;inset:0;z-index:80;background:rgba(8,15,28,.42);backdrop-filter:blur(2px);opacity:0;transition:opacity .2s}
body.codex-ui .nav-backdrop.open{opacity:1}
body.codex-ui.nav-open,body.codex-ui.nav-open body{overflow:hidden}
body.codex-ui .site-footer{margin-top:38px;background:#0a1322;color:#d9e3ef;border-top:3px solid var(--ui-accent)}
body.codex-ui .footer-main{display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(145px,1fr));gap:48px;padding-block:58px 48px}
body.codex-ui .footer-column h2{color:#fff;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px}
body.codex-ui .footer-column a{display:block;color:#c5d1df;text-decoration:none;padding:4px 0}
body.codex-ui .footer-column a:hover{color:#fff;text-decoration:underline}
body.codex-ui .footer-brand p{color:#aebdcd}
body.codex-ui .footer-bottom{border-top:1px solid #263447;color:#9fb0c3}

/* 0.5.59 · bacheca, composer e pubblicazioni */
body.codex-ui .experience-grid,body.codex-ui .social-shell{display:grid;grid-template-columns:230px minmax(0,680px) 280px;gap:22px;align-items:start;padding-block:30px 74px}
body.codex-ui .experience-left,body.codex-ui .experience-right,body.codex-ui .left-rail,body.codex-ui .right-rail{display:grid;gap:16px;position:sticky;top:96px}
body.codex-ui .experience-feed,body.codex-ui .main-feed{display:grid;gap:16px;min-width:0}
body.codex-ui .hero-040,body.codex-ui .welcome-panel{position:relative;overflow:hidden;border-top:3px solid var(--ui-accent);background:#fff;padding:32px}
body.codex-ui .hero-040::after,body.codex-ui .welcome-panel::after{content:"";position:absolute;right:-90px;top:-120px;width:260px;height:260px;border:52px solid var(--ui-accent-soft);border-radius:50%;opacity:.75;pointer-events:none}
body.codex-ui .hero-040 h1,body.codex-ui .welcome-panel h1{position:relative;z-index:1;font-size:clamp(2.45rem,6vw,4.8rem);max-width:760px;margin:.35rem 0 1rem}
body.codex-ui .hero-040 p,body.codex-ui .welcome-panel p{position:relative;z-index:1;color:var(--ui-muted);font-size:1.05rem}
body.codex-ui .profile-card,body.codex-ui .rail-nav,body.codex-ui .status-card-040,body.codex-ui .topics-card-040,body.codex-ui .people-card-040{padding:18px}
body.codex-ui .profile-cover-mini{margin:-18px -18px 0;height:86px;border-radius:0;background:linear-gradient(135deg,#0b1727,#004c6d 60%,#00a8e8)}
body.codex-ui .profile-card .profile-avatar{margin-top:-32px}
body.codex-ui .rail-nav{padding:8px}
body.codex-ui .rail-nav a{border-radius:2px;padding:10px 11px;border-left:3px solid transparent}
body.codex-ui .rail-nav a:hover,body.codex-ui .rail-nav a.active{background:var(--ui-accent-soft);border-left-color:var(--ui-accent-strong)}
body.codex-ui .feed-heading,body.codex-ui .stories-heading,body.codex-ui .section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:3px 2px}
body.codex-ui .feed-heading h2,body.codex-ui .stories-heading h2{margin:.2rem 0 0;font-size:1.45rem}
body.codex-ui .feed-tabs{display:flex;overflow:auto;padding:0;border-bottom:1px solid var(--ui-line)}
body.codex-ui .feed-tabs a{min-width:max-content;padding:13px 18px;text-decoration:none;font-weight:760;border-bottom:3px solid transparent}
body.codex-ui .feed-tabs a.active{border-bottom-color:var(--ui-accent-strong);color:var(--ui-accent-strong)}
body.codex-ui .feed-filters{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;padding:12px}
body.codex-ui .feed-filters button{padding-inline:18px;background:var(--ui-ink);color:#fff;border:0}
body.codex-ui .composer-card,body.codex-ui .social-composer-block{border-top:3px solid var(--ui-ink);padding:15px 17px;background:#fff}
body.codex-ui .composer-prompt{border-radius:2px;background:#f3f6f8;border:1px solid transparent}
body.codex-ui .composer-prompt:hover{border-color:var(--ui-line-strong);background:#fff}
body.codex-ui .story-rail,body.codex-ui .stories-strip{scrollbar-width:thin;scrollbar-color:#acbac8 transparent}
body.codex-ui .social-post{overflow:hidden;border-color:#cfd8e3;background:#fff}
body.codex-ui .social-post:hover{border-color:#9eacbc;box-shadow:var(--ui-shadow-small)}
body.codex-ui .post-header{padding:18px 20px 13px;border-bottom:1px solid #eef1f4}
body.codex-ui .post-copy{padding:20px 22px 22px}
body.codex-ui .post-copy h2{font-size:1.58rem;margin:.5rem 0 .7rem}
body.codex-ui .post-copy p{font-size:1.01rem;color:#263448}
body.codex-ui .post-taxonomy{display:flex;gap:7px;flex-wrap:wrap}
body.codex-ui .post-taxonomy span,body.codex-ui .post-taxonomy a{padding:4px 7px;background:#edf8fc;color:#005f87;text-decoration:none;font-size:.72rem;font-weight:800;letter-spacing:.035em;text-transform:uppercase}
body.codex-ui .post-media{background:#e9eef3;border-color:var(--ui-line)}
body.codex-ui .post-media img{max-height:760px;object-fit:contain;background:#101722}
body.codex-ui .post-footer{border-top:1px solid #edf1f4;padding:10px 14px;background:#fbfcfd;flex-wrap:wrap}
body.codex-ui .post-footer a,body.codex-ui .post-footer button{border-radius:2px}
body.codex-ui .post-footer a:hover,body.codex-ui .post-footer button:hover{background:var(--ui-accent-soft);color:var(--ui-accent-strong)}
body.codex-ui .promoted-label,body.codex-ui .pinned-label{margin-left:auto;padding:4px 8px;border:1px solid var(--ui-line);font-size:.7rem;font-weight:800;text-transform:uppercase}
body.codex-ui .mini-avatar,body.codex-ui .profile-avatar{background:linear-gradient(145deg,#0b1220,#21344d);box-shadow:0 0 0 1px #c9d3de}
body.codex-ui .topic-links a,body.codex-ui .person-row{border-bottom:1px solid #edf1f5;padding-block:10px;text-decoration:none}

/* 0.5.60 · profili, persone e relazioni */
body.codex-ui .profile-page{padding-block:28px 78px}
body.codex-ui .profile-cover{height:260px;border:1px solid var(--ui-line);border-bottom:0;background:linear-gradient(120deg,#081525,#004b6d 62%,#00a8e8);border-radius:0}
body.codex-ui .profile-summary{position:relative;margin-top:-1px;padding:0 28px 26px;border:1px solid var(--ui-line);background:#fff}
body.codex-ui .profile-summary .profile-avatar{translate:0 -52%;margin-bottom:-45px}
body.codex-ui .profile-title h1{font-size:clamp(2rem,5vw,3.8rem);margin:.3rem 0}
body.codex-ui .profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}
body.codex-ui .profile-main{display:grid;gap:16px}
body.codex-ui .profile-details,body.codex-ui .profile-about-panel,body.codex-ui .profile-private-panel{padding:24px}
body.codex-ui .profile-tabs{display:flex;gap:0;overflow:auto;border-bottom:1px solid var(--ui-line);background:#fff}
body.codex-ui .profile-tabs a{min-width:max-content;padding:14px 17px;border-bottom:3px solid transparent;text-decoration:none;font-weight:760}
body.codex-ui .profile-tabs a.active{border-bottom-color:var(--ui-accent-strong);color:var(--ui-accent-strong)}
body.codex-ui .profile-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--ui-line);background:#fff}
body.codex-ui .profile-metrics>div{padding:15px;border-right:1px solid var(--ui-line)}
body.codex-ui .profile-metrics>div:last-child{border-right:0}
body.codex-ui .profile-metrics strong{display:block;font-size:1.35rem}
body.codex-ui .people-grid,body.codex-ui .suggestion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
body.codex-ui .person-card,body.codex-ui .suggestion-card{padding:22px;border-top:3px solid transparent}
body.codex-ui .person-card:hover,body.codex-ui .suggestion-card:hover{border-top-color:var(--ui-accent)}
body.codex-ui .person-card-actions,body.codex-ui .profile-actions,body.codex-ui .relationship-actions{display:flex;gap:8px;flex-wrap:wrap}
body.codex-ui .relationships-page{padding-block:34px 78px}
body.codex-ui .relationship-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}
body.codex-ui .relationship-summary article{padding:18px;border-left:3px solid var(--ui-accent)}
body.codex-ui .relationship-summary strong{display:block;font-size:1.7rem}
body.codex-ui .relationship-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body.codex-ui .relationship-panel,body.codex-ui .relationship-lists{padding:22px}
body.codex-ui .relationship-list-card,body.codex-ui .notification-row,body.codex-ui .saved-card{border-radius:0;border-color:var(--ui-line)}
body.codex-ui .relationship-member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body.codex-ui .suggestion-reasons{padding:10px 0;color:var(--ui-muted);font-size:.86rem}
body.codex-ui .notification-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px 17px;background:#fff}
body.codex-ui .notification-row.message-unread{border-left:4px solid var(--ui-accent)}

/* 0.5.61 · messaggistica */
body.codex-ui .messages-page{padding-block:26px 76px}
body.codex-ui .messaging-layout{display:grid;grid-template-columns:330px minmax(0,1fr);min-height:680px;border:1px solid var(--ui-line);background:#fff}
body.codex-ui .conversation-sidebar{border-right:1px solid var(--ui-line);background:#f7f9fb;min-width:0}
body.codex-ui .conversation-sidebar-head{padding:18px;border-bottom:1px solid var(--ui-line);background:#fff}
body.codex-ui .conversation-list{display:grid;max-height:720px;overflow:auto;scrollbar-width:thin}
body.codex-ui .conversation-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;padding:14px 15px;border-bottom:1px solid #e8edf2;text-decoration:none;background:#f9fbfc}
body.codex-ui .conversation-row:hover{background:var(--ui-accent-soft)}
body.codex-ui .conversation-row.active{background:#fff;border-left:4px solid var(--ui-accent-strong);padding-left:11px}
body.codex-ui .conversation-row strong,body.codex-ui .conversation-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.codex-ui .conversation-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;background:#fff}
body.codex-ui .conversation-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;border-bottom:1px solid var(--ui-line);background:#fff}
body.codex-ui .conversation-header h1{font-size:1.35rem;margin:0}
body.codex-ui .conversation-tools{display:flex;gap:8px;flex-wrap:wrap}
body.codex-ui .message-thread{display:flex;flex-direction:column;gap:10px;padding:24px;overflow:auto;background:linear-gradient(180deg,#f5f8fa,#eef3f6)}
body.codex-ui .message-bubble{max-width:min(78%,680px);padding:12px 14px;border:1px solid #ccd6e1;border-radius:2px;background:#fff;align-self:flex-start;box-shadow:0 2px 8px rgba(11,18,32,.04)}
body.codex-ui .message-bubble.mine{align-self:flex-end;background:#e7f7fd;border-color:#a9dced}
body.codex-ui .message-bubble p{margin:.2rem 0;white-space:pre-wrap}
body.codex-ui .message-meta{display:flex;gap:8px;justify-content:flex-end;margin-top:5px;font-size:.72rem;color:var(--ui-muted)}
body.codex-ui .message-actions summary{cursor:pointer;color:var(--ui-muted)}
body.codex-ui .message-attachment{margin-top:10px;padding:10px;border:1px solid var(--ui-line);background:#fff}
body.codex-ui .message-composer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;padding:15px;border-top:1px solid var(--ui-line);background:#fff}
body.codex-ui .message-composer textarea{min-height:48px;max-height:180px;resize:vertical;padding:12px}
body.codex-ui .message-file{display:grid;align-content:center;padding:0 10px;border:1px solid var(--ui-line);font-size:.82rem}
body.codex-ui .message-file input{max-width:180px;border:0;padding:0}
body.codex-ui .conversation-empty-state{display:grid;place-items:center;align-content:center;text-align:center;padding:50px;min-height:560px}
body.codex-ui .message-empty-icon{display:grid;place-items:center;width:72px;height:72px;border:1px solid var(--ui-line);background:var(--ui-accent-soft);color:var(--ui-accent-strong);font-size:2rem;font-weight:900}
body.codex-ui .message-settings,body.codex-ui .message-report-form{margin:18px;padding:20px}
body.codex-ui .group-participants,body.codex-ui .message-people-list{display:grid;gap:8px}

/* 0.5.62 · pagine, eventi e calendario */
body.codex-ui .directory-page,body.codex-ui .events-page,body.codex-ui .calendar-page{padding-block:40px 82px}
body.codex-ui .entity-grid,body.codex-ui .event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
body.codex-ui .entity-card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:15px;padding:22px;border-top:3px solid var(--ui-ink)}
body.codex-ui .entity-mark{display:grid;place-items:center;width:58px;height:58px;background:var(--ui-ink);color:#fff;font-size:1.45rem;font-weight:900}
body.codex-ui .entity-mark.small{width:38px;height:38px;font-size:1rem}
body.codex-ui .entity-category,body.codex-ui .event-state{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ui-accent-strong);font-weight:850}
body.codex-ui .entity-card h2,body.codex-ui .event-card h2{font-size:1.28rem;margin:.3rem 0 .55rem}
body.codex-ui .entity-card h2 a,body.codex-ui .event-card h2 a{text-decoration:none}
body.codex-ui .entity-form,body.codex-ui .event-form{margin-top:34px;padding:28px;border-top:4px solid var(--ui-accent)}
body.codex-ui .entity-layout,body.codex-ui .event-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start;padding-block:32px 78px}
body.codex-ui .entity-hero,body.codex-ui .event-hero{padding:30px;border-top:4px solid var(--ui-accent-strong)}
body.codex-ui .entity-hero h1,body.codex-ui .event-hero h1{font-size:clamp(2.2rem,5vw,4.3rem);margin:.35rem 0}
body.codex-ui .entity-side,body.codex-ui .event-side{display:grid;gap:14px;position:sticky;top:96px}
body.codex-ui .entity-side>*,body.codex-ui .event-side>*{padding:20px}
body.codex-ui .entity-update{padding:21px;border-left:4px solid var(--ui-accent)}
body.codex-ui .event-card{display:grid;grid-template-columns:70px minmax(0,1fr);gap:17px;padding:20px}
body.codex-ui .event-card time{display:grid;place-items:center;align-content:center;height:74px;background:#0b1220;color:#fff;text-align:center}
body.codex-ui .event-card time strong{font-size:1.65rem;line-height:1}
body.codex-ui .event-card time span{font-size:.7rem;letter-spacing:.08em}
body.codex-ui .event-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--ui-line)}
body.codex-ui .event-counts>div{padding:14px;border-right:1px solid var(--ui-line)}
body.codex-ui .event-counts>div:last-child{border-right:0}
body.codex-ui .calendar-list{display:grid;gap:12px}
body.codex-ui .calendar-month{margin:28px 0 10px;padding-bottom:8px;border-bottom:2px solid var(--ui-ink)}
body.codex-ui .calendar-row{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:18px;align-items:center;padding:17px 20px}
body.codex-ui .calendar-row time{font-variant-numeric:tabular-nums;font-weight:800;color:var(--ui-accent-strong)}

/* 0.5.63 · editoria, album e video */
body.codex-ui .editor-page,body.codex-ui .editorial-admin{padding-block:32px 78px}
body.codex-ui .editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:22px;align-items:start}
body.codex-ui .editor-main,body.codex-ui .editor-side-stack{display:grid;gap:16px}
body.codex-ui .editor-block,body.codex-ui .editor-live-card{padding:24px}
body.codex-ui .editor-block{border-top:3px solid var(--ui-ink)}
body.codex-ui .editor-toolbar{display:flex;gap:6px;flex-wrap:wrap;padding:8px;background:#f3f6f8;border:1px solid var(--ui-line)}
body.codex-ui .editor-toolbar button{min-height:34px;padding:0 11px;background:#fff;border:1px solid var(--ui-line)}
body.codex-ui .editor-live-card{position:sticky;top:96px}
body.codex-ui .editor-live-media{margin:-24px -24px 18px;aspect-ratio:16/9;background:#0b1220;overflow:hidden}
body.codex-ui .editor-live-media img,body.codex-ui .editor-live-media video{width:100%;height:100%;object-fit:cover}
body.codex-ui .editorial-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
body.codex-ui .editorial-dashboard-grid article{padding:20px;border-top:3px solid var(--ui-accent)}
body.codex-ui .editorial-row{padding:20px;border-left:3px solid transparent}
body.codex-ui .editorial-row:hover{border-left-color:var(--ui-accent-strong)}
body.codex-ui .editorial-table th{background:#eef3f7;color:#34445a;font-size:.73rem;text-transform:uppercase;letter-spacing:.06em}
body.codex-ui .editorial-table th,body.codex-ui .editorial-table td{border-color:var(--ui-line)}
body.codex-ui .editorial-card-grid{gap:16px}
body.codex-ui .editorial-card{padding:21px;border-top:3px solid var(--ui-ink)}
body.codex-ui .post-poll{margin:20px 22px 24px;padding:22px;border:1px solid var(--ui-line);background:#f5fbfe}
body.codex-ui .poll-options label{border-radius:0}
body.codex-ui .album-grid{gap:14px}
body.codex-ui .album-item{padding:8px;background:#fff}
body.codex-ui .album-item img{aspect-ratio:4/3;background:#e7edf3}
body.codex-ui .video-library-grid{gap:16px}
body.codex-ui .video-library-card{border-top:3px solid var(--ui-accent-strong)}
body.codex-ui .video-library-card video{background:#07101d}
body.codex-ui .media-picker-grid,body.codex-ui .media-library-grid{gap:12px}
body.codex-ui .media-picker-item,body.codex-ui .media-card{border-radius:0;border-color:var(--ui-line)}

/* 0.5.64 · pannello amministrativo */
body.codex-ui.is-admin{background:#eef2f5}
body.codex-ui .admin-page{padding-block:28px 76px}
body.codex-ui .admin-head,body.codex-ui .admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:8px 0 22px;border-bottom:2px solid var(--ui-ink);margin-bottom:22px}
body.codex-ui .admin-head h1,body.codex-ui .admin-heading h1{font-size:clamp(2rem,4vw,3.35rem);margin:.25rem 0 .35rem}
body.codex-ui .admin-nav{display:flex;gap:0;overflow-x:auto;scrollbar-width:thin;padding:0 20px;background:#101a29;border-bottom:1px solid #263548;position:sticky;top:74px;z-index:30}
body.codex-ui .admin-nav a{min-width:max-content;padding:12px 13px;color:#cbd7e4;text-decoration:none;border-right:1px solid #263548;font-size:.82rem;font-weight:720}
body.codex-ui .admin-nav a:hover{background:#1c2a3c;color:#fff}
body.codex-ui .dashboard-kpis,body.codex-ui .metric-grid,body.codex-ui .release-status-grid,body.codex-ui .storage-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
body.codex-ui .dashboard-kpi,body.codex-ui .metric-card,body.codex-ui .release-status-card,body.codex-ui .storage-status-card{padding:19px;border-top:3px solid var(--ui-accent)}
body.codex-ui .dashboard-kpi strong,body.codex-ui .metric-card strong{display:block;font-size:1.8rem;font-variant-numeric:tabular-nums}
body.codex-ui .dashboard-main-grid,body.codex-ui .storage-main-grid,body.codex-ui .release-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);gap:16px}
body.codex-ui .dashboard-panel,body.codex-ui .admin-section,body.codex-ui .release-active,body.codex-ui .release-detail{padding:22px}
body.codex-ui .section-head,body.codex-ui .admin-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px solid var(--ui-line);margin-bottom:16px}
body.codex-ui .admin-table{width:100%;border-collapse:collapse}
body.codex-ui .admin-table th{background:#e9eff4;color:#304057;text-transform:uppercase;font-size:.7rem;letter-spacing:.06em}
body.codex-ui .admin-table th,body.codex-ui .admin-table td{padding:12px;border:1px solid var(--ui-line);text-align:left;vertical-align:top}
body.codex-ui .admin-table tr:nth-child(even) td{background:#fafbfd}
body.codex-ui .admin-card-list,body.codex-ui .diagnostic-grid,body.codex-ui .quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body.codex-ui .release-summary-grid,body.codex-ui .release-test-grid{gap:12px}
body.codex-ui .release-progress{height:12px;background:#dfe7ee;border-radius:0;overflow:hidden}
body.codex-ui .release-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--ui-accent-strong),var(--ui-accent))}
body.codex-ui .release-patch-list{counter-reset:patch;display:grid;gap:8px}
body.codex-ui .release-patch-list>*{counter-increment:patch;padding:13px 15px;border-left:4px solid var(--ui-line-strong);background:#fff}
body.codex-ui .release-patch-list>*::before{content:counter(patch,decimal-leading-zero);display:inline-block;margin-right:10px;color:var(--ui-accent-strong);font-weight:900}
body.codex-ui .readiness-score,body.codex-ui .operational-score{border-radius:0}
body.codex-ui .status-list-043>div{border-bottom:1px solid var(--ui-line)}
body.codex-ui .mini-chart{border-bottom:1px solid var(--ui-line);background:linear-gradient(180deg,#f8fbfd,#eef3f7)}

/* 0.5.65 · responsive, accessibilità e prestazioni */
.skip-link{position:fixed!important;left:14px;top:10px;z-index:200;padding:11px 15px;background:#fff;color:#000;border:3px solid #000;transform:translateY(-160%);transition:transform .15s}
.skip-link:focus{transform:none}
body.codex-ui :focus-visible{outline:3px solid #ffbf47!important;outline-offset:3px!important;box-shadow:none!important}
body.codex-ui [hidden]{display:none!important}
body.codex-ui img{height:auto}
body.codex-ui button:disabled,body.codex-ui input:disabled,body.codex-ui select:disabled{opacity:.58;cursor:not-allowed}
body.codex-ui .table-wrap,body.codex-ui .admin-table-wrap,body.codex-ui .responsive-table{overflow:auto;max-width:100%;scrollbar-width:thin}
body.codex-ui .network-status{position:sticky;top:74px;z-index:35;border-radius:0}
@media(max-width:1180px){
 body.codex-ui .experience-grid,body.codex-ui .social-shell{grid-template-columns:210px minmax(0,1fr)}
 body.codex-ui .experience-right,body.codex-ui .right-rail{display:none}
 body.codex-ui .entity-grid,body.codex-ui .event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.codex-ui .dashboard-kpis,body.codex-ui .metric-grid,body.codex-ui .release-status-grid,body.codex-ui .storage-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
 body.codex-ui .shell{width:min(100% - 28px,var(--ui-content))}
 body.codex-ui .header-inner{grid-template-columns:150px minmax(120px,1fr) auto;gap:12px}
 body.codex-ui .brand,body.codex-ui .brand img{width:148px}
 body.codex-ui .experience-grid,body.codex-ui .social-shell{grid-template-columns:1fr;padding-top:18px}
 body.codex-ui .experience-left,body.codex-ui .left-rail{position:static;grid-template-columns:1fr;order:2}
 body.codex-ui .experience-left .profile-card,body.codex-ui .experience-left .rail-nav,body.codex-ui .left-rail .profile-card,body.codex-ui .left-rail .rail-nav{display:none}
 body.codex-ui .profile-layout,body.codex-ui .entity-layout,body.codex-ui .event-layout,body.codex-ui .editor-layout,body.codex-ui .dashboard-main-grid,body.codex-ui .storage-main-grid,body.codex-ui .release-layout{grid-template-columns:1fr}
 body.codex-ui .profile-layout>aside,body.codex-ui .entity-side,body.codex-ui .event-side,body.codex-ui .editor-live-card{position:static}
 body.codex-ui .people-grid,body.codex-ui .suggestion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.codex-ui .messaging-layout{grid-template-columns:280px minmax(0,1fr)}
 body.codex-ui .editorial-dashboard-grid,body.codex-ui .dashboard-kpis,body.codex-ui .metric-grid,body.codex-ui .release-status-grid,body.codex-ui .storage-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.codex-ui .footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
}
@media(max-width:720px){
 body.codex-ui{font-size:15.5px}
 body.codex-ui .shell{width:min(100% - 20px,var(--ui-content))}
 body.codex-ui .header-inner{min-height:66px;grid-template-columns:128px 1fr auto;gap:8px}
 body.codex-ui .brand,body.codex-ui .brand img{width:126px}
 body.codex-ui .global-search input{height:40px;padding-inline:10px 34px;font-size:.9rem}
 body.codex-ui .menu-button{width:42px;height:40px;padding:0;justify-content:center}
 body.codex-ui .launcher-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
 body.codex-ui .page-space,body.codex-ui .directory-page,body.codex-ui .events-page,body.codex-ui .calendar-page{padding-block:28px 58px}
 body.codex-ui .page-heading,body.codex-ui .admin-head,body.codex-ui .admin-heading{align-items:flex-start;flex-direction:column}
 body.codex-ui .hero-040,body.codex-ui .welcome-panel{padding:24px 20px}
 body.codex-ui .hero-040 h1,body.codex-ui .welcome-panel h1{font-size:clamp(2.2rem,13vw,3.6rem)}
 body.codex-ui .feed-filters{grid-template-columns:1fr}
 body.codex-ui .post-header{padding:15px 15px 11px}
 body.codex-ui .post-copy{padding:17px 16px 19px}
 body.codex-ui .post-copy h2{font-size:1.35rem}
 body.codex-ui .post-media img{max-height:560px}
 body.codex-ui .profile-cover{height:180px}
 body.codex-ui .profile-summary{padding-inline:18px}
 body.codex-ui .profile-metrics{grid-template-columns:1fr}
 body.codex-ui .profile-metrics>div{border-right:0;border-bottom:1px solid var(--ui-line)}
 body.codex-ui .profile-metrics>div:last-child{border-bottom:0}
 body.codex-ui .people-grid,body.codex-ui .suggestion-grid,body.codex-ui .entity-grid,body.codex-ui .event-grid,body.codex-ui .relationship-columns,body.codex-ui .relationship-member-grid{grid-template-columns:1fr}
 body.codex-ui .relationship-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.codex-ui .messaging-layout{display:block;min-height:auto}
 body.codex-ui .conversation-sidebar{border-right:0;border-bottom:1px solid var(--ui-line)}
 body.codex-ui .conversation-list{display:flex;overflow-x:auto;max-height:none}
 body.codex-ui .conversation-row{min-width:260px;border-right:1px solid var(--ui-line)}
 body.codex-ui .conversation-main{min-height:620px}
 body.codex-ui .message-thread{padding:16px 12px}
 body.codex-ui .message-bubble{max-width:88%}
 body.codex-ui .message-composer{grid-template-columns:1fr auto;padding:10px}
 body.codex-ui .message-file{grid-column:1/-1}
 body.codex-ui .event-card{grid-template-columns:58px minmax(0,1fr);padding:15px}
 body.codex-ui .event-card time{height:62px}
 body.codex-ui .calendar-row{grid-template-columns:1fr;gap:6px}
 body.codex-ui .editorial-dashboard-grid,body.codex-ui .dashboard-kpis,body.codex-ui .metric-grid,body.codex-ui .release-status-grid,body.codex-ui .storage-status-grid,body.codex-ui .admin-card-list,body.codex-ui .diagnostic-grid,body.codex-ui .quality-grid{grid-template-columns:1fr}
 body.codex-ui .footer-main{grid-template-columns:1fr;padding-block:42px 34px}
 body.codex-ui .admin-nav{top:66px;padding-inline:10px}
}
@media(max-width:430px){
 body.codex-ui .global-search{display:none}
 body.codex-ui .header-inner{grid-template-columns:1fr auto}
 body.codex-ui .site-header nav{width:100vw}
 body.codex-ui .relationship-summary{grid-template-columns:1fr}
 body.codex-ui .post-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 body.codex-ui .post-footer>*{width:100%;text-align:center}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
@media(prefers-contrast:more){body.codex-ui{--ui-line:#7e8997;--ui-line-strong:#4d5968;--ui-muted:#344155}body.codex-ui .surface{border-width:2px}}
@media(forced-colors:active){body.codex-ui .primary-button,body.codex-ui .entity-mark,body.codex-ui .event-card time{forced-color-adjust:auto}body.codex-ui :focus-visible{outline:3px solid Highlight!important}}
@media print{body.codex-ui .site-header,body.codex-ui .site-footer,body.codex-ui .admin-nav,body.codex-ui .post-footer,body.codex-ui .actions-row{display:none!important}body.codex-ui,body.codex-ui .surface{background:#fff!important;color:#000!important;box-shadow:none!important}body.codex-ui .shell{width:100%!important}}

/* 0.5.66 · collaudo e rifiniture finali */
body.codex-ui .ui-quality-banner{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:18px 20px;border-left:5px solid var(--ui-positive)}
body.codex-ui .ui-quality-banner.warning{border-left-color:var(--ui-warning)}
body.codex-ui .ui-quality-score{display:grid;place-items:center;width:66px;height:66px;background:#0b1220;color:#fff;font-size:1.25rem;font-weight:900;font-variant-numeric:tabular-nums}
body.codex-ui .ui-quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:18px}
body.codex-ui .ui-quality-card{padding:18px;border-top:3px solid var(--ui-line-strong)}
body.codex-ui .ui-quality-card.ok{border-top-color:var(--ui-positive)}
body.codex-ui .ui-quality-card h2{font-size:1rem;margin:.3rem 0}
body.codex-ui .ui-quality-links{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}
body.codex-ui .ui-viewport-table td:first-child{font-weight:820}
body.codex-ui .release-train-page .release-install-box{border-top:4px solid var(--ui-accent);background:#fff}
body.codex-ui .release-train-page .release-status-value{font-variant-numeric:tabular-nums}
body.codex-ui .release-train-page .release-order{list-style:none;padding:0}
body.codex-ui .release-train-page .release-order li{padding:12px;border-bottom:1px solid var(--ui-line)}
@media(max-width:900px){body.codex-ui .ui-quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){body.codex-ui .ui-quality-banner{grid-template-columns:1fr}body.codex-ui .ui-quality-grid{grid-template-columns:1fr}}
