/* Public Nova group identity: deliberately isolated from workspace forms. */
.nova-group-profile{--ngp-accent:#9f7aff;--ngp-light:#cbb9ff;max-width:720px;margin:0 auto;padding:0 0 28px;color:var(--text)}
.nova-group-profile [hidden]{display:none!important}
.ngp-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0 14px;font-size:14px;font-weight:750;letter-spacing:.01em}
.ngp-icon-button{display:grid;place-items:center;width:42px;height:42px;background:var(--surface,rgba(20,30,50,.7));border:1px solid var(--line);border-radius:13px;color:var(--text);font-size:24px;cursor:pointer}
.ngp-loading,.ngp-error{padding:24px;text-align:center;color:var(--muted);border-radius:20px}.ngp-error p{font-size:13px;line-height:1.5}.ngp-error button{margin-top:10px}
.ngp-body{border:1px solid rgba(151,135,244,.18);border-radius:23px;overflow:hidden;background:linear-gradient(180deg,rgba(16,19,49,.92),rgba(9,16,31,.72));color:#f2f2ff;box-shadow:0 18px 48px rgba(5,4,24,.2)}
.ngp-body[data-ngp-accent=blue]{--ngp-accent:#5da3ff;--ngp-light:#b4daff}.ngp-body[data-ngp-accent=mint]{--ngp-accent:#54d5c4;--ngp-light:#a6f1e4}
.ngp-banner{height:clamp(155px,40vw,230px);position:relative;overflow:hidden;background:radial-gradient(ellipse at 78% 48%,#7054b7 1%,transparent 48%),radial-gradient(ellipse at 18% 85%,#3c438e,transparent 54%),linear-gradient(135deg,#0d1640,#31205a 57%,#08163b)}
.ngp-banner-orb{position:absolute;width:155px;height:155px;right:10%;top:10%;border-radius:50%;background:radial-gradient(circle at 32% 20%,#d1b8ff,#664ea9 46%,#14255a 78%);box-shadow:0 0 56px #9980ff55;transform:rotate(-25deg)}
.ngp-banner-orb:after{content:"";position:absolute;inset:39%;border:10px solid #e1d5ff88;border-radius:50%;transform:scaleX(5) rotate(-24deg);box-shadow:0 0 20px #9e87ff55}
.ngp-banner-stars{position:absolute;inset:0;background-image:radial-gradient(#fff9 1px,transparent 1.5px),radial-gradient(#b3c3ff99 1px,transparent 1.5px);background-size:57px 62px,94px 89px;background-position:8px 7px,33px 24px;opacity:.62}
.ngp-banner-brand{position:absolute;left:22px;top:36%;z-index:1;display:flex;flex-direction:column;gap:2px;text-shadow:0 2px 14px #09061dcc;letter-spacing:5px}.ngp-banner-brand strong{font-size:26px;line-height:1}.ngp-banner-brand small{font-size:9px;letter-spacing:3px}
.ngp-banner img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:2}
.ngp-body[data-ngp-theme=minimal] .ngp-banner{background:linear-gradient(125deg,#111b2d,#39315c 65%,#132339)}.ngp-body[data-ngp-theme=minimal] .ngp-banner-orb{opacity:.15}
.ngp-body[data-ngp-theme=premium] .ngp-banner{background:radial-gradient(ellipse at 78% 40%,#d891e480,transparent 56%),linear-gradient(120deg,#0c1839,#433887,#13253d)}
.ngp-body[data-ngp-theme=premium] .ngp-banner-orb{background:radial-gradient(circle at 31% 21%,#ffe4ff,#b27add 48%,#3c467f 82%)}
.ngp-identity{margin:-16px 12px 14px;z-index:3;position:relative;padding:15px 15px 17px;border-radius:20px;background:linear-gradient(145deg,rgba(25,31,68,.97),rgba(13,22,47,.97));border:1px solid rgba(165,157,255,.2)}
.ngp-identity-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;margin-bottom:10px}
.ngp-avatar{width:74px;height:74px;flex:0 0 74px;border:3px solid var(--ngp-accent);border-radius:20px;background:#282b65;display:grid;place-items:center;box-shadow:0 0 22px color-mix(in srgb,var(--ngp-accent),transparent 70%);font-size:30px;font-weight:850;overflow:hidden}
.ngp-avatar img{width:100%;height:100%;object-fit:cover}.ngp-community-mark{font-size:11px;color:var(--ngp-light);background:#a4a0ff16;padding:9px 11px;border-radius:99px;text-align:center}
.ngp-identity h1{margin:0 0 3px;color:#fff;line-height:1.15;font-size:24px;overflow-wrap:anywhere}.ngp-username{margin:3px 0 8px;color:var(--ngp-light);font-size:13px;overflow-wrap:anywhere}
.ngp-description{font-size:13px;line-height:1.6;color:#d3dcf6;white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0 16px}
.ngp-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ngp-metrics>div{background:#26315a8c;border:1px solid #ffffff0e;border-radius:13px;display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:67px;gap:3px;text-align:center;padding:6px 2px}.ngp-metrics strong{font-size:19px;line-height:1.2;color:#fff}.ngp-metrics span{font-size:10px;color:#b5c2e7}
.ngp-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.ngp-button{padding:11px 14px;border:0;border-radius:12px;background:var(--ngp-accent);color:#101128;font-size:13px;font-weight:800;cursor:pointer;min-height:44px}.ngp-join{flex:1 1 150px}.ngp-outline{border:1px solid #8377c763;background:#9f7aff20;color:#eef0ff;flex:1 1 120px}
.ngp-tabs{display:flex;margin:0 12px 15px;padding:4px;background:#25294a;border-radius:13px;gap:4px}.ngp-tabs button{font-size:12px;font-weight:750;min-width:0;flex:1;min-height:37px;border:none;border-radius:10px;color:#aeb8d4;background:transparent;cursor:pointer}.ngp-tabs .is-active{background:#49436f;color:#fff;box-shadow:0 2px 8px #05031455}
.ngp-panel{margin:0 12px 18px;display:grid;gap:12px}.ngp-section{border:1px solid rgba(159,122,255,.21);border-radius:16px;padding:16px;background:rgba(26,32,63,.8)}.ngp-eyebrow{display:block;color:var(--ngp-light);font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:700;margin-bottom:8px}.ngp-section h2{color:#fff;font-size:16px;margin:0 0 9px}.ngp-section p{color:#c8d0e7;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6;margin:0 0 8px}.ngp-section p:last-child{margin-bottom:0}.ngp-rules{max-height:310px;overflow:auto}
.ngp-chart{display:flex;align-items:end;gap:7px;height:158px;padding:12px 2px 0;justify-content:space-between}.ngp-chart-col{display:flex;flex:1;min-width:0;align-items:center;flex-direction:column;gap:6px;height:100%;justify-content:flex-end}.ngp-chart-col small{font-size:10px;color:#c9d0ea;max-width:100%;white-space:nowrap}.ngp-chart-bar{background:linear-gradient(180deg,var(--ngp-light),var(--ngp-accent));border-radius:8px 8px 4px 4px;min-height:4px;width:100%;max-width:32px;box-shadow:0 0 10px #8476c733}.ngp-hint{font-size:11px!important;margin-top:13px!important}
.ngp-editor-overlay{position:fixed;inset:0;z-index:1500;background:#050612d9;padding:20px 12px;display:flex;align-items:center;justify-content:center}.ngp-editor{background:#121b33;border:1px solid #655c92;border-radius:19px;color:#f1efff;max-width:520px;width:100%;max-height:86dvh;overflow-y:auto;padding:18px;overscroll-behavior:contain}.ngp-editor-head{display:flex;justify-content:space-between;align-items:center;gap:9px}.ngp-editor-head h2{font-size:18px;margin:0}.ngp-editor-head button{border:0;background:transparent;color:#fff;min-width:40px;min-height:40px;font-size:17px}.ngp-label{display:grid;gap:8px;font-size:13px;font-weight:700;margin:14px 0}.ngp-label small{font-size:11px;color:#aeb8d4;font-weight:500}.ngp-label textarea{resize:vertical;max-height:180px;min-height:80px;color:#fff;background:#0c142a;padding:12px;border:1px solid #7771a944;border-radius:11px;font:inherit}.ngp-label input[type=file]{width:100%;font-size:12px;max-width:100%}.ngp-options{border:1px solid #7b74ae47;border-radius:12px;padding:10px;margin:10px 0;display:flex;flex-wrap:wrap;gap:10px 15px}.ngp-options legend{font-size:12px;font-weight:750;color:#cfbaff}.ngp-options label{font-size:12px;display:flex;gap:5px;align-items:center;cursor:pointer}.ngp-options input{accent-color:#9975ff}.ngp-save{width:100%}.ngp-remove-cover{color:#ffc7c7;border:0;background:transparent;padding:6px 0 14px;cursor:pointer;font-size:12px}
@media(prefers-reduced-motion:no-preference){.ngp-body:not([data-ngp-theme=minimal]) .ngp-banner-stars{animation:ngp-stars 18s linear infinite}.ngp-banner-orb{animation:ngp-float 7s ease-in-out infinite}}@keyframes ngp-stars{to{background-position:65px 69px,127px 113px}}@keyframes ngp-float{50%{transform:rotate(-25deg) translateY(-5px)}}
@media(max-width:350px){.ngp-community-mark{font-size:9px;padding:7px}.ngp-metrics strong{font-size:16px}.ngp-identity h1{font-size:21px}}

.ngp-workspace-link{display:flex;width:100%;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;margin:4px 0 15px;border:1px solid #9483e855;border-radius:14px;color:var(--text);background:linear-gradient(120deg,#6e5cd124,#a78cff13);font-size:13px;font-weight:800;cursor:pointer}.ngp-workspace-link span{font-size:22px;color:var(--mint)}

.ngp-editor-overlay[hidden]{display:none!important}

/* Saving feedback stays visible in the editor; errors never destroy a draft. */
.ngp-save-status{margin:8px 0 12px;font-size:12px;line-height:1.5;color:#c6e6e0}
.ngp-save-status.is-error{color:#ffc4c4}
.ngp-save:disabled{opacity:.65;cursor:progress}
.ngp-remove-cover[aria-pressed=true]{color:#d6edff}

/* Nova Group Studio: isolated from the private workspace and account profile. */
.ngp-body[data-ngp-accent=rose]{--ngp-accent:#f29cbe;--ngp-light:#ffcbdf}
.ngp-body[data-ngp-accent=gold]{--ngp-accent:#edc77d;--ngp-light:#ffe3ac}
.ngp-body[data-ngp-background=nebula]{background:radial-gradient(ellipse at 15% 5%,#58418170,transparent 70%),linear-gradient(150deg,#151634,#11162e 70%,#23163a)}
.ngp-body[data-ngp-background=aurora]{background:radial-gradient(ellipse at 80% 5%,#267d7161,transparent 64%),linear-gradient(160deg,#102b35,#0c172c 80%)}
.ngp-body[data-ngp-background=eclipse]{background:radial-gradient(ellipse at 55% 4%,#343a706a,transparent 62%),linear-gradient(155deg,#0c1023,#141a30 80%)}
.ngp-body[data-ngp-background=royal]{background:radial-gradient(ellipse at 75% 6%,#704e535c,transparent 62%),linear-gradient(145deg,#271b32,#121728 85%)}
.ngp-body[data-ngp-cover-preset=nebula] .ngp-banner{background:radial-gradient(ellipse at 76% 42%,#c09bfaaf 0%,#5c45a689 22%,transparent 49%),radial-gradient(ellipse at 18% 73%,#6375c5,transparent 52%),linear-gradient(118deg,#12133c,#392264 60%,#131a46)}
.ngp-body[data-ngp-cover-preset=aurora] .ngp-banner{background:radial-gradient(ellipse at 60% 0%,#8af4d17a,transparent 54%),repeating-linear-gradient(120deg,transparent 0 18px,#7bdccb13 20px 33px,transparent 43px 68px),linear-gradient(135deg,#071d36,#19545e 62%,#0b1932)}
.ngp-body[data-ngp-cover-preset=eclipse] .ngp-banner{background:radial-gradient(circle at 73% 49%,#070d26 0 15%,#a1adf9a5 17%,#414d88a1 19%,transparent 36%),radial-gradient(ellipse at 30% 60%,#2c326a90,transparent 65%),linear-gradient(145deg,#090c1b,#1d244c)}
.ngp-body[data-ngp-cover-preset=royal] .ngp-banner{background:radial-gradient(ellipse at 73% 30%,#f9d89480,transparent 42%),repeating-linear-gradient(135deg,transparent 0 41px,#efc77b0e 42px 44px,transparent 45px 80px),linear-gradient(140deg,#1e1831,#60414c 60%,#211b34)}
.ngp-body[data-ngp-frame=none] .ngp-avatar{border-color:#ffffff22;box-shadow:none}
.ngp-body[data-ngp-frame=orbit] .ngp-avatar{border-color:#bba0ff;box-shadow:0 0 0 2px #5c4d97,0 0 22px #a38cff88,inset 0 0 11px #ae8ff366}
.ngp-body[data-ngp-frame=aura] .ngp-avatar{border-color:#79e9d5;box-shadow:0 0 0 2px #316a69,0 0 23px #60ded08a,inset 0 0 12px #67e6cb66}
.ngp-body[data-ngp-frame=eclipse] .ngp-avatar{border-color:#a3b0ff;box-shadow:0 0 0 3px #252b4c,0 0 0 5px #a8b4f977,0 0 20px #8d95e277}
.ngp-body[data-ngp-frame=crown] .ngp-avatar{border-color:#f4cf89;box-shadow:0 0 0 2px #785936,0 0 21px #e7b9767a,inset 0 0 9px #ffda9555}
.ngp-body[data-ngp-frame=crown] .ngp-avatar{border-radius:19px 19px 23px 23px}
.ngp-body[data-ngp-effect=none] .ngp-banner-stars{opacity:.12;animation:none!important}
.ngp-body[data-ngp-effect=none] .ngp-banner-orb{animation:none!important}
.ngp-body[data-ngp-effect=glow] .ngp-banner-orb{box-shadow:0 0 70px color-mix(in srgb,var(--ngp-accent),transparent 53%)}
@media(prefers-reduced-motion:no-preference){
.ngp-body[data-ngp-effect=stars] .ngp-banner-stars{animation:ngp-stars 18s linear infinite}
.ngp-body[data-ngp-effect=pulse] .ngp-avatar{animation:ngp-energy-pulse 4.5s ease-in-out infinite}
.ngp-body[data-ngp-effect=glow] .ngp-banner-orb{animation:ngp-energy-pulse 5s ease-in-out infinite}
}
@keyframes ngp-energy-pulse{50%{filter:brightness(1.35);box-shadow:0 0 30px color-mix(in srgb,var(--ngp-accent),transparent 40%)}}
@media(prefers-reduced-motion:reduce){.nova-group-profile *, .ngp-studio *{animation:none!important;transition:none!important}}

/* Fullscreen catalog is scrollable; save controls remain visible on mobile. */
.ngp-studio-overlay{padding:0;align-items:stretch;justify-content:center;z-index:1600;overscroll-behavior:contain}
.ngp-studio{padding:0;width:100%;max-width:720px;max-height:100dvh;height:100dvh;border-radius:0;border:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 60px #0009;background:#0c1429}
.ngp-studio .ngp-editor-head{flex:0 0 auto;padding:13px 15px 11px;background:#111a31;border-bottom:1px solid #8a80b333}
.ngp-studio .ngp-editor-head small{font-size:11px;color:#b9c0db;display:block;margin-top:4px}
.ngp-studio .ngp-editor-head button{font-size:21px}
.ngp-studio-scroll{overflow-y:auto;flex:1 1 auto;min-height:0;padding:13px 13px 20px;overscroll-behavior:contain}
.ngp-studio-preview{border:1px solid #8b86d255;border-radius:17px;overflow:hidden;box-shadow:0 10px 22px #0003}
.ngp-studio-preview .ngp-banner{height:auto;aspect-ratio:5/2;min-height:120px}
.ngp-studio-preview .ngp-banner-brand{top:35%;left:17px}.ngp-studio-preview .ngp-banner-brand strong{font-size:19px}
.ngp-studio-info{padding:12px;display:flex;align-items:center;gap:14px}
.ngp-studio-info .ngp-avatar{width:64px;height:64px;flex-basis:64px;font-size:25px}
.ngp-studio-info strong{display:block;font-size:18px;color:#fff;overflow-wrap:anywhere}
.ngp-studio-info small{color:#bdc7e9;font-size:12px;display:block;margin-top:4px}
.ngp-studio-expanded{padding:0 13px 14px}.ngp-studio-expanded p{color:#d0d6ef;font-size:12px;white-space:pre-wrap}
.ngp-studio-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.ngp-studio-metrics div{background:#ffffff12;border:1px solid #ffffff12;border-radius:10px;padding:9px 4px;text-align:center}.ngp-studio-metrics strong{display:block;font-size:15px;color:#fff}.ngp-studio-metrics small{display:block;font-size:9px;color:#c0c9e6;margin-top:3px}.ngp-studio-demo-tabs{display:flex;justify-content:space-between;padding:13px 5px 7px;color:var(--ngp-light);font-size:11px}.ngp-studio-demo-tabs span{color:#abb6d0}.ngp-studio-demo-section{padding:13px;border:1px solid #ffffff19;background:#ffffff0b;border-radius:11px;font-size:12px;color:#d6d8ec}
.ngp-studio-demo-button{border-radius:10px;background:var(--ngp-accent);color:#11172c;padding:11px;text-align:center;font-size:12px;font-weight:800;margin-top:10px}
.ngp-preview-toggle{border:0;background:transparent;color:#c3b7ff;min-height:36px;font-size:12px;width:100%;cursor:pointer}
.ngp-studio-categories{display:flex;overflow-x:auto;gap:6px;padding:10px 0 15px;scrollbar-width:thin}
.ngp-studio-categories button{flex:none;border-radius:11px;min-height:39px;white-space:nowrap;background:#222c49;color:#d1d7e9;padding:0 12px;font-size:12px;font-weight:700;border:1px solid #ffffff12;cursor:pointer}
.ngp-studio-categories button.is-active{border-color:#b49bfa;background:#42385f;color:#fff}
.ngp-studio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ngp-studio-tile{position:relative;min-width:0;background:#18223d;border:1px solid #8d91c44d;border-radius:14px;padding:9px;color:#f6f3ff;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:8px;overflow:hidden}
.ngp-studio-tile.is-selected{border:2px solid #b69bff;padding:8px;background:#292848}
.ngp-studio-tile-visual{border-radius:10px;display:grid;place-items:center;height:81px;background:linear-gradient(135deg,#293c7a,#4b2c7e);font-size:36px;font-weight:400;color:#ded0ff;position:relative}
.ngp-studio-tile-visual:before{content:"";position:absolute;inset:12%;border:1px solid #ffffff37;border-radius:50%;transform:rotate(-21deg) scaleX(1.3)}
.ngp-studio-tile-visual span{position:relative;text-shadow:0 0 17px currentColor}
.ngp-studio-tile-visual[data-item=aurora],.ngp-studio-tile-visual[data-item=aura],.ngp-studio-tile-visual[data-item=mint]{background:linear-gradient(140deg,#133e53,#207466);color:#a4ffe1}
.ngp-studio-tile-visual[data-item=eclipse],.ngp-studio-tile-visual[data-item=blue]{background:linear-gradient(145deg,#11162d,#38416b);color:#bac5ff}
.ngp-studio-tile-visual[data-item=royal],.ngp-studio-tile-visual[data-item=crown],.ngp-studio-tile-visual[data-item=gold]{background:linear-gradient(145deg,#2a2138,#5c4253);color:#ffe3a6}
.ngp-studio-tile-visual[data-item=rose]{background:linear-gradient(145deg,#3a294b,#8c4b78);color:#ffd3e6}
.ngp-studio-tile-visual[data-item=none],.ngp-studio-tile-visual[data-item=default]{background:#293047;color:#bdc6de}
.ngp-studio-tile-name{font-size:12px;font-weight:750;overflow-wrap:anywhere;line-height:1.3;padding:0 2px 2px}
.ngp-studio-selected{position:absolute;top:15px;right:15px;background:#a589f7;color:#17112b;border-radius:50%;width:22px;height:22px;text-align:center;line-height:22px;font-size:13px;font-weight:900}
.ngp-studio-upload{padding:12px 0 0}.ngp-studio-upload .ngp-label{margin:5px 0 8px}.ngp-studio-notice{font-size:11px;line-height:1.4;color:#dfd4ff}
.ngp-studio-footer{flex:0 0 auto;background:#10192e;border-top:1px solid #756a9f66;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;padding:10px 12px max(10px,env(safe-area-inset-bottom));align-items:center}
.ngp-studio-footer-text{min-width:0}.ngp-studio-footer-text strong{display:block;font-size:12px;color:#f3efff}.ngp-studio-footer-text small{display:block;color:#b5bbd1;font-size:10px;margin-top:4px;line-height:1.2}
.ngp-studio-footer .ngp-button{min-width:0;padding:10px;font-size:12px}.ngp-studio-footer .ngp-save{width:auto;min-width:95px}
.ngp-studio-footer .ngp-save:disabled{opacity:.44;cursor:not-allowed}
.ngp-studio-footer .ngp-save-status{grid-column:1/-1;margin:0;font-size:11px}
.ngp-info-editor{max-width:500px}
@media(max-width:380px){.ngp-studio-footer{grid-template-columns:1fr 1fr}.ngp-studio-footer-text{grid-column:1/-1}.ngp-studio-grid{gap:7px}.ngp-studio-tile-visual{height:67px}}

.ngp-studio-crop{display:grid;gap:12px;padding:9px 4px 13px}.ngp-studio-crop label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#d8d3f6}.ngp-studio-crop input[type=range]{width:100%;accent-color:#a88afb}
