/* Published website variables and the protected visual editor. */
body{background:var(--bg);color:var(--ink);font-family:var(--font-body)}
h1,h2,h3,h4{font-family:var(--font-heading)}
.button.primary,.dashboard-button,.welcome-primary,.welcome-login{background:var(--site-primary);border-color:var(--site-primary);color:#fff}
.button.primary:hover,.dashboard-button:hover,.welcome-primary:hover{background:var(--site-primary-dark)}
.welcome-header{background:color-mix(in srgb,var(--surface) 92%,transparent)}
.welcome-hero{background:var(--mint)}
.welcome-hero h1 em,.welcome-final h2 em,.welcome-accent,.demo-source{color:var(--site-accent)}
.welcome-example.tone-0{background:var(--lavender)}.welcome-example.tone-1{background:var(--sky)}.welcome-example.tone-2{background:var(--apricot)}
.welcome-final{background:color-mix(in srgb,var(--mint) 68%,var(--surface));color:var(--ink)}
.example-card,.final-preview,.panel,.inspector,.training-card{background:var(--surface);border-radius:var(--site-radius)}
.campus-navigation nav a[aria-current=page],.admin-sections a[aria-current=page],.inspector .compact-tabs button.active{background:var(--site-accent)}
.welcome-logo>span,.campus-logo>span{background:var(--mint);color:var(--site-primary)}
.welcome-footer nav{display:flex;gap:12px;flex-wrap:wrap}

.admin-editor-shortcut{max-width:1450px;margin:26px auto -46px;padding:0 26px;display:flex;align-items:center;gap:14px;position:relative;z-index:2}.admin-editor-shortcut span{font-size:13px;color:var(--muted)}
.site-editor-page{max-width:1480px;margin:auto;padding-top:35px}.site-editor{display:grid;gap:18px}.site-editor-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;background:linear-gradient(135deg,var(--mint),var(--surface));border:1px solid var(--line);border-radius:calc(var(--site-radius) + 6px);padding:30px}.site-editor-head h2{font-size:clamp(28px,4vw,45px);margin:7px 0}.site-editor-head p{margin:0;color:var(--muted)}.editor-publish-state{min-width:205px;display:grid;gap:5px;background:var(--surface);border:1px solid var(--line);padding:17px;border-radius:14px}.editor-publish-state small{color:var(--muted)}.draft-dot{font-size:12px;color:#315f4a}.draft-dot.changed{color:#795217}.site-editor-actions{display:flex;gap:9px;flex-wrap:wrap}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.site-editor-tabs{display:flex;gap:7px;overflow-x:auto;padding:7px;background:var(--lavender);border-radius:14px}.site-editor-tabs button{white-space:nowrap;border:0;border-radius:10px;padding:11px 15px;background:transparent;color:var(--ink);font-weight:700;min-height:44px}.site-editor-tabs button[aria-pressed=true]{background:var(--site-accent);color:#fff}.site-editor-workspace{background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--site-radius) + 4px);padding:clamp(20px,4vw,38px)}.site-editor-workspace .editor-section{border:0;padding:0;margin:0 0 38px}.site-editor-workspace .editor-section:last-child{margin-bottom:0}.site-editor-workspace h3{font-size:24px;margin:0 0 8px}.site-editor-workspace .editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.site-editor-workspace .editor-field{margin:0}.site-editor-workspace .editor-field>span,.theme-swatches>label>span{font-weight:700;font-size:14px}.site-editor-workspace input,.site-editor-workspace textarea,.site-editor-workspace select{width:100%;font-size:16px;border:1px solid #cbdcd6;background:#fff;color:#263e43;border-radius:10px;padding:12px;margin-top:7px}.site-editor-workspace textarea{min-height:115px;resize:vertical}.site-editor-workspace small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.nav-editor-list{display:grid;gap:9px;margin-top:20px}.nav-editor-list>div{display:grid;grid-template-columns:180px minmax(180px,1fr) 110px auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:13px}.nav-editor-list span strong,.nav-editor-list span small{display:block}.nav-editor-list input{margin:0}.nav-editor-list .check{margin:0}.nav-editor-list>div>div{display:flex;gap:5px}.nav-editor-list .button{padding:8px 12px}.theme-swatches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:22px 0}.theme-swatches label{padding:13px;border:1px solid var(--line);border-radius:13px}.theme-swatches label>div{display:grid;grid-template-columns:48px 1fr;gap:8px}.theme-swatches input[type=color]{padding:3px;height:46px}.site-version-list{display:grid;gap:9px;margin-top:20px}.site-version-list article{display:flex;justify-content:space-between;align-items:center;gap:15px;border:1px solid var(--line);border-radius:13px;padding:15px}.site-version-list small{margin:3px 0 0}.site-editor-publish{position:sticky;bottom:12px;z-index:5;display:grid;grid-template-columns:1fr minmax(280px,1.2fr) auto;gap:22px;align-items:center;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(15px);border:1px solid var(--line);box-shadow:0 12px 38px #263e4320;border-radius:18px;padding:18px 22px}.site-editor-publish p{margin:2px 0;color:var(--muted);font-size:13px}.site-editor-publish .check{margin:0}.site-editor-publish .button{white-space:nowrap}.website-preview{position:relative}.website-preview-banner{position:fixed;z-index:50;top:8px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:13px;background:#263e43;color:#fff;padding:9px 15px;border-radius:30px;box-shadow:0 8px 30px #0003;font-size:13px}.website-preview-banner span{color:#def0e8}.website-preview-banner a{color:#fff;text-decoration:underline}.website-preview .welcome-header{top:55px}.website-preview .welcome{padding-top:55px}
.site-image-manager{display:grid;grid-template-columns:minmax(220px,360px) 1fr;gap:24px;align-items:center;padding:18px;background:var(--mint);border-radius:16px;margin:20px 0 28px}.site-image-manager figure{margin:0}.site-image-manager img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px;background:#fff}.site-image-manager figcaption{font-size:12px;color:var(--muted);margin-top:7px}.site-image-manager p{font-size:13px;color:var(--muted)}.site-image-manager select{width:100%;margin-top:7px}
@media(max-width:900px){.site-editor-head{display:grid}.editor-publish-state{min-width:0}.site-editor-workspace .editor-grid{grid-template-columns:1fr}.theme-swatches{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-editor-list>div{grid-template-columns:1fr 1fr}.site-editor-publish{grid-template-columns:1fr;position:static}.admin-editor-shortcut{margin:18px auto -25px;align-items:flex-start;flex-direction:column}.website-preview-banner{width:calc(100% - 20px);justify-content:center;flex-wrap:wrap;border-radius:15px}.website-preview .welcome-header{top:74px}.website-preview .welcome{padding-top:74px}}
.visual-layout-editor{background:linear-gradient(145deg,var(--sky),var(--surface));border:1px solid var(--line);border-radius:calc(var(--site-radius) + 4px);padding:clamp(20px,4vw,34px)}.visual-layout-heading h2{font-size:clamp(25px,3vw,36px);margin:6px 0}.visual-layout-heading p{margin:0;color:var(--muted)}.visual-layout-boards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.sortable-board{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:17px;min-width:0}.sortable-board>header{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.sortable-board h3{font-size:18px;margin:0}.sortable-board header p{font-size:13px;color:var(--muted);margin:3px 0}.sortable-board header>span{font-size:11px;font-weight:700;background:var(--mint);padding:5px 8px;border-radius:20px;white-space:nowrap}.sortable-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.sortable-grid article{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center;min-width:0;border:1px solid var(--line);background:color-mix(in srgb,var(--lavender) 48%,var(--surface));border-radius:12px;padding:11px;cursor:grab;transition:transform .15s,border-color .15s,opacity .15s}.sortable-grid article:active{cursor:grabbing}.sortable-grid article>svg{color:var(--site-accent);flex-shrink:0}.sortable-grid article strong,.sortable-grid article small{display:block;overflow-wrap:anywhere}.sortable-grid article strong{font-size:14px}.sortable-grid article small{font-size:11px;color:var(--muted);margin-top:2px}.sortable-grid article.is-dragging{opacity:.42;transform:scale(.97)}.sortable-grid article.is-drop-target{border:2px dashed var(--site-accent);transform:translateY(-2px)}.sortable-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:5px}.sortable-actions button{width:34px;height:30px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink)}.sortable-actions button:disabled{opacity:.35}.sortable-help{font-size:11px;color:var(--muted);margin:11px 0 0}
@media(max-width:900px){.visual-layout-boards{grid-template-columns:1fr}.sortable-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.theme-swatches{grid-template-columns:1fr}.nav-editor-list>div{grid-template-columns:1fr}.site-editor-head,.site-editor-workspace{padding:19px}.site-editor-tabs{border-radius:10px}.site-editor-actions .button{flex:1}.site-image-manager{grid-template-columns:1fr}.sortable-grid{grid-template-columns:1fr}.website-preview-banner span{display:none}}
