/* MineCave Unified Design System · Phase 1.32 */
:root{
 --mc-bg:#07090d;--mc-bg-2:#0d1117;--mc-panel:#111720;--mc-panel-2:#171f2a;
 --mc-gold:#f6c453;--mc-orange:#ff8a2a;--mc-green:#73d13d;--mc-text:#f7f8fb;
 --mc-muted:#aab3c2;--mc-border:rgba(246,196,83,.24);--mc-danger:#ff5f68;
 --mc-shadow:0 18px 55px rgba(0,0,0,.38);--mc-radius:18px;--mc-radius-sm:12px;
 --mc-transition:180ms ease;--mc-font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}html{color-scheme:dark;scroll-behavior:smooth}body.mc-unified-theme,body{margin:0;min-height:100vh;background:
 radial-gradient(circle at 12% 0%,rgba(246,196,83,.12),transparent 30%),
 radial-gradient(circle at 88% 8%,rgba(115,209,61,.08),transparent 28%),
 linear-gradient(180deg,var(--mc-bg),#090d13 45%,#07090d);color:var(--mc-text);font-family:var(--mc-font);line-height:1.55}
body.mc-unified-theme:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-2;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,black,transparent 80%)}
body.mc-unified-theme:after{content:"";position:fixed;width:420px;height:420px;border-radius:50%;right:-170px;bottom:-170px;z-index:-1;pointer-events:none;background:radial-gradient(circle,rgba(255,138,42,.12),transparent 68%);animation:mcPulse 8s ease-in-out infinite}
@keyframes mcPulse{50%{transform:scale(1.15);opacity:.7}}
a{color:var(--mc-gold);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:#ffe29a}
.mc-shell,.mc-page-shell,.site-nav,.site-footer,.installer-shell{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.mc-glass,.mc-card,.panel,.card,fieldset,.installer-card{background:linear-gradient(145deg,rgba(23,31,42,.94),rgba(12,17,24,.92));border:1px solid var(--mc-border);box-shadow:var(--mc-shadow);backdrop-filter:blur(16px);border-radius:var(--mc-radius)}
.mc-card,.panel,.card,.installer-card{padding:22px;transition:transform var(--mc-transition),border-color var(--mc-transition),box-shadow var(--mc-transition)}
.mc-card:hover,.card:hover,.installer-card:hover{border-color:rgba(246,196,83,.45);box-shadow:0 22px 64px rgba(0,0,0,.46),0 0 0 1px rgba(246,196,83,.05)}
.mc-nav,.site-header nav{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;margin-top:16px;border:1px solid var(--mc-border);border-radius:16px;background:rgba(10,14,20,.88);box-shadow:0 14px 38px rgba(0,0,0,.3);backdrop-filter:blur(18px)}
.mc-brand,.site-brand{display:flex;align-items:center;gap:11px;color:var(--mc-text)!important;text-decoration:none;font-weight:900;letter-spacing:.02em}.mc-logo{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#17130a;background:linear-gradient(145deg,var(--mc-gold),var(--mc-orange));box-shadow:0 0 24px rgba(246,196,83,.25)}
.mc-links,.site-links,.mc-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mc-links a,.site-links a{color:var(--mc-muted)!important;text-decoration:none;padding:9px 12px;border-radius:10px;transition:all var(--mc-transition)}.mc-links a:hover,.site-links a:hover{color:var(--mc-text)!important;background:rgba(246,196,83,.1)}
.mc-hero{position:relative;overflow:hidden;margin:24px 0;padding:clamp(28px,5vw,58px);border-radius:24px;background:linear-gradient(135deg,rgba(246,196,83,.13),rgba(255,138,42,.06) 45%,rgba(115,209,61,.07)),linear-gradient(145deg,#151c26,#0a0f16);border:1px solid rgba(246,196,83,.28);box-shadow:var(--mc-shadow)}.mc-hero:after{content:"";position:absolute;inset:auto -10% -55% 35%;height:260px;background:radial-gradient(circle,rgba(246,196,83,.16),transparent 70%);pointer-events:none}.mc-hero h1{margin:.25em 0;font-size:clamp(2rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.04em}.mc-hero p{max-width:760px;color:var(--mc-muted);font-size:1.05rem}
.mc-eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--mc-gold);font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.mc-eyebrow:before{content:"";width:8px;height:8px;border-radius:2px;background:var(--mc-green);box-shadow:0 0 12px rgba(115,209,61,.55)}
.mc-section{margin-block:24px}.mc-grid{display:grid;gap:18px}.mc-button,button,input[type=submit],input[type=button]{appearance:none;border:1px solid rgba(246,196,83,.28);border-radius:11px;padding:10px 15px;background:#151c26;color:var(--mc-text);font:inherit;font-weight:800;cursor:pointer;text-decoration:none;transition:transform var(--mc-transition),background var(--mc-transition),border-color var(--mc-transition),box-shadow var(--mc-transition)}.mc-button:hover,button:hover,input[type=submit]:hover,input[type=button]:hover{transform:translateY(-1px);border-color:var(--mc-gold);background:#1c2531}.mc-button.primary,button.primary,input[type=submit].primary{color:#18130a;background:linear-gradient(135deg,var(--mc-gold),var(--mc-orange));border-color:transparent;box-shadow:0 10px 28px rgba(246,196,83,.18)}.mc-button.primary:hover,button.primary:hover{box-shadow:0 14px 34px rgba(246,196,83,.3)}
.mc-form,label{display:grid;gap:7px}.mc-form{gap:16px}.mc-input,.mc-select,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]),select,textarea{width:100%;border:1px solid rgba(255,255,255,.11);border-radius:11px;background:#0b1017;color:var(--mc-text);padding:11px 12px;font:inherit;outline:none;transition:border-color var(--mc-transition),box-shadow var(--mc-transition)}textarea{min-height:120px;resize:vertical}.mc-input:focus,.mc-select:focus,input:focus,select:focus,textarea:focus{border-color:var(--mc-gold);box-shadow:0 0 0 3px rgba(246,196,83,.11)}label{color:#d9deea;font-weight:700}
.mc-alert,.alert{padding:12px 14px;border-radius:12px;border:1px solid var(--mc-border);background:rgba(246,196,83,.08)}.mc-alert.success,.alert.success{border-color:rgba(115,209,61,.35);background:rgba(115,209,61,.09)}.mc-alert.error,.alert.error{border-color:rgba(255,95,104,.4);background:rgba(255,95,104,.09)}
table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(8,12,18,.55)}th,td{padding:12px 13px;text-align:left;border-bottom:1px solid rgba(255,255,255,.07)}th{color:var(--mc-gold);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;background:rgba(246,196,83,.055)}tr:last-child td{border-bottom:0}tbody tr:hover{background:rgba(255,255,255,.025)}
.badge,.mc-badge,.bp-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;background:rgba(246,196,83,.1);border:1px solid rgba(246,196,83,.2);color:#ffe39c;font-size:.8rem;font-weight:800}
code,pre{background:#070b10;border:1px solid rgba(255,255,255,.08);border-radius:9px;color:#cce8b9}pre{padding:14px;overflow:auto}hr{border:0;border-top:1px solid rgba(255,255,255,.09);margin:22px 0}
/* Admin + builder */
body.mc-unified-theme .builder-shell,body.mc-unified-theme .admin-shell{background:transparent}.builder-sidebar,.sidebar,.inspector,.layers-panel{background:linear-gradient(180deg,#101721,#0a0f16)!important;border-color:var(--mc-border)!important}.builder-canvas,.canvas{background:radial-gradient(circle at 50% 0%,rgba(246,196,83,.07),transparent 36%),#080c12!important;border-color:rgba(246,196,83,.18)!important}.module-card,.widget-card,.registry-card{background:#121923!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:13px!important}.module-card:hover,.widget-card:hover{border-color:var(--mc-gold)!important;transform:translateY(-2px)}
/* Authentication */
body.mc-unified-theme main.mc-shell[style*="max-width"]{animation:mcEnter .45s ease both}@keyframes mcEnter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
/* Installer */
body.mc-unified-theme .step,.requirement,.install-step{border-radius:13px!important;border:1px solid rgba(255,255,255,.09)!important;background:#111821!important}.progress,.mc-progress{background:#0a0f15!important;border-radius:999px!important;overflow:hidden}.progress>span,.mc-progress>span{background:linear-gradient(90deg,var(--mc-gold),var(--mc-orange),var(--mc-green))!important}
/* Development + articles */
.article-card,.release-card{border-left:3px solid var(--mc-gold)!important}.article-content{font-size:1.03rem}.article-content h2,.article-content h3{color:#ffe09a}.reaction-button{border-radius:999px!important}
/* Errors and empty states */
.mc-empty,.empty-state{padding:34px;text-align:center;border:1px dashed rgba(246,196,83,.28);border-radius:16px;color:var(--mc-muted)}
@media(max-width:820px){.mc-nav,.site-header nav{align-items:flex-start;flex-direction:column}.mc-links,.site-links{width:100%}.mc-shell,.mc-page-shell,.site-nav,.site-footer,.installer-shell{width:min(100% - 20px,1180px)}.mc-card{padding:17px}table{display:block;overflow-x:auto}.mc-hero{padding:28px 20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* MineCave Animated Experience · Phase 1.33 */
:root{--mc-motion-scale:1;--mc-ambient-opacity:.78;--mc-particle-speed:18s;--mc-sheen-speed:4.8s}
html[data-mc-motion="low"]{--mc-motion-scale:.55;--mc-ambient-opacity:.42;--mc-particle-speed:28s;--mc-sheen-speed:7s}
html[data-mc-motion="high"]{--mc-motion-scale:1.25;--mc-ambient-opacity:1;--mc-particle-speed:13s;--mc-sheen-speed:3.6s}
.mc-ambient-layer{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:-1;opacity:var(--mc-ambient-opacity)}
.mc-ambient-layer:before,.mc-ambient-layer:after{content:"";position:absolute;inset:-20%;background-repeat:repeat;will-change:transform,opacity}
.mc-ambient-layer:before{background-image:radial-gradient(circle,rgba(246,196,83,.65) 0 1.5px,transparent 2px),radial-gradient(circle,rgba(115,209,61,.45) 0 1px,transparent 1.8px),radial-gradient(circle,rgba(255,138,42,.42) 0 1.2px,transparent 2px);background-size:160px 160px,220px 220px,290px 290px;background-position:0 0,35px 80px,120px 40px;animation:mcAmbientDrift var(--mc-particle-speed) linear infinite}
.mc-ambient-layer:after{background:linear-gradient(115deg,transparent 30%,rgba(246,196,83,.045) 45%,rgba(115,209,61,.035) 52%,transparent 67%);animation:mcAurora calc(var(--mc-particle-speed)*1.35) ease-in-out infinite alternate}
@keyframes mcAmbientDrift{to{transform:translate3d(110px,-180px,0)}}
@keyframes mcAurora{from{transform:translate3d(-10%,0,0) rotate(-4deg);opacity:.35}to{transform:translate3d(12%,-3%,0) rotate(4deg);opacity:.9}}
body.mc-unified-theme{position:relative;isolation:isolate;background-attachment:fixed}
body.mc-unified-theme .mc-nav,body.mc-unified-theme .site-header nav{animation:mcNavDrop calc(.55s*var(--mc-motion-scale)) cubic-bezier(.2,.75,.25,1) both}
@keyframes mcNavDrop{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}
.mc-reveal{opacity:0;transform:translateY(calc(22px*var(--mc-motion-scale))) scale(.985);transition:opacity calc(.62s*var(--mc-motion-scale)) ease,transform calc(.62s*var(--mc-motion-scale)) cubic-bezier(.2,.75,.25,1)}
.mc-reveal.is-visible{opacity:1;transform:none}
.mc-card,.panel,.card,.installer-card,.article-card,.release-card,.module-card,.widget-card,.registry-card{position:relative;overflow:hidden}
.mc-card:before,.panel:before,.card:before,.installer-card:before,.article-card:before,.release-card:before,.module-card:before,.widget-card:before,.registry-card:before{content:"";position:absolute;inset:0 auto 0 -65%;width:38%;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,232,160,.09),transparent);transform:skewX(-16deg);transition:left calc(.72s*var(--mc-motion-scale)) ease}
.mc-card:hover:before,.panel:hover:before,.card:hover:before,.installer-card:hover:before,.article-card:hover:before,.release-card:hover:before,.module-card:hover:before,.widget-card:hover:before,.registry-card:hover:before{left:125%}
.mc-card:hover,.panel:hover,.card:hover,.installer-card:hover,.article-card:hover,.release-card:hover{transform:translateY(calc(-4px*var(--mc-motion-scale))) scale(1.006)}
.mc-button,button,input[type=submit],input[type=button]{position:relative;overflow:hidden}
.mc-button:after,button:after,input[type=submit]:after,input[type=button]:after{content:"";position:absolute;inset:-2px;background:linear-gradient(110deg,transparent 22%,rgba(255,255,255,.22) 42%,transparent 62%);transform:translateX(-140%);transition:transform calc(.6s*var(--mc-motion-scale)) ease;pointer-events:none}
.mc-button:hover:after,button:hover:after,input[type=submit]:hover:after,input[type=button]:hover:after{transform:translateX(140%)}
.mc-hero{animation:mcHeroEnter calc(.8s*var(--mc-motion-scale)) cubic-bezier(.16,.8,.25,1) both}
.mc-hero:before{content:"";position:absolute;inset:-35% -15%;pointer-events:none;background:conic-gradient(from 0deg,transparent,rgba(246,196,83,.10),transparent 28%,rgba(115,209,61,.07),transparent 58%,rgba(255,138,42,.08),transparent);animation:mcHeroOrbit calc(22s/var(--mc-motion-scale)) linear infinite}
.mc-hero>*{position:relative;z-index:1}
@keyframes mcHeroEnter{from{opacity:0;transform:translateY(28px) scale(.98)}to{opacity:1;transform:none}}
@keyframes mcHeroOrbit{to{transform:rotate(360deg)}}
.mc-logo{animation:mcLogoFloat calc(4.6s/var(--mc-motion-scale)) ease-in-out infinite}
@keyframes mcLogoFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(2deg)}}
.mc-eyebrow:before{animation:mcStatusPulse calc(1.8s/var(--mc-motion-scale)) ease-in-out infinite}
@keyframes mcStatusPulse{50%{transform:scale(1.45);box-shadow:0 0 20px rgba(115,209,61,.95)}}
.mc-progress>span,.progress>span{position:relative;overflow:hidden;animation:mcProgressBreath calc(2.6s/var(--mc-motion-scale)) ease-in-out infinite}
.mc-progress>span:after,.progress>span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);animation:mcProgressSweep var(--mc-sheen-speed) linear infinite}
@keyframes mcProgressBreath{50%{filter:brightness(1.2);box-shadow:0 0 20px rgba(246,196,83,.35)}}
@keyframes mcProgressSweep{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.mc-live-dot,.status-dot,.health-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--mc-green);box-shadow:0 0 0 0 rgba(115,209,61,.5);animation:mcLivePulse calc(1.65s/var(--mc-motion-scale)) infinite}
@keyframes mcLivePulse{70%{box-shadow:0 0 0 10px rgba(115,209,61,0)}100%{box-shadow:0 0 0 0 rgba(115,209,61,0)}}
.mc-counting{font-variant-numeric:tabular-nums}
.builder-canvas,.canvas{background-size:32px 32px!important;animation:mcCanvasGrid calc(18s/var(--mc-motion-scale)) linear infinite}
@keyframes mcCanvasGrid{to{background-position:32px 32px,0 0}}
.module-card[draggable="true"],.builder-module{transition:transform var(--mc-transition),box-shadow var(--mc-transition),opacity var(--mc-transition)}
.module-card[draggable="true"]:active,.builder-module.is-dragging{opacity:.68;transform:scale(.98) rotate(.35deg);box-shadow:0 24px 60px rgba(0,0,0,.55),0 0 25px rgba(246,196,83,.18)}
.drop-indicator,.is-drop-target{animation:mcDropGlow calc(1.15s/var(--mc-motion-scale)) ease-in-out infinite alternate}
@keyframes mcDropGlow{from{box-shadow:inset 0 0 0 1px rgba(246,196,83,.32)}to{box-shadow:inset 0 0 0 3px rgba(246,196,83,.8),0 0 24px rgba(246,196,83,.22)}}
.installer-card,.requirement,.install-step,.step{animation:mcInstallerStep calc(.5s*var(--mc-motion-scale)) both}
@keyframes mcInstallerStep{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}
.mc-toast,.alert,.mc-alert{animation:mcToastIn calc(.4s*var(--mc-motion-scale)) cubic-bezier(.2,.8,.25,1) both}
@keyframes mcToastIn{from{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:none}}
.mc-motion-control{position:fixed;right:18px;bottom:18px;z-index:9999;display:flex;align-items:center;gap:7px;padding:7px;border:1px solid var(--mc-border);border-radius:999px;background:rgba(8,12,18,.88);box-shadow:0 12px 34px rgba(0,0,0,.45);backdrop-filter:blur(16px)}
.mc-motion-control button{min-width:38px;padding:7px 10px;border-radius:999px;font-size:.76rem}.mc-motion-control button.is-active{color:#18130a;background:linear-gradient(135deg,var(--mc-gold),var(--mc-orange));border-color:transparent}
.mc-page-leave{animation:mcPageLeave .18s ease both}
@keyframes mcPageLeave{to{opacity:0;transform:translateY(5px)}}
@media(max-width:700px){.mc-motion-control{right:10px;bottom:10px}.mc-motion-control button{min-width:34px;padding:6px 8px}.mc-ambient-layer{opacity:calc(var(--mc-ambient-opacity)*.7)}}
@media(prefers-reduced-motion:reduce){.mc-ambient-layer,.mc-motion-control{display:none!important}.mc-reveal{opacity:1!important;transform:none!important}}
