:root{--glia-t0: #4ae860;--glia-t1: #3ddbd9;--glia-t2: #b48cff;--glia-t3: #d4a44a;--glia-audio: #3ddbd9;--glia-line: rgba(61, 219, 217, .14);--glia-panel: rgba(12, 8, 20, .85);--glia-chamfer: polygon( 7px 0, 100% 0, 100% calc(100% - 7px) , calc(100% - 7px) 100%, 0 100%, 0 7px )}html,body{height:100%;overflow:hidden;overscroll-behavior:none}.glia-main{height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-deep);font-family:var(--font-mono);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}#glia-root,.g-root{flex:1;min-height:0;display:flex;flex-direction:column}.g-root button{font-family:var(--font-mono);color:var(--text-primary);background:transparent;border:1px solid var(--glia-line);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.g-hidden{display:none!important}.g-transport{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top) + 8px) 10px 8px;border-bottom:1px solid var(--glia-line);background:var(--glia-panel)}.g-play{min-width:52px;min-height:44px;font-size:1.05rem;color:var(--glia-audio);clip-path:var(--glia-chamfer);background:#3ddbd90f}.g-play.g-playing{color:var(--bg-deep);background:var(--glia-audio);text-shadow:none;filter:drop-shadow(0 0 10px rgba(61,219,217,.55))}.g-bpm{display:flex;align-items:stretch;gap:4px}.g-bpm-btn{min-width:44px;min-height:44px;font-size:1.1rem;clip-path:var(--glia-chamfer)}.g-bpm-btn:active{background:#3ddbd926}.g-bpm-readout{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:58px;min-height:44px;border:1px solid var(--glia-line);clip-path:var(--glia-chamfer);cursor:ew-resize;touch-action:none;user-select:none}.g-bpm-val{font-size:1rem;line-height:1.1;color:var(--text-primary);pointer-events:auto;touch-action:none}.g-bpm-unit{font-size:.55rem;letter-spacing:.2em;color:var(--text-dim);pointer-events:none}.g-chips{display:flex;gap:6px;flex:1;min-width:200px}.g-chip{--e: 0;position:relative;flex:1;min-width:44px;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;clip-path:var(--glia-chamfer);border-color:color-mix(in srgb,var(--c) 25%,transparent);box-shadow:inset 0 0 calc(4px + var(--e) * 26px) color-mix(in srgb,var(--c) calc(12% + var(--e) * 38%),transparent);transition:border-color .15s ease}.g-chip.g-active{border-color:var(--c);background:color-mix(in srgb,var(--c) 12%,transparent)}.g-chip-num{font-size:.78rem;color:var(--c);line-height:1}.g-chip-meter{width:70%;height:3px;background:#d8e0d814;overflow:hidden}.g-chip-fill{height:100%;width:0%;background:var(--c);box-shadow:0 0 6px var(--c);transition:width 60ms linear}.g-menu-btn{min-width:44px;min-height:44px;font-size:1.2rem;clip-path:var(--glia-chamfer)}.g-tabs{display:flex;border-bottom:1px solid var(--glia-line);background:var(--glia-panel)}.g-tab{flex:1;min-height:44px;border:none;border-bottom:2px solid transparent;font-size:.78rem;letter-spacing:.28em;color:var(--text-dim)}.g-tab.g-active{color:var(--glia-audio);border-bottom-color:var(--glia-audio);text-shadow:0 0 8px rgba(61,219,217,.6)}.g-views{flex:1;min-height:0;position:relative}.g-view{position:absolute;inset:0;overflow:hidden}.g-overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 40%,#0c1416 0%,var(--bg-deep) 70%);transition:opacity .4s ease}.g-overlay.g-gone{opacity:0;pointer-events:none}.g-overlay-inner{display:flex;flex-direction:column;align-items:center;gap:1.1rem;padding:1.5rem;text-align:center}.g-overlay-title{font-size:2.2rem;letter-spacing:.55em;padding-left:.55em;color:var(--glia-audio);filter:drop-shadow(0 0 6px rgba(61,219,217,.8)) drop-shadow(0 0 24px rgba(61,219,217,.35))}.g-wake{min-height:56px;padding:.9rem 1.8rem;font-size:.95rem;letter-spacing:.18em;color:#d2fffd;border-color:#3ddbd966;clip-path:var(--glia-chamfer);background:#3ddbd912;animation:g-pulse 2.4s ease-in-out infinite}.g-wake:disabled{opacity:.5;animation:none}@keyframes g-pulse{0%,to{filter:drop-shadow(0 0 4px rgba(61,219,217,.5))}50%{filter:drop-shadow(0 0 18px rgba(61,219,217,.9))}}.g-overlay-sub{font-size:.72rem;letter-spacing:.24em;color:var(--text-secondary)}.g-overlay-status{font-size:.7rem;color:var(--text-dim);min-height:1em;max-width:80vw}.g-overlay-status.g-error{color:#f56}.g-overlay-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.4rem;margin-top:1.2rem;max-width:86vw}.g-overlay-link{font-size:.68rem;letter-spacing:.2em;color:#3ddbd98c;text-decoration:none;transition:color .2s ease}.g-overlay-link:hover{color:#d2fffd}.g-toasts{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 18px);transform:translate(-50%);z-index:80;display:flex;flex-direction:column;align-items:center;gap:6px;pointer-events:none}.g-toast{background:var(--glia-panel);border:1px solid var(--glia-line);clip-path:var(--glia-chamfer);color:var(--text-primary);font-family:var(--font-mono);font-size:.75rem;padding:.55rem 1rem;opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .3s ease;max-width:86vw}.g-toast.g-show{opacity:1;transform:translateY(0)}.g-sheet-back,.g-menu-back{position:fixed;inset:0;z-index:70}.g-sheet-back{background:#050208b3;display:flex;align-items:center;justify-content:center}.g-sheet{background:var(--glia-panel);border:1px solid var(--glia-line);clip-path:var(--glia-chamfer);padding:1.2rem;max-width:min(86vw,380px);display:flex;flex-direction:column;gap:.9rem}.g-sheet-title{font-size:.9rem;letter-spacing:.14em;color:var(--glia-audio)}.g-sheet-body{font-size:.74rem;line-height:1.6;color:var(--text-secondary)}.g-sheet-row{display:flex;gap:8px;justify-content:flex-end}.g-sheet-btn{min-height:44px;min-width:88px;font-size:.75rem;letter-spacing:.1em;clip-path:var(--glia-chamfer)}.g-sheet-confirm{color:var(--glia-audio);border-color:#3ddbd973}.g-menu{position:fixed;background:var(--glia-panel);border:1px solid var(--glia-line);clip-path:var(--glia-chamfer);display:flex;flex-direction:column;min-width:190px;z-index:71}.g-menu-item{min-height:44px;border:none;border-bottom:1px solid rgba(61,219,217,.07);text-align:left;padding:0 1rem;font-size:.76rem;letter-spacing:.08em}.g-menu-item:last-child{border-bottom:none}.g-menu-item:active{background:#3ddbd91f;color:var(--glia-audio)}
