:root{--bg:#0b0708;--bg-2:#160a0a;--panel:#1e0f0ea8;--line:#ff8c6e2b;--line-strong:#ff8c6e7a;--accent:#ff6b4a;--accent-soft:#ff6b4a1f;--accent-glow:#ff6b4a80;--amber:#f2a14c;--text:#f7ebe6;--text-dim:#f0d6cd9e;--text-faint:#f0d6cd57;--good:#8fd6a0;--warn:#f2b14c;--bad:#f57;--font-display:"Rajdhani", "Zen Kaku Gothic New", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--font-jp:"Zen Kaku Gothic New", "Noto Sans JP", "Hiragino Sans", sans-serif;--ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-jp);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}button,input{font:inherit;color:inherit}.tone-good{--tone:var(--good)}.tone-warn{--tone:var(--warn)}.tone-bad{--tone:var(--bad)}.tone-accent{--tone:var(--accent)}.screen{isolation:isolate;grid-template-rows:72px minmax(0,1fr) 132px 52px;height:100vh;padding:0 32px;display:grid;position:relative}.backdrop{z-index:-1;background:radial-gradient(ellipse 55% 50% at 50% 46%, #be3c1e29, transparent 70%), radial-gradient(ellipse 120% 70% at 50% 125%, #781e1e59, transparent 60%), linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%);position:absolute;inset:0}.backdrop:after{content:"";background:radial-gradient(#0000 55%,#000000b3 100%);position:absolute;inset:0}.grain{pointer-events:none;z-index:50;mix-blend-mode:overlay;background:repeating-linear-gradient(0deg,#ffffff05 0 1px,#0000 1px 3px);position:absolute;inset:0}.stage{pointer-events:none}.world{z-index:1;cursor:grab;touch-action:none;background-image:radial-gradient(#ffa0781a 1px,#0000 1.4px);position:absolute;inset:0;overflow:hidden}.world:active{cursor:grabbing}.world__plane{transform-origin:0 0;will-change:transform;position:absolute;top:0;left:0}.world--over-scene{pointer-events:none;background-image:none}.world--over-scene .world__panel{pointer-events:auto}.scene{z-index:0;position:absolute;inset:0}.scene-layer{opacity:0;transition:opacity 1.4s var(--ease);position:absolute;inset:0}.scene-layer.is-ready{opacity:1}.scene-layer.is-leaving{opacity:0}.scene-layer iframe{background:0 0;border:0;width:100%;height:100%;-webkit-mask-image:linear-gradient(#0000 0,#000 14% 72%,#0000 96%);mask-image:linear-gradient(#0000 0,#000 14% 72%,#0000 96%)}.scene-layer__title{letter-spacing:.06em;text-shadow:0 0 24px #000c;pointer-events:none;animation:fade-up .8s var(--ease) .4s both;font-size:28px;font-weight:700;position:absolute;top:100px;left:40px}.scene-layer__caption{max-width:70%;color:var(--text-dim);text-align:center;pointer-events:none;animation:fade-up .8s var(--ease) .7s both;font-size:15px;position:absolute;bottom:214px;left:50%;transform:translate(-50%)}.scene-layer__status{color:var(--text-dim);pointer-events:none;justify-content:center;align-items:center;font-size:14px;animation:1.4s ease-in-out infinite breathe;display:flex;position:absolute;inset:0}.scene-layer__status.is-error{color:var(--bad);animation:none}.world__panel{cursor:default;transition:left 1.1s var(--ease), top 1.1s var(--ease), width 1.1s var(--ease), height 1.1s var(--ease);animation:panel-in .9s var(--ease) both;display:flex;position:absolute}@keyframes panel-in{0%{opacity:0;filter:blur(8px);transform:translateY(40px)scale(.96)}}.screen:before,.screen:after{content:"";z-index:1;pointer-events:none;position:absolute;left:0;right:0}.screen:before{background:linear-gradient(180deg, var(--bg) 35%, transparent);height:120px;top:0}.screen:after{background:linear-gradient(0deg, var(--bg) 55%, transparent);height:230px;bottom:0}.header,.dialogue,.footer{z-index:2;position:relative}.dialogue{pointer-events:none}.header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex;position:relative}.header:after{content:"";background:linear-gradient(90deg, var(--accent), var(--amber));width:160px;height:1px;box-shadow:0 0 12px var(--accent-glow);position:absolute;bottom:-1px;left:0}.header__brand{align-items:center;gap:14px;display:flex}.header__logo{width:38px;height:38px;filter:drop-shadow(0 0 10px var(--accent-glow))}.header__name{font-family:var(--font-display);letter-spacing:.18em;font-size:30px;font-weight:700;line-height:1}.header__sub{font-family:var(--font-mono);letter-spacing:.3em;color:var(--text-dim);margin-top:5px;font-size:9.5px}.header__status{align-items:center;gap:32px;display:flex}.link{font-family:var(--font-mono);letter-spacing:.16em;color:var(--text-dim);align-items:center;gap:8px;font-size:10.5px;display:flex}.link i{background:var(--warn);width:7px;height:7px;box-shadow:0 0 10px var(--warn);border-radius:50%}.link i.is-on{background:var(--good);box-shadow:0 0 10px var(--good);animation:2.4s ease-in-out infinite breathe}.header__user{color:var(--text-dim);font-size:13px}.clock{flex-direction:column;align-items:flex-end;display:flex}.clock__date{letter-spacing:.12em;color:var(--text-dim);font-size:11px}.clock__time{font-family:var(--font-display);letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:600;line-height:1}.core{z-index:3;pointer-events:none;width:56vmin;height:56vmin;transition:top 1.1s var(--ease), width 1.1s var(--ease), height 1.1s var(--ease), opacity 1.6s var(--ease), filter 1.6s var(--ease);position:fixed;top:calc(50% - 48px);left:50%;transform:translate(-50%,-50%)}.core--mini{width:72px;height:72px;top:36px}.core--mini .core__label{opacity:0}.core-canvas{width:100%;height:100%;position:absolute;inset:0}.core__label{pointer-events:none;flex-direction:column;align-items:center;gap:12px;width:min(100%,420px);transition:opacity .4s;display:flex;position:absolute;top:96%;left:50%;transform:translate(-50%)}.core__state{white-space:nowrap;font-family:var(--font-mono);letter-spacing:.4em;color:var(--accent);text-shadow:0 0 12px var(--accent-glow);align-items:center;gap:10px;font-size:12px;display:flex}.core__state i{background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);border-radius:50%;animation:1.4s ease-in-out infinite breathe}.core__state em{font-style:normal;font-family:var(--font-jp);letter-spacing:.15em;color:var(--text-dim);font-size:12px}.activity{flex-direction:column;gap:4px;width:100%;margin:0;padding:0;list-style:none;display:flex}.activity li{color:var(--text-faint);animation:fade-up .35s var(--ease) both;align-items:baseline;gap:10px;font-size:12.5px;display:flex}.activity li:before{content:"";border:1px solid;border-radius:50%;flex:none;width:6px;height:6px;transform:translateY(-1px)}.activity li.is-current{color:var(--text)}.activity li.is-current:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 8px var(--accent);animation:.9s ease-in-out infinite breathe}.activity__summary{font-family:var(--font-mono);color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.activity--inline{flex-flow:wrap;justify-content:center;gap:4px 18px}.activity:not(.is-active){opacity:.55;transition:opacity .6s}.panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(160deg,#ff785a12,#1e0f0e6b 40%,#140a0a80);border:1px solid #ff8c6e1a;border-radius:14px;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:0 40px 100px #00000073}.panel__head{white-space:nowrap;align-items:baseline;gap:12px;padding:18px 24px 8px;display:flex}.panel__code{font-family:var(--font-mono);color:var(--accent);font-size:10px;font-weight:700}.panel__title{letter-spacing:.06em;font-size:26px;font-weight:700}.panel__label{color:var(--text-dim);text-overflow:ellipsis;margin-left:auto;font-size:14px;overflow:hidden}.panel__body{scrollbar-width:none;flex-direction:column;flex:1;gap:16px;min-height:0;padding:12px 24px 22px;display:flex;position:relative;overflow-y:auto}.panel__reveal{pointer-events:none;position:absolute;inset:0;overflow:hidden}.panel__reveal:after{content:"";background:linear-gradient(180deg, transparent, var(--accent-soft) 80%, #ffdcc838 99%, transparent);height:40%;animation:sweep 1.1s var(--ease) .1s both;position:absolute;left:0;right:0}@keyframes sweep{0%{opacity:1;transform:translateY(-100%)}to{opacity:0;transform:translateY(260%)}}.caret{color:var(--accent);animation:.7s steps(2,end) infinite blink}.block{min-height:0}.block--graph,.block--line{flex:1;min-height:160px;display:flex}.block-text{color:var(--text);margin:0;font-size:20px;line-height:1.75}.stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;display:grid}.stat{border-left:2px solid var(--tone,var(--accent));animation:fade-up .5s var(--ease) both;background:linear-gradient(90deg,#ff785a14,#0000);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.stat__label{color:var(--text-dim);font-size:15px}.stat__value{font-family:var(--font-display);color:var(--tone,var(--text));font-variant-numeric:tabular-nums;font-size:56px;font-weight:700;line-height:1}.stat__value small{font-family:var(--font-jp);color:var(--text-dim);margin-left:4px;font-size:.38em;font-weight:500}.stat__note{color:var(--text-faint);font-size:13px}.list,.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list li,.timeline li{animation:fade-up .45s var(--ease) both;border-bottom:1px solid #ff8c6e14;align-items:center;gap:14px;padding:10px 0;display:flex}.list li{border-left:2px solid var(--tone,transparent);padding-left:12px}.item__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.item__label{font-size:20px;font-weight:500}.item__detail{color:var(--text-dim);font-size:15px;line-height:1.5}.item__value{font-family:var(--font-display);color:var(--tone,var(--text));font-size:20px;font-weight:700}.item__meta{max-width:40%;color:var(--text-faint);text-align:right;flex:none;font-size:13px}.timeline li{border-bottom:none;align-items:flex-start;padding:6px 0 12px;position:relative}.timeline__time{width:120px;font-family:var(--font-mono);color:var(--tone,var(--amber));text-align:right;flex:none;padding-top:3px;font-size:15px}.timeline__dot{border:2px solid var(--tone,var(--accent));background:var(--bg);border-radius:50%;flex:none;width:10px;height:10px;margin-top:5px;position:relative}.timeline li:not(:last-child) .timeline__dot:after{content:"";background:var(--line);width:2px;height:46px;position:absolute;top:10px;left:2px}.bars{flex-direction:column;gap:10px;display:flex}.bars__row{grid-template-columns:minmax(70px,30%) 1fr auto;align-items:center;gap:12px;display:grid}.bars__label{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.bars__track{background:#ff8c6e14;border-radius:5px;height:10px;overflow:hidden}.bars__track i{background:linear-gradient(90deg, var(--accent), var(--tone,var(--amber)));height:100%;box-shadow:0 0 10px var(--accent-glow);transform-origin:0;animation:grow .9s var(--ease) both;border-radius:5px;display:block}.bars__value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.bars__value small,.progress__pct{font-family:var(--font-jp);color:var(--text-dim);margin-left:3px;font-size:11px}@keyframes grow{0%{transform:scaleX(0)}}.progress{flex-direction:column;gap:14px;display:flex}.progress__head{justify-content:space-between;margin-bottom:6px;display:flex}.progress__pct{font-family:var(--font-display);color:var(--tone,var(--text));font-size:17px;font-weight:700}.progress__track{background:#ff8c6e14;border-radius:3px;height:6px;overflow:hidden}.progress__track i{background:var(--tone,var(--accent));height:100%;box-shadow:0 0 8px var(--tone,var(--accent));transform-origin:0;animation:grow 1s var(--ease) both;display:block}.table{scrollbar-width:none;overflow:auto}.table table{border-collapse:collapse;width:100%;font-size:16px}.table th{text-align:left;color:var(--text-dim);border-bottom:1px solid var(--line-strong);background:#1c0f0e;padding:6px 10px;font-size:13px;font-weight:500;position:sticky;top:0}.table td{border-bottom:1px solid #ff8c6e12;padding:8px 10px}.table tr{animation:fade-up .4s var(--ease) both}.line{flex-direction:column;flex:1;min-height:0;display:flex}.line svg{flex:1;width:100%;min-height:0}.line__grid line{stroke:#ff8c6e1a}.line__grid text,.line__label{fill:var(--text-faint);font-size:11px;font-family:var(--font-mono)}.line__grid text{text-anchor:end}.line__label{text-anchor:middle}.line__series{--series:var(--accent)}.series-1{--series:var(--amber)}.series-2{--series:var(--good)}.series-3{--series:#c99bff}.line__stroke{fill:none;stroke:var(--series);stroke-width:2.5px;stroke-dasharray:1;stroke-dashoffset:1px;filter:drop-shadow(0 0 4px var(--series));animation:draw 1.6s var(--ease) .2s forwards}.line__area{fill:var(--series);opacity:.08}.line__series circle{fill:var(--series);animation:.4s 1.6s backwards fade-in}.line__legend{color:var(--text-dim);gap:16px;font-size:11.5px;display:flex}.line__legend i{vertical-align:middle;background:var(--series,var(--accent));width:10px;height:3px;margin-right:6px;display:inline-block}.graph{flex:1;width:100%;min-height:0}.graph__link{opacity:0;animation:.5s forwards fade-in}.graph__link line{stroke:#ff8c6e59;stroke-width:1.2px;stroke-dasharray:1;stroke-dashoffset:1px;animation:draw .9s var(--ease) forwards;animation-delay:inherit}.graph__link text{fill:var(--text-faint);text-anchor:middle;font-size:10px}.graph__node-inner{opacity:0;animation:node-in .6s var(--ease) forwards}.graph__node circle{fill:var(--bg);stroke:var(--accent);stroke-width:1.6px}.graph__node.is-hub circle:not(.graph__halo){fill:var(--accent);filter:drop-shadow(0 0 8px var(--accent))}.graph__halo{fill:none;stroke-dasharray:3 4;transform-origin:50%;animation:8s linear infinite spin}.graph__node text{fill:var(--text);text-anchor:middle;font-size:12px}.graph__node .graph__kind{fill:var(--text-faint);font-size:9.5px;font-family:var(--font-mono)}@keyframes node-in{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}@keyframes draw{to{stroke-dashoffset:0}}.dialogue{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:0 12%;display:flex}.dialogue__operator{color:var(--text-dim);animation:fade-up .4s var(--ease) both;font-size:15px}.dialogue__operator:before{content:"“";color:var(--text-faint);margin-right:4px}.dialogue__operator:after{content:"”";color:var(--text-faint);margin-left:4px}.dialogue__ai{letter-spacing:.04em;text-shadow:0 0 24px #ff6b4a59;animation:fade-up .4s var(--ease) both;font-size:clamp(20px,1.7vw,30px);font-weight:500;line-height:1.55}.footer{border-top:1px solid var(--line);color:var(--text-dim);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;font-size:12px;display:grid}.mic{border:1px solid var(--line);cursor:pointer;color:var(--text-dim);background:0 0;border-radius:999px;align-items:center;gap:10px;padding:7px 16px;font-size:12px;display:flex}.mic i{border:1.5px solid;border-radius:50%;width:8px;height:8px}.mic.is-on{color:var(--text);border-color:var(--amber);box-shadow:inset 0 0 18px #f2a14c33}.mic.is-on i{background:var(--amber);border-color:var(--amber);box-shadow:0 0 8px var(--amber);animation:.8s ease-in-out infinite breathe}.command input{width:100%;color:var(--text);background:0 0;border:none;outline:none;font-size:14px}.command input::placeholder{color:var(--text-faint)}.keys{gap:18px;display:flex}kbd{border:1px solid var(--line-strong);min-width:20px;color:var(--text);text-align:center;font-family:var(--font-mono);border-radius:3px;margin-right:7px;padding:1px 5px;font-size:10.5px;display:inline-block}.boot{z-index:60;cursor:pointer;transition:opacity .9s var(--ease), filter .9s var(--ease);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.boot--done{opacity:0;filter:blur(10px);pointer-events:none}.boot__center{flex-direction:column;align-items:center;gap:10px;display:flex}.boot__emblem{width:180px;height:180px;margin-bottom:20px;position:relative}.boot__emblem svg{fill:none;stroke:var(--accent);filter:drop-shadow(0 0 10px var(--accent-glow));position:absolute;inset:0}.boot__emblem img{width:80px;height:80px;filter:drop-shadow(0 0 18px var(--accent-glow));animation:3.2s ease-in-out infinite breathe;position:absolute;inset:50px}.boot__ring{transform-origin:50%;stroke-width:1px}.boot__ring--outer{stroke-dasharray:2 6;animation:30s linear infinite spin}.boot__ring--mid{stroke-dasharray:80 30 10 30;stroke-width:2px;animation:9s linear infinite reverse spin}.boot__name{font-family:var(--font-display);letter-spacing:.3em;text-shadow:0 0 30px var(--accent-glow);margin-right:-.3em;font-size:72px;font-weight:700;line-height:1}.boot__sub{font-family:var(--font-mono);letter-spacing:.4em;color:var(--text-dim);font-size:11px}.boot__start{background:var(--accent-soft);border:1px solid var(--accent);cursor:pointer;border-radius:999px;flex-direction:column;align-items:center;gap:6px;margin-top:40px;padding:14px 52px;transition:background .2s;display:flex}.boot__start:hover{background:#ff6b4a42}.boot__start span{font-family:var(--font-display);letter-spacing:.5em;margin-right:-.5em;font-size:18px;font-weight:700}.boot__start em{color:var(--text-dim);font-size:11.5px;font-style:normal}.boot__login{flex-direction:column;align-items:center;gap:12px;margin-top:40px;display:flex}.boot__hint,.boot__error{color:var(--text-dim);margin-top:40px;font-size:13px}.boot__error{color:var(--bad);text-align:center;max-width:560px;line-height:1.7}.boot__login .boot__error{margin-top:0}.screen .header{animation:fade-up .8s var(--ease) .1s both}.screen .core>canvas{animation:core-in 1.4s var(--ease) both}.screen .footer{animation:fade-up .8s var(--ease) .4s both}@keyframes core-in{0%{opacity:0;filter:blur(12px);transform:scale(.85)}}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}}@keyframes fade-in{to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:.3}}@keyframes breathe{50%{opacity:.45}}.world,.header,.dialogue,.footer{transition:opacity 1.6s var(--ease)}.screen.is-idle .world,.screen.is-idle .header,.screen.is-idle .dialogue,.screen.is-idle .footer{opacity:.25}.screen.is-idle .core{opacity:.6;filter:saturate(.6)}
