:root{
  --bg:#080b12;
  --bg-soft:#0d111b;
  --panel:#111722;
  --panel-2:#151d2a;
  --panel-3:#1b2433;
  --line:rgba(160,174,192,.16);
  --line-strong:rgba(160,174,192,.28);
  --text:#f4f7fb;
  --soft:#c5ceda;
  --muted:#7f8b9d;
  --accent:#7c8cff;
  --accent-2:#5eead4;
  --success:#56d78b;
  --warning:#f5bd61;
  --danger:#ff6b78;
  --info:#70b7ff;
  --shadow:0 28px 80px rgba(0,0,0,.28);
  --radius-xl:28px;
  --radius-lg:22px;
  --radius-md:16px;
  --radius-sm:12px;
  --sidebar:268px;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;min-height:100vh;background:
  radial-gradient(circle at 12% 0%,rgba(124,140,255,.10),transparent 30%),
  radial-gradient(circle at 86% 10%,rgba(94,234,212,.07),transparent 24%),
  var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
.hidden{display:none!important}
.eyebrow{margin:0 0 6px;color:var(--accent-2);font:700 11px/1.2 var(--mono);letter-spacing:.11em;text-transform:uppercase}
.surface{border:1px solid var(--line);background:linear-gradient(180deg,rgba(20,27,39,.92),rgba(12,17,27,.88));border-radius:var(--radius-lg);box-shadow:0 16px 44px rgba(0,0,0,.14)}
.button{appearance:none;border:1px solid var(--line-strong);border-radius:13px;padding:10px 14px;background:rgba(255,255,255,.025);color:var(--soft);font-weight:750;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s ease;white-space:nowrap}
.button:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(124,140,255,.54);color:var(--text)}
.button:disabled{opacity:.54;cursor:not-allowed}
.button.primary{border-color:rgba(124,140,255,.5);background:linear-gradient(135deg,#8390ff,#6d7be8);color:white;box-shadow:0 10px 28px rgba(88,103,221,.24)}
.button.secondary{background:rgba(124,140,255,.09);border-color:rgba(124,140,255,.28);color:#dce1ff}
.button.ghost{background:rgba(255,255,255,.018)}
.button.danger{background:rgba(255,107,120,.08);border-color:rgba(255,107,120,.28);color:#ffc2c8}
.button.wide{width:100%}
.icon-button{width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);color:var(--soft);display:grid;place-items:center;font-size:18px}
.icon-button:hover{border-color:var(--line-strong);color:var(--text)}
.text-button{border:0;background:transparent;color:#aeb8ff;font-weight:750;font-size:12px;padding:6px}
.alert{padding:11px 13px;border-radius:13px;font-size:13px}
.alert-danger{border:1px solid rgba(255,107,120,.3);background:rgba(255,107,120,.08);color:#ffd1d5}

/* Auth */
.auth-screen{display:grid;place-items:center;padding:24px}
.auth-card{width:min(470px,100%);border:1px solid var(--line);border-radius:30px;background:linear-gradient(180deg,rgba(22,29,43,.96),rgba(11,15,24,.96));box-shadow:var(--shadow);padding:30px}
.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:38px}
.auth-brand>span:last-child{display:grid;gap:2px}.auth-brand strong{font-size:15px}.auth-brand small{color:var(--muted);font-size:11px}
.brand-symbol{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--accent),#5d6bd8);color:white;font:900 17px/1 var(--mono);box-shadow:0 10px 28px rgba(92,105,216,.28);flex:0 0 auto}
.auth-copy h1{font-size:32px;letter-spacing:-.035em;margin:0 0 12px}.auth-copy>p:last-child{color:var(--muted);line-height:1.6;margin:0}
.auth-form{display:grid;gap:10px;margin-top:26px}.auth-form label{font-size:12px;color:var(--soft);font-weight:700}.auth-form input{width:100%;border:1px solid var(--line-strong);border-radius:14px;background:#0b1019;color:var(--text);padding:13px 14px;outline:none}.auth-form input:focus{border-color:rgba(124,140,255,.7);box-shadow:0 0 0 4px rgba(124,140,255,.09)}
.auth-foot{color:var(--muted);font:11px var(--mono);margin:24px 0 0;text-align:center}

/* App shell */
.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);z-index:40;border-right:1px solid var(--line);background:rgba(8,11,18,.94);backdrop-filter:blur(24px);padding:20px 16px;display:flex;flex-direction:column;overflow-y:auto}
.sidebar-brand{display:flex;align-items:center;gap:12px;padding:2px 6px 24px}.sidebar-brand>div:nth-child(2){display:grid;gap:2px;min-width:0}.sidebar-brand strong{font-size:15px}.sidebar-brand span{font-size:11px;color:var(--muted)}.sidebar-close{display:none;margin-left:auto}
.main-nav{display:grid;gap:5px}.nav-item{width:100%;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--muted);padding:11px 12px;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;text-align:left;font-weight:700;font-size:13px}.nav-item:hover{background:rgba(255,255,255,.025);color:var(--soft)}.nav-item.active{background:linear-gradient(135deg,rgba(124,140,255,.15),rgba(94,234,212,.04));border-color:rgba(124,140,255,.25);color:var(--text)}.nav-icon{font:700 16px var(--mono);color:#aab3ff}.nav-item em{font-style:normal;color:var(--muted);font:10px var(--mono);background:rgba(255,255,255,.05);border-radius:999px;padding:3px 7px}
.sidebar-section{margin-top:28px;padding:0 5px}.sidebar-section>p{color:#596579;font:700 10px var(--mono);text-transform:uppercase;letter-spacing:.12em;margin:0 8px 10px}.ecosystem-link{display:flex;align-items:center;justify-content:space-between;padding:9px 8px;border-radius:10px;font-size:12px;color:var(--soft)}.ecosystem-link:hover{background:rgba(255,255,255,.025)}.ecosystem-link small{color:var(--muted);font-size:10px}
.sidebar-footer{margin-top:auto;padding:22px 5px 0;border-top:1px solid var(--line);display:grid;gap:12px}.sync-state{display:flex;gap:9px;align-items:center}.sync-state>div{display:grid;gap:2px}.sync-state strong{font-size:11px}.sync-state small{font-size:10px;color:var(--muted)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 4px rgba(127,139,157,.08)}.status-dot.online{background:var(--success);box-shadow:0 0 0 4px rgba(86,215,139,.09)}.version-label{color:#4f5b6c;font:10px var(--mono);text-align:center}
.sidebar-scrim{display:none}
.main-workspace{grid-column:2;min-width:0}
.topbar{height:86px;position:sticky;top:0;z-index:30;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);background:rgba(8,11,18,.82);backdrop-filter:blur(22px)}
.topbar-left,.topbar-actions{display:flex;align-items:center;gap:12px}.page-heading p{margin:0 0 2px;color:var(--muted);font:10px var(--mono);text-transform:uppercase;letter-spacing:.08em}.page-heading h1{font-size:19px;margin:0;letter-spacing:-.02em}.menu-button{display:none}
.global-search{width:min(330px,30vw);height:42px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025);display:flex;align-items:center;gap:8px;padding:0 11px;color:var(--muted)}.global-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.global-search kbd{border:1px solid var(--line);border-radius:6px;padding:2px 5px;background:rgba(255,255,255,.025);font:9px var(--mono);color:#667286}
.workspace-content{padding:28px;max-width:1600px;margin:0 auto}.view{display:none}.view.active{display:block}

/* Dashboard */
.dashboard-hero{min-height:255px;position:relative;overflow:hidden;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:30px}.dashboard-hero:before{content:"";position:absolute;inset:auto -8% -70% 35%;height:280px;background:radial-gradient(circle,rgba(124,140,255,.19),transparent 64%)}.hero-copy{position:relative;z-index:2;max-width:730px}.hero-copy h2{font-size:clamp(34px,4vw,58px);line-height:1.02;letter-spacing:-.055em;margin:0 0 16px}.hero-copy>p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.65;max-width:630px}.hero-actions{display:flex;gap:10px;margin-top:24px}.hero-orbit{position:relative;width:170px;height:170px;display:grid;place-items:center;flex:0 0 auto}.hero-orbit>span{width:78px;height:78px;border-radius:26px;background:linear-gradient(145deg,var(--accent),#5968dc);display:grid;place-items:center;font:900 28px var(--mono);box-shadow:0 20px 50px rgba(84,99,222,.3)}.hero-orbit:before,.hero-orbit:after,.hero-orbit i{content:"";position:absolute;border:1px solid rgba(124,140,255,.14);border-radius:50%}.hero-orbit:before{inset:22px}.hero-orbit:after{inset:0}.hero-orbit i:nth-of-type(1){width:8px;height:8px;background:var(--accent-2);border:0;top:18px;right:36px;box-shadow:0 0 18px rgba(94,234,212,.7)}.hero-orbit i:nth-of-type(2){width:6px;height:6px;background:var(--warning);border:0;bottom:32px;left:22px}.hero-orbit i:nth-of-type(3){width:5px;height:5px;background:var(--info);border:0;top:68px;left:2px}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0}.metric-card{border:1px solid var(--line);border-radius:18px;background:rgba(18,24,36,.72);padding:18px;min-height:118px;display:flex;flex-direction:column;justify-content:space-between}.metric-card header{display:flex;justify-content:space-between;align-items:center;gap:12px}.metric-card header span:first-child{color:var(--muted);font-size:11px;font-weight:700}.metric-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(124,140,255,.10);color:#bdc4ff;font:700 13px var(--mono)}.metric-card strong{font-size:30px;letter-spacing:-.04em}.metric-card small{color:var(--muted);font-size:10px}.metric-card[data-tone="success"] .metric-icon{background:rgba(86,215,139,.09);color:#a7f3c6}.metric-card[data-tone="warning"] .metric-icon{background:rgba(245,189,97,.09);color:#ffe0a8}.metric-card[data-tone="danger"] .metric-icon{background:rgba(255,107,120,.09);color:#ffc2c8}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px;margin-bottom:16px}.panel{padding:22px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.panel-heading h3{margin:0;font-size:18px}.panel-heading p:not(.eyebrow){margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.attention-list{display:grid;gap:8px}.attention-item{display:grid;grid-template-columns:36px 1fr auto;gap:11px;align-items:center;padding:11px;border-radius:14px;background:rgba(255,255,255,.018);border:1px solid transparent}.attention-item:hover{border-color:var(--line)}.attention-symbol{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:rgba(245,189,97,.09);color:#ffd998}.attention-item strong{display:block;font-size:12px}.attention-item small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.attention-item button{border:0;background:transparent;color:#aeb8ff;font-size:11px;font-weight:700}.empty-state{padding:30px 18px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:16px;font-size:12px}.access-summary{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:20px}.donut{width:140px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--success) 0 var(--public),var(--warning) var(--public) var(--guest),var(--accent) var(--guest) 100%);position:relative}.donut:after{content:"";position:absolute;inset:20px;border-radius:50%;background:var(--panel)}.donut-center{position:relative;z-index:2;text-align:center}.donut-center strong{display:block;font-size:28px}.donut-center span{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.legend{display:grid;gap:12px}.legend-row{display:grid;grid-template-columns:8px 1fr auto;gap:8px;align-items:center;font-size:11px}.legend-row i{width:8px;height:8px;border-radius:50%}.legend-row small{color:var(--muted)}.compact-project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.compact-project{border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.018);padding:13px;text-align:left;color:var(--text);display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center}.compact-project:hover{border-color:var(--line-strong)}.compact-project .mini-avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--project-accent,#7c8cff) 18%,transparent);color:var(--project-accent,#aeb8ff);font-weight:900}.compact-project strong{font-size:12px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-project small{font-size:9px;color:var(--muted);display:block;margin-top:3px}

/* Sections */
.section-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px}.section-toolbar h2{font-size:28px;letter-spacing:-.04em;margin:0}.section-subtitle{color:var(--muted);font-size:12px;margin:7px 0 0}.catalog-controls{padding:12px;display:grid;grid-template-columns:minmax(240px,1fr) repeat(3,minmax(150px,auto));gap:9px;margin-bottom:16px}.search-field{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02);padding:0 12px;color:var(--muted)}.search-field input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--text);height:42px;font-size:12px}.catalog-controls select,.choice-field select{border:1px solid var(--line);border-radius:12px;background:#0e1420;color:var(--soft);padding:0 12px;min-height:42px;outline:0}.project-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.project-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,rgba(21,29,42,.9),rgba(12,17,27,.92));min-height:255px;text-align:left;color:var(--text);padding:0;transition:.18s ease}.project-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--project-accent,#7c8cff) 55%,transparent);box-shadow:0 18px 50px rgba(0,0,0,.2)}.project-card-cover{height:102px;position:relative;overflow:visible;background:radial-gradient(circle at 20% 20%,color-mix(in srgb,var(--project-accent,#7c8cff) 28%,transparent),transparent 62%),#0c111b}.project-card-cover img{width:100%;height:100%;object-fit:cover;display:block}.project-card-cover:after{content:"";position:absolute;inset:auto 0 0;height:60%;background:linear-gradient(transparent,rgba(12,17,27,.9))}.project-card-version{position:absolute;right:12px;top:12px;z-index:2;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(8,11,18,.68);backdrop-filter:blur(8px);padding:4px 8px;font:9px var(--mono);color:#e6e9f5}.project-card-avatar{position:absolute;left:15px;bottom:-18px;z-index:2;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--project-accent,#7c8cff) 24%,#111722);border:1px solid color-mix(in srgb,var(--project-accent,#7c8cff) 44%,transparent);color:var(--project-accent,#c9ceff);font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.22)}.project-card-body{padding:28px 16px 15px}.project-card h3{font-size:16px;margin:0}.project-card p{font-size:11px;color:var(--muted);line-height:1.45;margin:7px 0 12px;min-height:32px}.project-url{font:9px var(--mono);color:#69768a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-row{display:flex;flex-wrap:wrap;gap:6px}.badge{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;padding:4px 7px;color:var(--soft);font:700 9px var(--mono);text-transform:uppercase;letter-spacing:.04em}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.badge.success{color:#9ceabd;border-color:rgba(86,215,139,.24);background:rgba(86,215,139,.06)}.badge.warning{color:#ffd994;border-color:rgba(245,189,97,.24);background:rgba(245,189,97,.06)}.badge.danger{color:#ffb7bf;border-color:rgba(255,107,120,.24);background:rgba(255,107,120,.06)}.badge.info{color:#a8d3ff;border-color:rgba(112,183,255,.24);background:rgba(112,183,255,.06)}.badge.violet{color:#cdd2ff;border-color:rgba(124,140,255,.24);background:rgba(124,140,255,.06)}
.data-list{display:grid;gap:7px}.data-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(120px,.65fr) minmax(120px,.65fr) minmax(180px,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid transparent;border-radius:14px;background:rgba(255,255,255,.016)}.data-row:hover{border-color:var(--line)}.data-main{display:flex;align-items:center;gap:10px;min-width:0}.data-avatar{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--project-accent,#7c8cff) 18%,transparent);color:var(--project-accent,#aeb8ff);font-weight:900}.data-main div{min-width:0}.data-main strong,.data-cell strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.data-main small,.data-cell small{display:block;color:var(--muted);font-size:9px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-action{border:0;background:transparent;color:#aeb8ff;font-weight:750;font-size:11px}.health-indicator{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:var(--muted)}.health-indicator i{width:7px;height:7px;border-radius:50%;background:var(--muted)}.health-indicator.ok i{background:var(--success)}.health-indicator.bad i{background:var(--danger)}.health-indicator.warn i{background:var(--warning)}
.media-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.media-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,rgba(20,27,39,.9),rgba(12,17,27,.92));color:var(--text);text-align:left;padding:0}.media-thumb{height:170px;background:radial-gradient(circle at 25% 20%,color-mix(in srgb,var(--project-accent,#7c8cff) 30%,transparent),transparent 60%),#0b1019;position:relative;overflow:hidden}.media-thumb img{width:100%;height:100%;object-fit:cover}.media-thumb.empty{display:grid;place-items:center;color:var(--muted);font-size:28px}.media-card-body{padding:14px}.media-card-body h3{font-size:14px;margin:0}.media-card-body p{color:var(--muted);font-size:10px;margin:5px 0 12px}

/* Project workspace */
.project-header{padding:16px 18px;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:16px}.back-button{margin-right:2px}.project-avatar{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;background:color-mix(in srgb,var(--project-accent,#7c8cff) 20%,#111722);border:1px solid color-mix(in srgb,var(--project-accent,#7c8cff) 38%,transparent);color:var(--project-accent,#cbd1ff);font-size:19px;font-weight:900}.project-header-copy{min-width:0}.project-header-copy>p{color:var(--muted);font:9px var(--mono);margin:0 0 3px}.project-header-copy h2{font-size:23px;margin:0 0 7px;letter-spacing:-.035em}.project-header-actions{display:flex;gap:8px}.project-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:16px;align-items:start}.project-tabs{position:sticky;top:106px;padding:8px;display:grid;gap:4px}.project-tab{border:0;border-radius:12px;background:transparent;color:var(--muted);padding:11px;text-align:left;display:flex;gap:10px;align-items:center;font-weight:700;font-size:12px}.project-tab span{font:9px var(--mono);color:#586578}.project-tab:hover{background:rgba(255,255,255,.025);color:var(--soft)}.project-tab.active{background:rgba(124,140,255,.11);color:var(--text)}.project-tab.active span{color:#b7bfff}.project-panel{display:none}.project-panel.active{display:grid;gap:16px}.form-section{padding:23px}.form-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}.form-section-heading h3{font-size:18px;margin:0}.section-number{color:#465267;font:10px var(--mono)}.form-grid{display:grid;gap:15px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field,.choice-field{display:grid;gap:7px}.field.full,.choice-field.full{grid-column:1/-1}.field>span,.choice-field>span{font-size:11px;color:var(--soft);font-weight:750}.field small,.choice-field small{color:var(--muted);font-size:9px;line-height:1.45}.field input,.field textarea,.choice-field select,.guest-add-row input{width:100%;border:1px solid var(--line);border-radius:12px;background:#0d131e;color:var(--text);padding:11px 12px;outline:none}.field input:focus,.field textarea:focus,.choice-field select:focus,.guest-add-row input:focus{border-color:rgba(124,140,255,.6);box-shadow:0 0 0 4px rgba(124,140,255,.07)}.field textarea{resize:vertical;min-height:105px}.color-input{display:grid;grid-template-columns:48px 1fr;gap:8px}.color-input input[type="color"]{padding:3px;height:42px}.access-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.access-choice{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.018);color:var(--soft);padding:16px;text-align:left;display:grid;gap:7px}.access-choice:hover{border-color:var(--line-strong)}.access-choice.active{border-color:rgba(124,140,255,.5);background:rgba(124,140,255,.09);color:var(--text)}.choice-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:rgba(124,140,255,.09);color:#b5bdff}.access-choice strong{font-size:13px}.access-choice small{color:var(--muted);font-size:9px;line-height:1.5}.policy-summary{margin-top:14px;border:1px solid rgba(124,140,255,.18);border-radius:14px;background:rgba(124,140,255,.055);padding:13px;color:#d8dcff;font-size:11px;line-height:1.55}.guest-add-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-bottom:12px}.guest-code-list{display:grid;gap:8px}.guest-code{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:13px;padding:11px;background:rgba(255,255,255,.015)}.guest-code strong{font:700 11px var(--mono)}.guest-code small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.guest-code button{border:0;background:transparent;color:#ffb5bd;font-size:10px;font-weight:700}.inline-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.result-box{margin-top:12px;border:1px solid var(--line);border-radius:13px;padding:12px;color:var(--soft);font-size:11px;line-height:1.5}.result-box.success{border-color:rgba(86,215,139,.28);background:rgba(86,215,139,.055);color:#b8f3cf}.result-box.danger{border-color:rgba(255,107,120,.28);background:rgba(255,107,120,.055);color:#ffd0d4}
.media-editor{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:20px}.media-preview{min-height:245px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#0b1019;position:relative}.media-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.media-preview.is-empty img{display:none}.media-placeholder{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:7px;text-align:center;color:var(--muted)}.media-placeholder>span{font-size:34px}.media-placeholder strong{color:var(--soft);font-size:13px}.media-placeholder small{font-size:9px}.media-copy{display:flex;flex-direction:column;justify-content:center}.media-copy>p{color:var(--muted);font-size:11px;line-height:1.65}.drop-zone{border:1px dashed rgba(124,140,255,.3);border-radius:15px;background:rgba(124,140,255,.045);padding:18px;text-align:center;display:grid;gap:5px;color:#cfd4ff}.drop-zone.dragging{border-color:var(--accent);background:rgba(124,140,255,.09)}.drop-zone strong{font-size:12px}.drop-zone span{color:var(--muted);font-size:9px}.switch-grid{display:grid;gap:9px}.switch-card{border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.015);color:var(--soft);padding:13px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:20px}.switch-card strong{display:block;font-size:11px}.switch-card small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.switch-card i{width:38px;height:22px;border-radius:999px;background:#252e3e;position:relative;flex:0 0 auto}.switch-card i:after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:#748095;transition:.18s}.switch-card.active{border-color:rgba(124,140,255,.36);background:rgba(124,140,255,.07)}.switch-card.active i{background:rgba(124,140,255,.5)}.switch-card.active i:after{left:19px;background:white}.json-preview{margin:0;max-height:450px;overflow:auto;border:1px solid var(--line);border-radius:14px;background:#090e16;padding:16px;color:#a8b5c8;font:10px/1.65 var(--mono);white-space:pre-wrap;word-break:break-word}
.toast-stack{position:fixed;right:22px;bottom:22px;z-index:80;display:grid;gap:9px;width:min(360px,calc(100vw - 32px))}.toast{border:1px solid var(--line-strong);border-radius:15px;background:rgba(17,23,34,.96);box-shadow:0 18px 54px rgba(0,0,0,.32);padding:13px 14px;display:grid;grid-template-columns:8px 1fr auto;gap:10px;align-items:start;animation:toast-in .2s ease}.toast>i{width:8px;height:8px;border-radius:50%;background:var(--info);margin-top:5px}.toast.success>i{background:var(--success)}.toast.danger>i{background:var(--danger)}.toast strong{display:block;font-size:11px}.toast small{display:block;color:var(--muted);font-size:9px;margin-top:3px;line-height:1.45}.toast button{border:0;background:transparent;color:var(--muted)}@keyframes toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

@media(max-width:1180px){
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-catalog,.media-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-controls{grid-template-columns:1fr 1fr}.global-search{width:250px}.dashboard-grid{grid-template-columns:1fr}.data-row{grid-template-columns:minmax(170px,1.4fr) repeat(2,minmax(100px,.7fr)) auto}.data-row>.data-cell:nth-child(4){display:none}
}
@media(max-width:900px){
  .app-shell{display:block}.sidebar{transform:translateX(-102%);transition:.22s ease;box-shadow:30px 0 80px rgba(0,0,0,.34)}.sidebar.open{transform:translateX(0)}.sidebar-close{display:grid}.sidebar-scrim{display:block;position:fixed;inset:0;z-index:35;background:rgba(0,0,0,.46);opacity:0;pointer-events:none;transition:.2s}.sidebar-scrim.open{opacity:1;pointer-events:auto}.main-workspace{grid-column:auto}.menu-button{display:grid}.topbar{padding:0 18px}.global-search kbd{display:none}.project-layout{grid-template-columns:1fr}.project-tabs{position:static;display:flex;overflow-x:auto;scrollbar-width:none}.project-tab{white-space:nowrap}.project-header{grid-template-columns:auto auto minmax(0,1fr)}.project-header-actions{grid-column:1/-1;justify-content:flex-end}.hero-orbit{display:none}.dashboard-hero{padding:32px}.access-summary{grid-template-columns:140px 1fr}
}
@media(max-width:680px){
  .topbar{height:auto;min-height:78px;padding:12px 14px;align-items:flex-start}.topbar-actions{flex:1;justify-content:flex-end}.global-search{display:none}.topbar-actions .button.ghost{display:none}.workspace-content{padding:18px 14px 28px}.page-heading h1{font-size:16px}.dashboard-hero{padding:25px;min-height:0}.hero-copy h2{font-size:34px}.hero-copy>p:not(.eyebrow){font-size:13px}.hero-actions{flex-direction:column;align-items:stretch}.metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric-card{min-height:105px;padding:14px}.metric-card strong{font-size:25px}.section-toolbar{align-items:flex-start}.section-toolbar h2{font-size:24px}.catalog-controls{grid-template-columns:1fr}.project-catalog,.media-gallery{grid-template-columns:1fr}.project-card{min-height:235px}.compact-project-grid{grid-template-columns:1fr}.panel{padding:17px}.access-summary{grid-template-columns:1fr;justify-items:center}.legend{width:100%}.data-row{grid-template-columns:minmax(0,1fr) auto}.data-row>.data-cell{display:none}.project-header{grid-template-columns:auto minmax(0,1fr)}.project-avatar{display:none}.project-header-actions{overflow-x:auto;justify-content:flex-start}.project-layout{gap:10px}.form-section{padding:17px}.form-grid.two{grid-template-columns:1fr}.field.full,.choice-field.full{grid-column:auto}.access-choice-grid{grid-template-columns:1fr}.guest-add-row{grid-template-columns:1fr}.media-editor{grid-template-columns:1fr}.media-preview{min-height:210px}.project-tabs{border-radius:15px}.project-tab{padding:10px}.toast-stack{right:16px;bottom:16px}.auth-card{padding:24px}.auth-copy h1{font-size:28px}
}
@media(max-width:420px){.metric-grid{grid-template-columns:1fr}.section-toolbar{display:grid}.section-toolbar>.button{width:100%}.project-header-copy h2{font-size:20px}.topbar-actions .button.primary{padding:10px 11px}.topbar-actions .button.primary span{font-size:11px}}

/* v3.0.1 — project identity badge fix */
.project-card-cover img{border-radius:19px 19px 0 0}.project-card-cover:after{border-radius:19px 19px 0 0}.project-card-avatar{line-height:1;letter-spacing:-.03em}.project-card-body{position:relative;z-index:1}
