*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #090909;--color-surface: #101012;--color-surface-2: #181818;--color-border: #282830;--color-accent-1: #8888a0;--color-accent-2: #606878;--color-accent-glow: #d0d0e0;--color-text: #e2e2e8;--color-text-muted: #686878;--color-gold: #c9a84c;--color-crimson: #8b1a2a;--font-serif: "Cormorant Garamond", "Garamond", Georgia, serif;--font-mono: "JetBrains Mono", "Fira Code", "Courier New", monospace;--card-width: 320px;--card-height: 480px}html,body,#root{width:100%;height:100%;background:var(--color-bg);color:var(--color-text);font-family:var(--font-serif);overflow-x:hidden}a{color:inherit;text-decoration:none}@keyframes logoGlow{0%{filter:drop-shadow(0 0 6px rgba(180,180,195,.5))}50%{filter:drop-shadow(0 0 28px rgba(210,210,230,.95)) drop-shadow(0 0 55px rgba(150,150,170,.45))}to{filter:drop-shadow(0 0 6px rgba(180,180,195,.5))}}@keyframes mandalaIdle{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bladeReveal{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes neonPulse{0%,to{box-shadow:0 0 10px 2px #b400ff80,inset 0 0 10px #b400ff0d;border-color:#b44fff}50%{box-shadow:0 0 20px 6px #00dcff99,inset 0 0 16px #00dcff12;border-color:#00dcff}}@keyframes firePulse{0%,to{opacity:.55;transform:scaleX(1)}50%{opacity:1;transform:scaleX(1.03)}}@keyframes iceShimmer{0%{left:-70%}to{left:130%}}@keyframes goldShimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes circuitScan{0%{top:-3px;opacity:0}8%{opacity:.8}92%{opacity:.8}to{top:100%;opacity:0}}main{position:relative;min-height:100vh}.dagger-mandala{display:block;width:auto}.mandala-group{animation:mandalaIdle 24s linear infinite}.intro-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--color-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}.intro-logo-row{display:flex;align-items:flex-end;gap:0;animation:logoGlow 1.6s ease-in-out 1.9s both}.intro-word{font-family:var(--font-serif);font-size:clamp(3rem,8vw,6.5rem);font-weight:600;letter-spacing:.12em;color:var(--color-text);text-shadow:3px 5px 0px rgba(30,30,35,.9),6px 10px 0px rgba(20,20,25,.6);-webkit-user-select:none;user-select:none;line-height:1}.intro-word--left{padding-right:.04em}.intro-word--right{padding-left:.04em}.intro-dagger-wrap{display:flex;align-items:flex-end;justify-content:center;transform-origin:bottom center}.intro-dagger{height:1.15em;width:auto;font-size:clamp(3rem,8vw,6.5rem);margin-bottom:.06em}.intro-tagline{font-family:var(--font-serif);font-size:clamp(.7rem,1.5vw,1rem);font-weight:300;letter-spacing:.45em;text-transform:uppercase;color:var(--color-text-muted)}.mc-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:0;cursor:crosshair}.typewriter{font-family:var(--font-mono);font-size:.82rem;line-height:1.65;color:var(--color-text-muted);letter-spacing:.02em}.typewriter-cursor{display:inline-block;width:2px;height:1em;background:var(--color-accent-1);margin-left:2px;vertical-align:text-bottom;animation:blink .85s step-end infinite}.typewriter-cursor--done{animation-duration:1.2s;opacity:.5}.card{position:absolute;width:var(--card-width);height:var(--card-height);background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;backface-visibility:hidden;display:flex;flex-direction:column;overflow:hidden;transition:border-color .4s ease,box-shadow .4s ease;--frame-color: var(--color-accent-1)}.card--active{border-color:var(--frame-color)}.card-corner{position:absolute;width:18px;height:18px;border-color:var(--frame-color);border-style:solid;opacity:.5;z-index:3;pointer-events:none;transition:opacity .4s ease}.card--active .card-corner{opacity:1}.card-corner--tl{top:10px;left:10px;border-width:2px 0 0 2px}.card-corner--tr{top:10px;right:10px;border-width:2px 2px 0 0}.card-corner--bl{bottom:10px;left:10px;border-width:0 0 2px 2px}.card-corner--br{bottom:10px;right:10px;border-width:0 2px 2px 0}.card-edit-btn{position:absolute;top:8px;right:36px;z-index:10;width:28px;height:28px;background:#101012d1;border:1px solid var(--color-border);border-radius:50%;color:var(--color-text-muted);font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.card-edit-btn:hover{border-color:var(--color-accent-glow);color:var(--color-accent-glow)}.card--frame-silver{--frame-color: #8888a0}.card--frame-silver.card--active{box-shadow:0 0 18px #8888a02e,0 0 50px #8888a012}.card--frame-neon{--frame-color: #b44fff;border-color:#b44fff}.card--frame-neon.card--active{animation:neonPulse 3s ease-in-out infinite}.card--frame-fire{--frame-color: #ff6a00;border-color:#ff6a00}.card--frame-fire.card--active{box-shadow:0 6px 28px #ff640059,0 0 10px #ff640026}.card--frame-fire:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(255,120,0,.18) 0%,transparent 55%);animation:firePulse 2s ease-in-out infinite;pointer-events:none;z-index:1;border-radius:6px}.card--frame-ice{--frame-color: #5bc8f5;border-color:#5bc8f5;overflow:hidden}.card--frame-ice.card--active{box-shadow:0 0 22px #5bc8f540,0 0 6px #5bc8f51a}.card--frame-ice:before{content:"";position:absolute;top:0;bottom:0;width:55%;background:linear-gradient(to right,transparent,rgba(255,255,255,.1),transparent);animation:iceShimmer 3.5s linear infinite;pointer-events:none;z-index:2}.card--frame-gold{--frame-color: #c9a84c;border-color:#c9a84c}.card--frame-gold.card--active{box-shadow:0 0 20px #c9a84c4d,0 0 6px #c9a84c1a}.card--frame-gold:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 20%,rgba(255,220,100,.13) 40%,rgba(255,240,160,.2) 50%,rgba(255,220,100,.13) 60%,transparent 80%);background-size:200% auto;animation:goldShimmer 4s linear infinite;pointer-events:none;z-index:2;border-radius:6px}.card--frame-circuit{--frame-color: #00ff88;border-color:#00ff8880;overflow:hidden}.card--frame-circuit.card--active{box-shadow:0 0 18px #0f83,0 0 6px #00ff8814}.card--frame-circuit:before{content:"";position:absolute;left:0;right:0;height:3px;background:linear-gradient(to right,transparent,rgba(0,255,136,.7),transparent);box-shadow:0 0 8px #0f89;animation:circuitScan 3.5s linear infinite;pointer-events:none;z-index:2}.card-video-wrap{width:100%;height:195px;flex-shrink:0;background:var(--color-surface-2);overflow:hidden;position:relative}.card-video{width:100%;height:100%;object-fit:cover;display:block}.card-image{object-fit:cover}.card-video-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-surface-2) 0%,#0a0a0c 100%)}.card-video-placeholder-icon{font-size:2.5rem;color:var(--color-border);opacity:.4}.card-body{flex:1;padding:1.25rem 1.35rem 1.5rem;display:flex;flex-direction:column;gap:.75rem;position:relative;z-index:3}.card-title{font-family:var(--font-serif);font-size:1.3rem;font-weight:600;letter-spacing:.06em;color:var(--color-text);line-height:1.2}.card-desc{flex:1;line-height:1.65}.card-desc--sm{font-size:.75rem}.card-desc--md{font-size:.82rem}.card-desc--lg{font-size:.95rem}.card-link{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid var(--frame-color);border-radius:3px;color:var(--frame-color);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;transition:background .25s ease,box-shadow .25s ease,color .25s ease;align-self:flex-start}.card-link:hover{background:#a0a0b41a;box-shadow:0 0 12px #d0d0e026;color:#fff}.card-link-arrow{transition:transform .2s ease}.card-link:hover .card-link-arrow{transform:translate(3px)}.fp-wrap{display:flex;flex-direction:column;gap:.6rem}.fp-label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted)}.fp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.fp-swatch{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.6rem .4rem;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:5px;cursor:pointer;transition:border-color .2s,box-shadow .2s}.fp-swatch:hover{border-color:var(--color-accent-1)}.fp-swatch--active{border-color:var(--color-accent-glow);box-shadow:0 0 10px #d0d0e026}.fp-swatch-preview{display:block;width:36px;height:24px;border-radius:3px;border:2px solid currentColor;position:relative;overflow:hidden}.fp-swatch--silver{color:#8888a0}.fp-swatch--neon{color:#b44fff}.fp-swatch--fire{color:#ff6a00}.fp-swatch--ice{color:#5bc8f5}.fp-swatch--gold{color:#c9a84c}.fp-swatch--circuit{color:#0f8}.fp-swatch--neon .fp-swatch-preview{animation:fpNeon 2s ease-in-out infinite}@keyframes fpNeon{0%,to{box-shadow:0 0 4px #b44fff inset;border-color:#b44fff}50%{box-shadow:0 0 6px #0ef inset;border-color:#0ef}}.fp-swatch--fire .fp-swatch-preview:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(to top,rgba(255,100,0,.5),transparent);animation:fpFire 1s ease-in-out infinite alternate}@keyframes fpFire{0%{height:50%}to{height:70%}}.fp-swatch--ice .fp-swatch-preview:after{content:"";position:absolute;top:0;bottom:0;width:40%;background:linear-gradient(to right,transparent,rgba(255,255,255,.35),transparent);animation:fpIce 2s linear infinite;left:-40%}@keyframes fpIce{to{left:120%}}.fp-swatch--gold .fp-swatch-preview{background:linear-gradient(115deg,transparent 30%,rgba(255,220,100,.4) 50%,transparent 70%);background-size:200% auto;animation:fpGold 2s linear infinite}@keyframes fpGold{to{background-position:200% center}}.fp-swatch--circuit .fp-swatch-preview:after{content:"";position:absolute;left:0;right:0;height:2px;background:#0f8c;animation:fpCircuit 1.5s linear infinite;top:-4px}@keyframes fpCircuit{to{top:110%}}.fp-swatch-label{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.fp-swatch--active .fp-swatch-label{color:var(--color-text)}.ce-panel{position:fixed;top:0;right:0;bottom:0;width:min(400px,100vw);z-index:160;background:var(--color-surface);border-left:1px solid var(--color-border);display:flex;flex-direction:column;box-shadow:-8px 0 40px #0009;animation:slideInRight .25s ease both}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.ce-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.ce-title{font-family:var(--font-serif);font-size:1.1rem;font-weight:600;letter-spacing:.08em;color:var(--color-text)}.ce-close{background:none;border:none;color:var(--color-text-muted);font-size:1rem;cursor:pointer;padding:.25rem .5rem;border-radius:3px;transition:color .2s,background .2s}.ce-close:hover{color:var(--color-text);background:var(--color-surface-2)}.ce-body{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.ce-label{display:flex;flex-direction:column;gap:.35rem;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-muted)}.ce-input,.ce-textarea{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text);font-family:var(--font-serif);font-size:.9rem;padding:.6rem .75rem;outline:none;transition:border-color .2s;width:100%;resize:vertical}.ce-input:focus,.ce-textarea:focus{border-color:var(--color-accent-1)}.ce-section-label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);padding-top:.25rem;border-top:1px solid var(--color-border)}.ce-toolbar{display:flex;gap:.5rem;flex-wrap:wrap}.ce-toolbar-group{display:flex;border:1px solid var(--color-border);border-radius:4px;overflow:hidden}.ce-tb-btn{padding:.35rem .6rem;background:var(--color-surface-2);border:none;color:var(--color-text-muted);font-family:var(--font-mono);font-size:.72rem;cursor:pointer;transition:background .15s,color .15s;border-right:1px solid var(--color-border)}.ce-tb-btn:last-child{border-right:none}.ce-tb-btn:hover{background:var(--color-border);color:var(--color-text)}.ce-tb-btn.active{background:var(--color-accent-1);color:#fff}.ce-tb-b{font-weight:700}.ce-tb-i{font-style:italic}.ce-media-toggle{display:flex;border:1px solid var(--color-border);border-radius:4px;overflow:hidden;width:fit-content}.ce-color-row{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap}.ce-color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s,border-color .15s;padding:0}.ce-color-swatch:hover{transform:scale(1.2)}.ce-color-swatch.active{border-color:var(--color-accent-glow)}.ce-color-custom{width:28px;height:28px;border-radius:4px;border:1px solid var(--color-border);background:var(--color-surface-2);cursor:pointer;padding:2px}.ce-upload-area{display:flex;flex-direction:column;gap:.6rem}.ce-media-preview{border-radius:4px;overflow:hidden;border:1px solid var(--color-border);max-height:140px}.ce-media-preview img,.ce-media-preview video{display:block;width:100%;object-fit:cover;max-height:140px}.ce-upload-btn{padding:.55rem 1rem;background:var(--color-surface-2);border:1px dashed var(--color-border);border-radius:4px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;cursor:pointer;transition:border-color .2s,color .2s}.ce-upload-btn:hover:not(:disabled){border-color:var(--color-accent-1);color:var(--color-text)}.ce-upload-btn:disabled{opacity:.5;cursor:default}.ce-upload-error{font-family:var(--font-mono);font-size:.7rem;color:#ff6b6b}.ce-footer{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-top:1px solid var(--color-border);flex-shrink:0;gap:.75rem}.ce-footer-actions{display:flex;gap:.5rem}.ce-delete{background:none;border:1px solid var(--color-border);border-radius:3px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;padding:.4rem .7rem;cursor:pointer;transition:border-color .2s,color .2s}.ce-delete:hover,.ce-delete.confirming{border-color:#ff6b6b;color:#ff6b6b}.ce-cancel{background:none;border:1px solid var(--color-border);border-radius:3px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;padding:.45rem .9rem;cursor:pointer;transition:border-color .2s,color .2s}.ce-cancel:hover{border-color:var(--color-accent-1);color:var(--color-text)}.ce-save{padding:.45rem 1.1rem;background:var(--color-accent-1);border:none;border-radius:3px;color:#fff;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;cursor:pointer;transition:opacity .2s,box-shadow .2s}.ce-save:hover:not(:disabled){opacity:.85;box-shadow:0 0 12px #8888a040}.ce-save:disabled{opacity:.4;cursor:default}.carousel-section-inner{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.carousel-row{display:flex;align-items:center;gap:1.5rem}.carousel-scene{perspective:1200px;perspective-origin:50% 38%;width:var(--card-width);height:var(--card-height);position:relative;flex-shrink:0}.carousel-cylinder{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .85s cubic-bezier(.25,.46,.45,.94)}.carousel-card-slot{position:absolute;top:0;left:0;width:var(--card-width);height:var(--card-height);transform-style:preserve-3d}.carousel-arrow{width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-border);border-radius:50%;cursor:pointer;color:var(--color-accent-1);transition:border-color .25s ease,color .25s ease,box-shadow .25s ease,transform .2s ease}.carousel-arrow svg{width:20px;height:20px;stroke:currentColor}.carousel-arrow:hover{border-color:var(--color-accent-glow);color:var(--color-accent-glow);box-shadow:0 0 14px #d0d0e02e;transform:scale(1.08)}.carousel-arrow:active{transform:scale(.95)}.carousel-loading{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;color:var(--color-text-muted);padding:4rem 0}.carousel-add-btn{margin-top:1rem;padding:.5rem 1.4rem;background:transparent;border:1px dashed var(--color-border);border-radius:4px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;cursor:pointer;transition:border-color .2s,color .2s}.carousel-add-btn:hover{border-color:var(--color-accent-1);color:var(--color-text)}.landing{position:relative;width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:3rem 10rem 4rem}.landing-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:3rem;animation:fadeUp .9s ease both;width:100%}.landing-text{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center;padding-top:40px}.landing-eyebrow{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.45em;text-transform:uppercase;color:var(--color-accent-glow);opacity:.6}.landing-headline{font-family:var(--font-serif);font-size:clamp(2rem,5vw,4rem);font-weight:300;line-height:1.18;letter-spacing:.04em;color:var(--color-text);text-shadow:2px 4px 0px rgba(20,20,24,.8),0 0 40px rgba(200,200,220,.08)}.landing-sub{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.22em;color:var(--color-text-muted);margin-top:.5rem;animation:fadeUp 1.2s ease .4s both}.admin-bar{position:fixed;top:0;left:0;right:0;z-index:150;height:36px;background:#101012eb;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;padding:0 1.5rem;gap:1.5rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em}.admin-bar-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#4cff91;box-shadow:0 0 6px #4cff91;margin-right:.5rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.admin-bar-label{color:var(--color-text);display:flex;align-items:center}.admin-bar-hint{color:var(--color-text-muted);flex:1}.admin-bar-logout{background:none;border:1px solid var(--color-border);border-radius:3px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;padding:.2rem .6rem;cursor:pointer;transition:border-color .2s,color .2s}.admin-bar-logout:hover{border-color:#ff6b6b;color:#ff6b6b}.al-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center}.al-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:2.5rem 2rem;width:min(380px,90vw);display:flex;flex-direction:column;align-items:center;gap:1rem;box-shadow:0 0 60px #0009,0 0 20px #8888a014;animation:fadeUp .2s ease both}.al-dagger{font-size:2rem;filter:grayscale(1);opacity:.6}.al-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:600;letter-spacing:.1em;color:var(--color-text);margin:0}.al-sub{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.25em;color:var(--color-text-muted);text-transform:uppercase}.al-input{width:100%;padding:.75rem 1rem;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text);font-family:var(--font-mono);font-size:.9rem;letter-spacing:.08em;outline:none;transition:border-color .2s}.al-input:focus{border-color:var(--color-accent-1)}.al-error{font-family:var(--font-mono);font-size:.75rem;color:#ff6b6b;letter-spacing:.05em}.al-btn{width:100%;padding:.75rem;background:var(--color-accent-1);border:none;border-radius:4px;color:#fff;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:opacity .2s,box-shadow .2s}.al-btn:hover:not(:disabled){opacity:.85;box-shadow:0 0 16px #8888a04d}.al-btn:disabled{opacity:.4;cursor:default}.al-cancel{background:none;border:none;color:var(--color-text-muted);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:0}.al-cancel:hover{color:var(--color-text)}
