.terminal{flex-grow:1;padding:20px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;min-height:0}.terminal.ai-mode{display:flex;flex-direction:column;padding:0;overflow:hidden}.chat-history{flex-grow:1;padding:20px 20px 10px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;min-height:0}@media (prefers-reduced-motion: no-preference){.chat-history{scroll-behavior:smooth}}.chat-history>div{margin-bottom:15px}.ai-input-box{flex-shrink:0;border-top:1px solid #333;padding:15px 20px;padding-bottom:calc(15px + env(safe-area-inset-bottom));background-color:#0a0a0a;position:sticky;bottom:0;z-index:10}.history{word-wrap:break-word;overflow-wrap:break-word}.history>div{margin:0;padding:0;line-height:1}.history>div:first-child{margin-bottom:1.5em}.input-line{display:flex;align-items:center;flex-wrap:nowrap;line-height:1;margin:0;padding:0}.input-wrapper{position:relative;display:flex;align-items:center;flex-grow:1;min-width:0}.prompt{margin-right:10px;flex-shrink:0;white-space:nowrap;color:#4af626}input{background-color:transparent;border:none;color:#fff;font-family:Courier New,Courier,monospace;font-size:1rem;width:100%;min-width:0;caret-color:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none;touch-action:manipulation;animation:blink-caret 1s step-end infinite}input:focus{outline:none}input:read-only{cursor:wait;opacity:.6}@keyframes blink-caret{0%,to{caret-color:#fff}50%{caret-color:transparent}}.fake-cursor{position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:1em;background-color:#fff;animation:blink-cursor 1s step-end infinite;pointer-events:none}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.command-echo{display:flex;align-items:center;flex-wrap:nowrap;line-height:1;margin:0;padding:0}.command-echo .prompt{margin-right:10px;flex-shrink:0;white-space:nowrap;color:#4af626}.command-echo .command-text{color:#fff}.dir{color:#4ec9b0;font-weight:700}.output{color:#e0e0e0}.error{color:#f48771}.success{color:#b5cea8}.info{color:#9cdcfe}.warning{color:#dcdcaa}.comment{color:#6a9955}.ai-response{color:#ce9178}.exe-output{color:#d4d4d4;white-space:pre-wrap;font-family:Courier New,Courier,monospace}.help-header{color:#4fc1ff;font-weight:700}.help-command{color:#dcdcaa}.help-description{color:#9cdcfe}.clickable-command{cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;font-weight:500;transition:opacity .2s ease}.clickable-command:hover{opacity:.7}.clickable-command:active{opacity:.5}@media (max-width: 768px){.terminal{padding:15px 10px}.prompt{margin-right:5px;font-size:.9rem}input{font-size:.9rem}}@media (max-width: 480px){.terminal{padding:10px 8px}.prompt,input{font-size:.85rem}}input::placeholder{color:#666;opacity:1}input::-webkit-input-placeholder{color:#666}input::-moz-placeholder{color:#666;opacity:1}input:-ms-input-placeholder{color:#666}.ai-welcome{color:#ce9178;font-style:italic;font-size:1.1em;opacity:.9}.ai-thinking{color:#9cdcfe}.busy-input{opacity:.7}.loading-dots:after{content:" .";animation:loading-dots 1.5s steps(3,end) infinite}@keyframes loading-dots{0%{content:" ."}33%{content:" . ."}66%{content:" . . ."}to{content:" ."}}.ai-input-status{margin-top:10px;color:#9cdcfe;font-size:.85rem;display:flex;flex-wrap:wrap;gap:4px}.ai-input-status-hint{color:#666}.showcase-overlay{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:var(--z-overlay, 2100)}.showcase-overlay-attention{position:fixed;z-index:calc(var(--z-overlay, 2100) + 1);animation:float-in .5s ease-out}.showcase-overlay-attention-center{top:50%;left:50%;transform:translate(-50%,-50%)}.showcase-overlay-attention-top{top:20%;left:50%;transform:translate(-50%)}.showcase-overlay-attention-bottom{bottom:10%;left:50%;transform:translate(-50%)}.showcase-overlay-attention-content{display:flex;align-items:center;gap:12px;padding:16px 24px;background:rgba(79,193,255,.15);border:2px solid #4fc1ff;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #4fc1ff4d;animation:pulse-border 2s ease-in-out infinite}.showcase-overlay-attention-icon{font-size:20px;color:#4fc1ff;animation:arrow-bounce 1s ease-in-out infinite}.showcase-overlay-attention-message{font-size:16px;font-weight:600;color:#4fc1ff;text-shadow:0 0 10px rgba(79,193,255,.5)}.showcase-overlay-spotlight{position:fixed;top:0;left:0;right:0;bottom:0;z-index:var(--z-overlay, 2100);pointer-events:none}.showcase-overlay-spotlight-dim{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);animation:dim-in .5s ease-out}.showcase-overlay-message{position:absolute;padding:12px 20px;background:rgba(74,246,38,.15);border:2px solid #4af626;border-radius:6px;color:#4af626;font-size:14px;font-weight:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 20px #4af62666;animation:message-slide-in .5s ease-out;z-index:calc(var(--z-overlay, 2100) + 1)}.showcase-overlay-message-top{top:80px;left:50%;transform:translate(-50%)}.showcase-overlay-message-bottom{bottom:80px;left:50%;transform:translate(-50%)}.showcase-overlay-message-left{top:50%;left:40px;transform:translateY(-50%)}.showcase-overlay-message-right{top:50%;right:40px;transform:translateY(-50%)}.showcase-overlay-arrow{position:fixed;z-index:calc(var(--z-overlay, 2100) + 1);animation:fade-in .5s ease-out}.showcase-overlay-arrow-right{top:50%;right:60px;transform:translateY(-50%)}.showcase-overlay-arrow-left{top:50%;left:60px;transform:translateY(-50%)}.showcase-overlay-arrow-top{top:100px;left:50%;transform:translate(-50%) rotate(90deg)}.showcase-overlay-arrow-bottom{bottom:100px;left:50%;transform:translate(-50%) rotate(-90deg)}.showcase-overlay-arrow-line{width:60px;height:3px;background:linear-gradient(90deg,transparent,#f48771);animation:arrow-extend 1s ease-out infinite}.showcase-overlay-arrow-head{width:0;height:0;border-left:12px solid #f48771;border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:60px;margin-top:-11px;animation:arrow-pulse 1s ease-in-out infinite}.showcase-overlay-arrow-message{margin-top:12px;padding:8px 16px;background:rgba(244,135,113,.15);border:1px solid #f48771;border-radius:4px;color:#f48771;font-size:13px;font-weight:600;white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.showcase-overlay-pulse{position:fixed;top:0;left:0;right:0;bottom:0;z-index:var(--z-overlay, 2100);pointer-events:none;animation:pulse-bg 2s ease-in-out infinite}.showcase-overlay-glow{position:fixed;top:0;left:0;right:0;bottom:0;z-index:var(--z-overlay, 2100);pointer-events:none;box-shadow:inset 0 0 100px #4af62633;animation:glow-pulse 3s ease-in-out infinite}@keyframes float-in{0%{opacity:0;transform:translate(-50%,-50%) translateY(20px)}to{opacity:1;transform:translate(-50%,-50%) translateY(0)}}@keyframes dim-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes message-slide-in{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes pulse-border{0%,to{box-shadow:0 8px 32px #4fc1ff4d}50%{box-shadow:0 8px 32px #4fc1ff99,0 0 40px #4fc1ff66}}@keyframes arrow-bounce{0%,to{transform:translate(0)}50%{transform:translate(5px)}}@keyframes arrow-extend{0%{width:40px;opacity:.6}50%{width:60px;opacity:1}to{width:40px;opacity:.6}}@keyframes arrow-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes pulse-bg{0%,to{background:rgba(220,220,170,0)}50%{background:rgba(220,220,170,.05)}}@keyframes glow-pulse{0%,to{box-shadow:inset 0 0 80px #4af6261a}50%{box-shadow:inset 0 0 120px #4af62640}}.showcase-banner{color:#4fc1ff;text-align:center;margin:0;padding:0;line-height:1.2;text-shadow:0 0 20px rgba(79,193,255,.5);animation:banner-glow 3s ease-in-out infinite}@keyframes banner-glow{0%,to{text-shadow:0 0 20px rgba(79,193,255,.5)}50%{text-shadow:0 0 30px rgba(79,193,255,.8),0 0 40px rgba(79,193,255,.4)}}.showcase-rainbow-text{display:inline-block;font-size:16px;font-weight:600}.rainbow-letter{display:inline-block;animation:rainbow-wave 3s ease-in-out infinite;text-shadow:0 0 10px currentColor}@keyframes rainbow-wave{0%{color:red}14%{color:#f70}28%{color:#fd0}42%{color:#0f0}57%{color:#09f}71%{color:#60f}85%{color:#f0f}to{color:red}}.showcase-intro,.showcase-features,.showcase-prompt,.showcase-section-header,.showcase-completion,.showcase-finale{display:block;line-height:1.8}.showcase-clickable-prompt{display:inline-block}.showcase-section-header,.showcase-completion{margin:20px 0;text-align:center}.showcase-finale{margin:30px 0;line-height:2}.showcase-slide-out{animation:showcase-slide-up .6s steps(3,end) forwards;overflow:hidden}@keyframes showcase-slide-up{0%{transform:translateY(0)}33%{transform:translateY(-33%)}66%{transform:translateY(-66%)}to{transform:translateY(-100%)}}@media (max-width: 768px){.showcase-overlay-attention-content{padding:12px 18px;font-size:14px}.showcase-overlay-message{font-size:12px;padding:10px 16px}.showcase-overlay-message-left,.showcase-overlay-message-right{top:80px;left:50%;right:auto;transform:translate(-50%)}.showcase-overlay-arrow{display:none}}.dropdown-menu{position:absolute;background-color:#2d2d2d;border:1px solid #1f1f1f;border-radius:4px;box-shadow:0 4px 8px #0006;z-index:var(--z-dropdown, 1000);min-width:180px;padding:4px 0;max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 80px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}@media (max-width: 768px){.dropdown-menu{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 60px);min-width:160px}}.dropdown-item{display:flex;align-items:center;gap:10px;padding:8px 12px;font-family:Courier New,Courier,monospace;font-size:.9rem;color:#e0e0e0;cursor:default;transition:background-color .15s ease}.dropdown-item:hover{background-color:#3a3a3a}.dropdown-item:focus-visible{outline:2px solid #4af626;outline-offset:-2px}.dropdown-item span{flex:1}.context-menu{position:fixed;background-color:#2d2d2d;border:1px solid #1f1f1f;border-radius:4px;box-shadow:0 4px 8px #0006;z-index:var(--z-popover, 2200);min-width:180px;padding:4px 0;font-family:Courier New,Courier,monospace;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.context-menu-submenu{z-index:var(--z-tooltip, 2300)}@media (max-width: 768px){.context-menu{min-width:160px}}.context-menu-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;min-height:44px;font-size:.9rem;color:#e0e0e0;cursor:default;transition:background-color .15s ease}.context-menu-item:hover{background-color:#3a3a3a}.context-menu-item:focus-visible{outline:2px solid #4af626;outline-offset:-2px}.context-menu-item span{flex:1}.context-menu-item-submenu{position:relative}.context-menu-item-submenu.active{background-color:#3a3a3a}.context-menu-divider{height:1px;background-color:#1f1f1f;margin:4px 0}.context-menu-item svg{flex-shrink:0}@media (max-width: 768px){.context-menu-item{padding:12px;min-height:44px;font-size:.85rem}}.tab-bar{display:flex;align-items:flex-end;background-color:#2d2d2d;padding:4px 8px 0;padding-top:max(4px,env(safe-area-inset-top));padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));height:40px;flex-shrink:0;gap:4px;transition:background-color .3s ease}.tab-bar.inverted{background-color:#0a0a0a}.tabs-container{display:flex;align-items:flex-end;gap:2px;flex:1;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.tabs-container::-webkit-scrollbar{display:none}.tab{display:flex;align-items:center;gap:8px;font-family:Courier New,Courier,monospace;font-size:.85rem;background-color:#2d2d2d;color:#b0b0b0;border:none;border-radius:10px 10px 0 0;padding:2px 12px;cursor:default;transition:transform .2s ease,background-color .15s ease,color .15s ease;position:relative;white-space:nowrap;min-width:100px;max-width:200px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;touch-action:pan-y}.tab:hover{background-color:#353535;color:#e0e0e0}.tab.active{background-color:#0a0a0a;color:#fff;max-width:none}.tab:focus-visible{outline:2px solid #4af626;outline-offset:2px}.tab-bar.inverted .tab{background-color:#1a1a1a;color:#fff}.tab-bar.inverted .tab:hover{background-color:#2d2d2d;color:#fff}.tab-bar.inverted .tab.active{background-color:#fff;color:#1a1a1a}.tab-bar.inverted .tab-close:hover{background-color:#ffffff1a}.tab-bar.inverted .tab.active .tab-close:hover{background-color:#0000001a}.tab-icon{display:flex;align-items:center;flex-shrink:0}.tab-label{flex:1;overflow:hidden;text-overflow:ellipsis}.daw-icon-clickable{cursor:pointer;padding:2px 6px;border-radius:4px;transition:background-color .15s ease,transform .1s ease;display:inline-block}.daw-icon-clickable.hidden{visibility:hidden;cursor:default;pointer-events:none}.daw-icon-clickable:not(.hidden):hover{background-color:#ff9f0033;transform:scale(1.05)}.daw-icon-clickable:not(.hidden):active{transform:scale(.95)}.tab.active .daw-icon-clickable:not(.hidden):hover{background-color:#ffffff26}.tab-bar.inverted .tab.active .daw-icon-clickable:not(.hidden):hover{background-color:#0000001a}.daw-text{margin-right:8px}.tab-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background-color:transparent;border:none;border-radius:3px;color:inherit;font-size:1.2rem;cursor:default;padding:0;line-height:1;transition:background-color .15s ease;flex-shrink:0}.tab-close:hover{background-color:#ffffff1a}.tab-close:focus-visible{outline:2px solid #4af626;outline-offset:2px}.tab-controls{display:flex;align-items:center;gap:0;flex-shrink:0}.tab-control-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background-color:transparent;border:none;border-radius:4px;color:#b0b0b0;font-size:1.2rem;cursor:default;transition:background-color .15s ease,color .15s ease;padding:0;font-family:Courier New,Courier,monospace;line-height:1}.tab-control-button:hover{background-color:#2e2e2e;color:#fff}.tab-control-button:focus-visible{outline:2px solid #4af626;outline-offset:2px}.tab-bar.inverted .tab-control-button{color:#888}.tab-bar.inverted .tab-control-button:hover{background-color:#2d2d2d;color:#fff}.tab-scroll-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background-color:transparent;border:none;border-radius:4px;color:#b0b0b0;font-size:1rem;cursor:default;transition:background-color .15s ease,color .15s ease;padding:0;font-family:Courier New,Courier,monospace;line-height:1;flex-shrink:0}.tab-scroll-button:hover:not(.disabled){background-color:#2e2e2e;color:#fff}.tab-scroll-button:focus-visible{outline:2px solid #4af626;outline-offset:2px}.tab-scroll-button.disabled{display:none}.tab-bar.inverted .tab-scroll-button{color:#888}.tab-bar.inverted .tab-scroll-button:hover:not(.disabled){background-color:#2d2d2d;color:#fff}.tab-controls-divider{width:1px;height:28px;background-color:#555;margin:0 4px}.tab-bar.inverted .tab-controls-divider{background-color:#444}@media (max-width: 768px){.tab-bar{height:44px;padding-top:max(4px,env(safe-area-inset-top))}.tab{font-size:.8rem;padding:2px 10px;min-width:80px;max-width:180px}.tab-controls .tab-control-button:first-child,.tab-controls-divider{display:none}.tab.active{max-width:none}.tab-icon svg{width:14px;height:14px}.tab-close{min-width:44px;min-height:44px;width:44px;height:44px;font-size:1rem}.tab-control-button{min-width:44px;min-height:44px;width:44px;height:44px;font-size:1.1rem}.tab-scroll-button{min-width:44px;min-height:44px;width:44px;height:44px;font-size:1rem}}@media (max-width: 480px){.tab{font-size:.75rem;padding:2px 8px;min-width:70px;gap:6px}.tab.active{max-width:none}}.tab.dragging{cursor:grabbing!important}.tab:active:not(.dragging){cursor:default}.tab.dragging{transition:background-color .15s ease,color .15s ease}@media (hover: none) and (pointer: coarse){.tab:active:not(.dragging){background-color:#353535}.tab-bar.inverted .tab:active:not(.dragging){background-color:#2d2d2d}}.chat-sidebar{position:fixed;top:2px;left:10px;bottom:10px;width:560px;background-color:#0a0a0a;border-right:1px solid #2a2a2a;border-radius:8px;display:flex;flex-direction:column;gap:0;z-index:50;transition:transform .3s cubic-bezier(.4,0,.2,1)}.sidebar-backdrop{position:fixed;top:2px;left:0;right:0;bottom:0;background-color:#00000080;z-index:49;display:block}.sidebar-close-button{position:absolute;top:12px;right:12px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#888;cursor:pointer;transition:all .2s;z-index:10;padding:0;opacity:.7}.sidebar-close-button:hover{opacity:1;color:#fff}.sidebar-header{padding:20px;border-bottom:1px solid #2a2a2a}.profile-compact{display:flex;align-items:center;gap:12px}.profile-avatar-small{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid #2a2a2a}.profile-info-compact{flex:1;min-width:0}.profile-name{font-size:16px;font-weight:600;color:#fff;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-info-compact{display:flex;flex-direction:column;gap:2px}.contact-link{font-size:13px;color:#5fa3d0;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-link:hover{text-decoration:underline}.contact-location-small{font-size:12px;color:#888}.sidebar-actions{padding:16px 20px;border-bottom:1px solid #2a2a2a}.new-chat-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;background-color:#1a1a1a;border:1px solid #2a2a2a;border-radius:6px;color:#fff;font-family:Courier New,Courier,monospace;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s}.new-chat-button:hover{background-color:#2a2a2a;border-color:#fff}.new-chat-icon{font-size:18px;font-weight:300}.sidebar-content{flex:1;overflow-y:auto;padding:16px 20px;-webkit-overflow-scrolling:touch;min-height:0}.chat-history-label{font-size:13px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.chat-history-list{display:flex;flex-direction:column;gap:4px}.no-chats{font-size:14px;color:#666;text-align:center;padding:20px}.chat-history-item{display:flex;align-items:center;gap:8px;padding:14px 16px;border-radius:6px;cursor:pointer;transition:background-color .2s;position:relative}.chat-history-item:hover{background-color:#1a1a1a}.chat-history-item.active{background-color:#2a2a2a}.chat-item-content{flex:1;min-width:0}.chat-item-title{font-size:18px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.chat-item-date{font-size:14px;color:#666}.chat-item-delete{min-width:44px;min-height:44px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#666;font-size:20px;line-height:1;cursor:pointer;opacity:0;transition:all .2s;border-radius:4px}.chat-history-item:hover .chat-item-delete{opacity:1}.chat-item-delete:hover{background-color:#3a3a3a;color:#f44}@media (hover: none){.chat-item-delete{opacity:1}}@media (min-width: 769px){.chat-sidebar{transform:translate(0)}.chat-sidebar:not(.open){transform:translate(calc(-100% - 10px))}}@media (max-width: 768px){.chat-sidebar{left:0;top:0;bottom:0;transform:translate(-100%);width:75%;max-width:none;border-radius:0}.chat-sidebar.open{transform:translate(0)}}.sidebar-content::-webkit-scrollbar{width:6px}.sidebar-content::-webkit-scrollbar-track{background:transparent}.sidebar-content::-webkit-scrollbar-thumb{background:transparent;border-radius:3px;transition:background .2s}.chat-sidebar:hover .sidebar-content::-webkit-scrollbar-thumb{background:#2a2a2a}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#3a3a3a!important}.chat-container{--chat-max-width: 44rem;display:flex;height:100vh;height:100svh;height:100dvh;background-color:#0a0a0a;color:#e0e0e0;font-family:Courier New,Courier,monospace;overflow:hidden;position:relative}.chat-content-rail{width:100%;max-width:var(--chat-max-width);margin-left:auto;margin-right:auto;padding-left:30px;padding-right:30px;box-sizing:border-box}.chat-sidebar-toggle{position:fixed;top:70px;left:calc(50% - var(--chat-max-width) / 2 - 40px);z-index:51;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#fff;cursor:pointer;transition:opacity .2s;padding:0;opacity:.7}.chat-sidebar-toggle:hover{opacity:1}@media (max-width: 900px){.chat-sidebar-toggle{left:20px}}.chat-container .chat-scroll-section{display:flex;flex-direction:column;flex:1;overflow:hidden;position:relative}.chat-container .chat-scroll-section:before{content:"";position:absolute;top:0;left:0;right:0;height:120px;background:linear-gradient(to bottom,#0a0a0a 0%,#0a0a0a 60%,transparent 100%);pointer-events:none;z-index:10}.chat-container .chat-scroll-section.sidebar-open:before{display:none}.chat-viewport{display:flex;flex-direction:column;flex:1;height:100%;width:100%;overflow:hidden;position:relative}.chat-messages{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;min-height:0;min-width:0;width:100%;padding:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}@media (prefers-reduced-motion: no-preference){.chat-messages{scroll-behavior:smooth}}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:#0a0a0a;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#444}.conversation-history{display:flex;flex-direction:column;gap:20px;width:100%;max-width:var(--chat-max-width);margin-left:auto;margin-right:auto;padding:120px 30px 20px;box-sizing:border-box;animation:fadeIn .4s ease-in;position:relative;min-height:100%}.chat-welcome-message{color:#606060;font-family:Raleway,Helvetica,Arial,sans-serif;font-size:3rem;text-align:center;position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);width:100%}.chat-spacer{min-height:2rem;flex-grow:1}.chat-viewport-footer{flex-shrink:0;width:100%;max-width:var(--chat-max-width);margin-left:auto;margin-right:auto;background-color:#0a0a0a;z-index:10;box-sizing:border-box;padding:40px 30px 20px;position:relative}@media (min-width: 769px){.chat-viewport-footer{padding:40px 30px 60px}}.chat-viewport-footer-content{width:100%;padding:0}.message{display:flex;flex-direction:column;gap:8px}.message.user{animation:slideIn .15s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{display:flex;align-items:flex-end;justify-content:flex-end;width:100%}.message.user .message-content{color:#fff;font-family:Raleway,Helvetica,Arial,sans-serif;font-size:1.05rem;line-height:1.8;padding:12px 16px;background-color:#2a2a2a;border-radius:4px;text-align:left;box-sizing:border-box;word-wrap:break-word;max-width:80%}.message.assistant{display:flex;align-items:flex-start;width:100%}.message.assistant .message-content{color:#ce9178;font-family:Raleway,Helvetica,Arial,sans-serif;font-size:1.05rem;line-height:1.8;padding:12px 16px;background-color:#ce91780d;border-radius:4px;text-align:left;box-sizing:border-box;max-width:90%}.message.assistant .message-content p{margin:0 0 1.2em;text-align:left}.message.assistant .message-content p:last-child{margin-bottom:0}.ai-loading-indicator{display:flex;align-self:flex-start;align-items:flex-start;padding:12px 16px;min-height:44px}.loading-dot{width:8px;height:8px;border-radius:50%;background-color:#ce9178;animation:loadingPulse 1.5s ease-in-out infinite;box-shadow:0 0 8px #ce917899}@keyframes loadingPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.chat-container .chat-form{position:relative;width:100%;padding:0;margin:0;box-sizing:border-box;transform:none;left:auto;bottom:auto;max-width:none;background-color:transparent;animation:none}.chat-container .chat-input-wrapper{position:relative;width:100%;display:flex;align-items:center}.chat-container .chat-input{width:100%;padding:16px 56px 16px 20px;background-color:#2f2f2f;border:1px solid #444;color:#e0e0e0;font-family:Raleway,Helvetica,Arial,sans-serif;font-size:1rem;border-radius:24px;transition:border-color .2s ease,box-shadow .2s ease;caret-color:#fff;box-shadow:0 4px 16px #0009;box-sizing:border-box}.chat-container .chat-send-button{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#d0d0d0;cursor:pointer;transition:all .2s ease;padding:0;font-size:20px}.chat-container .chat-send-button:hover:not(:disabled){color:#fff;transform:translateY(-50%) scale(1.1)}.chat-container .chat-send-button:active:not(:disabled){transform:translateY(-50%) scale(.9)}.chat-container .chat-send-button:disabled{color:#606060;cursor:not-allowed;opacity:.4}.chat-container .chat-input:focus{outline:none;border-color:#555;box-shadow:0 4px 20px #000c}.chat-container .chat-input::placeholder{color:#606060;font-style:italic}.chat-container .chat-input:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 769px){.chat-container{--chat-max-width: 100%}.conversation-history{padding:100px 20px 10px}.chat-form{padding:0 20px}.chat-viewport-footer{padding:40px 30px 80px!important}.chat-viewport-footer-content{padding:15px 0}.message.user .message-content,.message.assistant .message-content{padding:10px 12px;font-size:.95rem}.chat-input{min-height:40px;height:40px;font-size:16px;padding:10px 48px 10px 16px;border-radius:20px;line-height:1.2}.chat-container .chat-send-button{width:28px;height:28px;right:10px;font-size:18px}}@media (max-width: 480px){.conversation-history{padding:100px 15px 10px}.chat-form{padding:0 15px}.chat-viewport-footer-content{padding:12px,0}.message.user .message-content,.message.assistant .message-content{padding:8px 10px;font-size:.9rem}.chat-input{min-height:38px;height:38px;padding:8px 46px 8px 14px;font-size:16px;border-radius:19px}.chat-container .chat-send-button{width:26px;height:26px;right:8px;font-size:16px}}.image-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000e6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal, 2000);padding:20px;animation:fadeIn .2s ease-in-out}@media (max-width: 768px){.image-modal-overlay{backdrop-filter:none;-webkit-backdrop-filter:none;background-color:#000000f2}}.image-modal-close{position:fixed;top:20px;right:20px;background-color:transparent;border:none;color:#999;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:1001;font-size:28px;padding:0;appearance:none;-webkit-appearance:none;-moz-appearance:none;border-radius:50%;outline:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.image-modal-close:hover{color:#fff;transform:scale(1.15)}.image-modal-close:focus-visible{outline:2px solid #4af626;outline-offset:2px}.image-modal-content{max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center;animation:zoomIn .3s ease-in-out;position:relative}@keyframes zoomIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.image-modal-img{max-width:100%;max-height:90vh;object-fit:contain;border:2px solid #333;border-radius:4px;box-shadow:0 8px 32px #00000080}.ghiblify-button,.undo-button{position:absolute;bottom:20px;right:20px;background-color:#1a1a1ab3;border:1px solid #999;color:#999;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;z-index:10;font-size:20px;padding:0;box-shadow:0 4px 12px #0000004d;outline:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.ghiblify-button:hover,.undo-button:hover{background-color:#ccc;color:#0a0a0a;transform:scale(1.1) rotate(10deg);box-shadow:0 6px 20px #00000080}.ghiblify-button:active,.undo-button:active{transform:scale(.95)}.ghiblify-button:focus-visible,.undo-button:focus-visible{outline:2px solid #4af626;outline-offset:2px}@media (max-width: 768px){.image-modal-overlay{padding:0}.image-modal-close{top:10px;right:10px;width:36px;height:36px}.image-modal-content{max-width:100vw;max-height:100vh}.image-modal-img{max-height:100vh}.ghiblify-button,.undo-button{bottom:calc(15px + env(safe-area-inset-bottom));right:calc(15px + env(safe-area-inset-right));width:56px;height:56px}}.profile-container{display:flex;height:100vh;height:100svh;height:100dvh;background-color:#0a0a0a;color:#e0e0e0;font-family:Courier New,Courier,monospace;overflow:hidden;position:relative}.profile-scroll-section,.chat-scroll-section{display:contents}@media (min-width: 769px){.profile-scroll-section,.chat-scroll-section{display:contents}}.profile-sidebar{width:324px;background-color:#0f0f0f;border-right:1px solid #333;padding:20px;flex-shrink:0;overflow:hidden}.profile-image-container{margin-bottom:20px;cursor:pointer;position:relative;-webkit-tap-highlight-color:transparent}.profile-image-placeholder{width:100%;aspect-ratio:1 / 1;background-color:#1a1a1a;border:2px solid #333;display:flex;align-items:center;justify-content:center;color:gray;font-size:.85rem;border-radius:4px}.profile-image{width:100%;aspect-ratio:1 / 1;background-color:#1a1a1a;border:2px solid #333;border-radius:4px;position:relative;overflow:hidden;background-size:cover;background-position:center center;background-repeat:no-repeat;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.contact-info{padding:20px;background-color:#0a0a0a;border:1px solid #2a2a2a;border-radius:4px;display:flex;flex-direction:column;gap:12px}.contact-item{font-size:.9rem;text-transform:lowercase;display:grid;grid-template-columns:40px 1fr;align-items:center;gap:8px}.contact-email{color:#4af626;text-decoration:none}.contact-email:hover{color:#5fff35;text-decoration:none}.contact-location{color:#4af626}.profile-main{flex:1;display:flex;flex-direction:column;overflow-y:hidden;overflow-x:hidden;padding:30px 30px 60px;margin-bottom:112px;min-height:0;max-height:100%;-webkit-overflow-scrolling:touch;align-items:center}@media (prefers-reduced-motion: no-preference){.profile-main{scroll-behavior:smooth}}.profile-header{margin-bottom:30px;border-bottom:1px solid #333;padding:20px 0;padding-top:max(20px,env(safe-area-inset-top));max-width:704px;width:100%;flex-shrink:0;position:sticky;top:0;background-color:#0a0a0a;z-index:15}.profile-header:before{content:"";position:absolute;top:-100vh;left:0;right:0;height:100vh;background-color:#0a0a0a;z-index:-1}.profile-title{font-size:2rem;color:#5fa3d0;margin:0 0 10px;font-weight:400;letter-spacing:.05em;text-shadow:0 0 10px rgba(95,163,208,.3);text-align:left;width:100%;display:block}.profile-title span{transition:opacity .1s ease}.profile-subtitle{font-size:1rem;color:gray;margin:0;text-align:left}.profile-content{display:flex;flex-direction:column;gap:30px;max-width:704px;width:100%;align-items:flex-start;flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;min-width:0;max-height:100%;-webkit-overflow-scrolling:touch}.profile-main::-webkit-scrollbar{width:8px}.profile-main::-webkit-scrollbar-track{background:#0a0a0a;border-radius:4px}.profile-main::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.profile-main::-webkit-scrollbar-thumb:hover{background:#444}.bio-thinking{display:flex;align-items:center;gap:5px;padding:20px 0;animation:fadeIn .3s ease-in;align-self:flex-start;width:100%}.thinking-text{color:#ce9178;font-family:Courier New,Courier,monospace;font-style:italic;font-size:1rem}.thinking-dots:after{content:"...";animation:dots 1.5s steps(4) infinite;color:#ce9178;font-family:Courier New,Courier,monospace}@keyframes dots{0%,25%{content:"."}26%,50%{content:".."}51%,75%{content:"..."}76%,to{content:""}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.bio-text{position:relative;color:#ce9178;font-family:Raleway,Helvetica,Arial,sans-serif;font-size:1.05rem;line-height:1.8;animation:fadeIn .4s ease-in;text-align:left;align-self:flex-start;width:100%;padding-bottom:40px}.bio-text p{margin:0 0 1.2em;text-align:left}.bio-text p:last-child{margin-bottom:0}.regenerate-button-inline{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;padding:4px;background:none;border:none;color:#ce9178;cursor:pointer;transition:all .2s ease;opacity:.5;vertical-align:middle}.regenerate-button-inline:hover{opacity:1;transform:scale(1.1)}.regenerate-button-inline:active{transform:scale(.95)}.regenerate-button-inline:focus-visible{outline:2px solid #4af626;outline-offset:2px;border-radius:4px}@media (hover: none){.regenerate-button-inline{opacity:.8}}.chat-form{position:fixed;bottom:0;left:324px;right:0;max-width:704px;width:auto;margin:0 auto;padding:30px;background-color:#0a0a0a;z-index:10;animation:slideUpReveal .6s ease-out;box-sizing:border-box}.chat-form:after{content:"";position:absolute;bottom:-100vh;left:25px;right:0;height:100vh;background-color:#0a0a0a;z-index:-1}@keyframes slideUpReveal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-input-wrapper{position:relative;width:100%;display:flex;align-items:center}.chat-input{width:100%;padding:16px 56px 16px 20px;background-color:#2f2f2f;border:1px solid #444;color:#e0e0e0;font-family:Raleway,Helvetica,Arial,sans-serif;font-size:1rem;border-radius:24px;transition:border-color .2s ease,box-shadow .2s ease;caret-color:#fff;box-shadow:0 4px 16px #0009}.chat-send-button{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#d0d0d0;cursor:pointer;transition:all .2s ease;padding:0;font-size:20px}.chat-send-button:hover:not(:disabled){color:#fff;transform:translateY(-50%) scale(1.1)}.chat-send-button:active:not(:disabled){transform:translateY(-50%) scale(.9)}.chat-send-button:disabled{color:#606060;cursor:not-allowed;opacity:.4}.chat-input:focus{outline:none;border-color:#555;box-shadow:0 4px 20px #000c}.chat-input::placeholder{color:#606060;font-style:italic}.chat-input:disabled{opacity:.6;cursor:not-allowed}@media (min-width: 769px) and (max-width: 850px){.chat-form{max-width:510px;padding:30px 8px}}@media (min-width: 851px) and (max-width: 1024px){.chat-form{max-width:598px;padding:30px 15px}}@media (min-width: 1025px) and (max-width: 1250px){.chat-form{max-width:704px;padding:30px 20px}}@media (max-width: 769px){.profile-container{flex-direction:column;height:100vh;height:100svh;height:100dvh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;position:relative}.profile-scroll-section{display:flex;flex-direction:column;min-height:auto;overflow:visible;flex-shrink:0;position:relative;z-index:1;padding:0;margin:0}.chat-scroll-section{display:flex;flex-direction:column;min-height:auto;overflow:visible;flex-shrink:0;background-color:#0a0a0a;position:relative;z-index:2;padding-bottom:0;margin-bottom:0}.profile-sidebar{width:100%;border-right:none;border-bottom:none;padding:0;display:flex;flex-direction:column;align-items:center;min-height:auto;justify-content:flex-start;gap:0}.profile-image-container{width:100vw;max-width:none;height:45vh;flex-shrink:0;margin:0;padding:0;overflow:hidden}.profile-image-placeholder{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;margin:0;padding:0}.profile-image-placeholder span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.profile-image{width:100%;height:100%;position:relative;display:block;margin:0;padding:0;-webkit-tap-highlight-color:transparent}.profile-image canvas,.profile-image>div{position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;margin:0!important}.contact-info{width:90vw;max-width:500px;margin:2vh auto 1.5vh;padding:1.5vh 4vw;font-size:clamp(1rem,3.5vw,1.25rem);box-sizing:border-box}.contact-item{gap:10px;padding:.4vh 0}.contact-email,.contact-location{font-size:inherit}.contact-item svg,.contact-item canvas{transform:scale(1)}.profile-main{padding:20px 20px 0;overflow:visible;display:flex;flex-direction:column;min-height:auto}.profile-title{font-size:1.75rem}.profile-header{position:static;background-color:#0a0a0a;margin-bottom:10px;border-bottom:1px solid #333;padding:0 0 5px}.profile-header:before{display:none}.profile-content{flex:none;padding-bottom:0;overflow:visible}.bio-text{padding-bottom:0;margin-bottom:0}.chat-form{position:static;left:auto;right:auto;width:100%;max-width:100%;padding:10px 0 80px;margin:0;z-index:1}.chat-form:after{display:none}.chat-input{width:100%;min-height:40px;height:40px;font-size:16px;padding:10px 48px 10px 16px;border-radius:20px;line-height:1.2;box-sizing:border-box}.chat-send-button{width:28px;height:28px;right:10px;font-size:18px}}@media (max-width: 480px){.profile-main{padding:15px 15px 0;min-height:auto}.profile-title{font-size:1.5rem}.profile-image-container{width:100vw;max-width:none;height:45vh;margin:0;padding:0}.profile-image,.profile-image-placeholder{height:100%;margin:0;padding:0}.contact-info{width:92vw;max-width:450px;margin:1.5vh auto 0;padding:2.5vh 4vw;font-size:clamp(1.1rem,4.5vw,1.4rem);box-sizing:border-box}.contact-item{gap:12px;padding:.6vh 0}.contact-item svg,.contact-item canvas{transform:scale(1)}.profile-sidebar{padding:0;gap:0;justify-content:flex-start}.chat-form{position:static;left:auto;right:auto;width:100%;max-width:100%;padding:10px 0 0;margin:0;z-index:1}.chat-input{width:100%;min-height:38px;height:38px;padding:8px 46px 8px 14px;font-size:16px;border-radius:19px;box-sizing:border-box}.chat-send-button{width:26px;height:26px;right:8px;font-size:16px}}@media (min-width: 769px){.profile-sidebar.exit-transition{animation:slideOutLeft .4s ease-in-out forwards}.profile-main.exit-transition{animation:slideOutUp .4s ease-in-out forwards}@keyframes slideOutLeft{0%{transform:translate(0)}12%{transform:translate(18px)}22%{transform:translate(18px)}to{transform:translate(-100%)}}@keyframes slideOutUp{0%{transform:translateY(0)}12%{transform:translateY(18px)}22%{transform:translateY(18px)}to{transform:translateY(-100%)}}}.view-container{width:100%;height:100%}@media (min-width: 769px){.view-fade-out{animation:fadeOut .4s ease-in-out forwards}.view-fade-in{animation:fadeIn .4s ease-in-out forwards}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}}@media (max-width: 768px){.view-fade-out,.view-fade-in{animation:none}}:root{--bg-color: #EEF2FF;--post-bg: #D6DAF0;--post-border: #B7C5D9;--post-hover: #C6CAE0;--post-highlight: #D6BAD0;--text-color: #000000;--link-color: #34345C;--link-hover: #DD0000;--greentext: #789922;--name-color: #117743;--trip-color: #228854;--subject-color: #0F0C5D;--post-number: #34345C}.chan-container{font-family:arial,helvetica,sans-serif;font-size:10pt;background:var(--bg-color);color:var(--text-color);line-height:1.5;min-height:100%;height:100%;overflow-y:auto;box-sizing:border-box;padding:10px;caret-color:#000;animation:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.chan-container *{caret-color:#000;animation:none}.chan-container a{color:var(--link-color);text-decoration:none}.chan-container a:hover{color:var(--link-hover);text-decoration:underline}.post{margin:4px 0;font-size:10pt}.post.op{display:block;margin-bottom:4px}.post.reply{display:block;background:var(--post-bg);border:1px solid var(--post-border);padding:2px 4px;margin:4px 0;border-radius:0;overflow:hidden;position:relative}.post.reply:before{content:">>";position:absolute;left:-18px;top:2px;color:var(--post-border);font-size:10pt;pointer-events:none}.post.reply:first-of-type{clear:none}.post.reply:not(:first-of-type){clear:both}.post.reply.highlighted{background:var(--post-highlight);border-color:#ba9dbf}.post .intro{margin:0;padding:0;font-size:10pt;display:block;clear:both}.post.reply .intro{clear:none}.post .name{color:var(--name-color);font-weight:700}.post .trip{color:var(--trip-color)}.post .subject{color:var(--subject-color);font-weight:700}.post time{font-size:10pt}.post .post_no{color:var(--text-color);font-size:10pt;display:inline}.post .post_no a{color:var(--post-number);text-decoration:none;padding:2px 4px;display:inline-block;line-height:normal}.post .backlinks{margin-left:4px}.post .post_backlink{color:var(--link-color);text-decoration:none;font-size:10pt;margin-left:0;padding:2px 4px;display:inline-block;line-height:normal}.post .body{margin:6px 0 0;word-wrap:break-word;white-space:pre-wrap;font-size:10pt;line-height:1.3;overflow-wrap:break-word;max-width:100%}.post .quote{color:var(--greentext)}.post .body .post_backlink{color:var(--link-color)}.post .file{float:left;margin:0 10px 15px 0}.post.op>.fileinfo{font-size:9pt;margin:0 0 4px;padding:0;display:block}.post.op .op-content-wrapper{display:flex;gap:10px;align-items:flex-start}.post.op .file{flex-shrink:0;float:none;margin:0}.post.op .op-text-content{flex:1;min-width:0}.post.op .intro{clear:none}.post .fileinfo{font-size:9pt;margin:0 0 2px;padding:0;display:block}.post.reply .reply-fileinfo{clear:none;margin:4px 0 2px}.post .fileinfo a{text-decoration:underline}.post .post-image{border:none;cursor:pointer;display:block}.post .post-image.op-image{max-width:min(350px,90vw);max-height:350px;width:auto;height:auto}.post .post-image.reply-image{max-width:min(200px,50vw);max-height:200px;width:auto;height:auto}.post .post-image.expanded{max-width:800px!important;max-height:none!important;width:auto;height:auto;cursor:zoom-out;position:relative;z-index:10;display:block}.post .file.image-expanded{float:none;margin-bottom:10px}.post .backlinks{display:inline;font-size:9pt;color:#707070;margin-left:8px}.thread-container{max-width:none;padding:10px}.thread{margin-bottom:20px}.thread-main-content{width:100%}.thread-nav{text-align:center;padding:8px 0;border-top:1px solid var(--post-border);border-bottom:1px solid var(--post-border);margin:10px 0;font-size:10pt;width:100%}.thread-nav a{padding:8px 12px;display:inline-block;min-height:44px;line-height:28px}.board-header{text-align:center;margin-bottom:20px;width:100%}.board-header h1{font-size:28pt;font-weight:700;color:#af0a0f;margin:10px 0 5px;letter-spacing:-1px;font-family:Tahoma,sans-serif}.board-header .subtitle{font-size:9pt;color:#707070}.board-header-nav{text-align:center;padding:8px 0;border-top:1px solid var(--post-border);border-bottom:1px solid var(--post-border);margin:10px 0 0;font-size:10pt;width:100%}.board-header-nav a{padding:8px 12px;display:inline-block;min-height:44px;line-height:28px;color:var(--link-color);text-decoration:none}.board-header-nav a:hover{color:var(--link-hover);text-decoration:underline}.board-nav{text-align:center;margin:10px 0;padding:8px 0;border-bottom:1px solid var(--post-border);width:100%}.board-nav-btn{background:none;border:none;color:var(--link-color);cursor:pointer;font-size:10pt;font-family:inherit;text-decoration:none;padding:8px 16px;min-height:44px}.board-nav-btn:hover{color:var(--link-hover);text-decoration:underline}.board-nav-btn:focus-visible{outline:2px solid #4af626;outline-offset:2px;border-radius:4px}.board-bottom-nav{text-align:center;margin:20px 0;padding:8px 0;border-top:1px solid var(--post-border);width:100%}.board-bottom-nav a{padding:8px 16px;display:inline-block;min-height:44px;line-height:28px}.loading-state{text-align:center;padding:60px 20px;font-size:12pt;color:#707070}.error-state{text-align:center;padding:60px 20px;color:maroon;font-size:12pt;font-weight:700}.empty-state{text-align:center;padding:80px 20px;max-width:600px;margin:0 auto}.empty-state-text{font-size:16pt;color:#707070;margin-bottom:10px}.empty-state-subtext{font-size:11pt;color:#999}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.modal-content{background:var(--bg-color);border:1px solid var(--post-border);padding:30px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 4px 20px #0000004d}.modal-close{position:absolute;top:10px;right:10px;background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-color);padding:4px 10px;min-width:44px;min-height:44px;line-height:1}.modal-close:hover{color:var(--link-hover)}.modal-close:focus-visible{outline:2px solid #4af626;outline-offset:2px}.modal-title{color:var(--subject-color);margin-top:0;font-size:18pt}.modal-content h3{color:var(--subject-color);font-size:13pt;margin:20px 0 10px}.modal-content ul{margin:10px 0;padding-left:30px}.modal-content li{margin:6px 0;line-height:1.5}.modal-footer{font-size:9pt;color:#707070;text-align:center;margin-top:30px;border-top:1px solid var(--post-border);padding-top:15px}.catalog{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;padding:10px}.catalog-thread{background:var(--post-bg);border:1px solid var(--post-border);padding:4px;cursor:pointer;text-align:center}.catalog-thread:hover{background:var(--post-hover)}.catalog-thread img{width:100%;height:auto;max-height:200px;object-fit:contain;display:block;margin:0 auto}.catalog-thread .meta{font-size:9pt;color:var(--post-number);margin:4px 0 2px}.catalog-thread .subject{font-weight:700;font-size:10pt;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:2px 0}.catalog-thread .teaser{font-size:9pt;color:#707070;margin:2px 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.post-form{background:var(--post-bg);border:1px solid var(--post-border);padding:8px;margin:10px auto;max-width:600px}.post-form-content{display:flex;flex-direction:column;gap:10px}.form-field{display:flex;flex-direction:column;gap:4px}.form-label{font-size:10pt;font-weight:400;color:var(--text-color)}.form-input,.form-textarea{font-family:arial,helvetica,sans-serif;font-size:10pt;border:1px solid #aaa;padding:4px 6px;background:#ffffff;color:#000;width:100%;box-sizing:border-box}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--link-color)}.form-textarea{resize:vertical;min-height:80px;line-height:1.4}.char-counter{font-size:9pt;color:#707070;text-align:right}.file-input-wrapper{display:flex;flex-direction:column;gap:4px}.form-file-input{font-size:10pt;color:#000;font-family:arial,helvetica,sans-serif}.file-info{font-size:9pt;color:#707070}.file-required{font-size:9pt;color:maroon;font-weight:700}.form-error{background:#FFE;border:1px solid #800000;color:maroon;padding:8px;font-size:9pt;border-radius:2px}.form-submit{display:flex;justify-content:flex-end}.form-submit-btn{font-family:arial,helvetica,sans-serif;font-size:10pt;padding:6px 16px;background:var(--post-bg);border:1px solid var(--post-border);color:var(--text-color);cursor:pointer;min-height:36px;display:flex;align-items:center;justify-content:center}.form-submit-btn:hover:not(:disabled){background:var(--post-hover);border-color:var(--link-color)}.form-submit-btn:disabled{opacity:.6;cursor:not-allowed}.form-submit-btn:focus-visible{outline:2px solid #4af626;outline-offset:2px}.form-submit-btn.uploading{opacity:1;background:var(--post-bg)}.uploading-text{display:inline-flex;align-items:center;gap:8px}.board-notice{background:#FFE;border:1px solid var(--post-border);padding:6px;margin:10px 20px;font-size:9pt;text-align:center}.thread-view{display:flex;position:relative;justify-content:flex-start;align-items:flex-start;gap:20px;padding:10px}.thread-main-content{flex:1;width:100%}.reply-box-sidebar{position:sticky;top:10px;right:10px;width:300px;max-height:calc(100vh - 20px);background:var(--bg-color);border:1px solid var(--post-border);margin-left:10px;align-self:flex-start;overflow-y:auto;z-index:100}.reply-box-header{display:flex;justify-content:space-between;align-items:center;padding:8px;background:var(--post-bg);border-bottom:1px solid var(--post-border);font-size:10pt;font-weight:700}.reply-box-header button{color:var(--text-color)}.reply-box-sidebar .post-form{margin:0;border:none;max-width:none}.reply-toggle-btn{background:none;border:none;color:var(--link-color);cursor:pointer;font-size:10pt;font-family:inherit;text-decoration:none;padding:8px 16px;min-height:44px}.thread-locked-message{text-align:center;padding:20px;background:var(--post-bg);border:1px solid var(--post-border);margin:20px auto;font-size:10pt;max-width:600px;color:maroon;font-weight:700}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;padding:20px;margin:10px 0}.pagination-btn{background:var(--post-bg);border:1px solid var(--post-border);color:var(--link-color);padding:8px 16px;font-size:10pt;font-family:inherit;cursor:pointer;transition:background-color .2s,color .2s}.pagination-btn:hover:not(:disabled){background:var(--post-hover);color:var(--link-hover)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed;color:#999}.pagination-btn:focus-visible{outline:2px solid #4af626;outline-offset:2px}.pagination-info{font-size:10pt;color:var(--text-color);font-weight:700}.catalog-thumb{width:100%;height:auto;max-height:200px;object-fit:cover;display:block;margin:0 auto;cursor:pointer}@media (max-width: 768px){.reply-box-sidebar{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-height:100vh;margin:0;z-index:1000;border:none;border-radius:0}.thread-view{flex-direction:column;gap:0;padding:5px}.thread-main-content{width:100%}.reply-box-header{padding:12px;font-size:11pt;position:sticky;top:0;z-index:10;background:var(--post-bg)}.reply-box-sidebar .post-form{padding:10px;height:calc(100% - 45px);overflow-y:auto}.reply-box-sidebar textarea{min-height:150px;font-size:16px}.reply-box-sidebar input[type=file]{font-size:16px}.reply-box-sidebar button{min-height:44px;padding:12px 20px;font-size:14px}.reply-toggle-btn{font-size:11pt;padding:10px 20px;min-height:48px}}@keyframes spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{display:inline-block;width:18px;height:18px;border:3px solid #ddd;border-top-color:#06c;border-radius:50%;animation:spinner-rotate .8s linear infinite;vertical-align:middle;position:relative;z-index:10;opacity:1!important}.feed-grid-container{width:100%;max-width:1200px;margin:0 auto;padding:20px;box-sizing:border-box}.feed-empty-state{text-align:center;padding:60px 20px;color:var(--insta-text-secondary, #8e8e8e);font-size:16px}.feed-empty-state p{margin:0}.feed-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:100%}.grid-item{position:relative;aspect-ratio:1 / 1;overflow:hidden;cursor:pointer;background:var(--card-bg, #f0f0f0);border-radius:2px;transition:transform .2s cubic-bezier(.4,0,.2,1)}.grid-item:hover{transform:scale(1.02);z-index:1}.grid-item-image{width:100%;height:100%;position:relative}.grid-item-image img{width:100%;height:100%;object-fit:cover;display:block;position:relative;z-index:1;transition:opacity .3s ease}.grid-item:hover .grid-item-image img{opacity:.9}.multi-image-indicator{position:absolute;top:12px;right:12px;width:28px;height:28px;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;z-index:2;transition:all .2s ease}.grid-item:hover .multi-image-indicator{background:rgba(0,0,0,.8);transform:scale(1.1)}.grid-item-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;z-index:1}.grid-item:hover .grid-item-overlay{opacity:1}.grid-item-stats{display:flex;gap:24px;align-items:center}.grid-item-stats .stat{display:flex;align-items:center;gap:8px;color:#fff;font-weight:600;font-size:16px;letter-spacing:.3px}.grid-item-stats svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.grid-item.skeleton{cursor:default;pointer-events:none}.skeleton-shimmer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,var(--skeleton-base, #e0e0e0) 0%,var(--skeleton-highlight, #f0f0f0) 50%,var(--skeleton-base, #e0e0e0) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;width:100%;height:100%;z-index:0}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.load-more-trigger{height:20px;width:100%}[data-theme=dark] .grid-item{background:#1a1a1a}[data-theme=dark] .skeleton-shimmer{background:linear-gradient(90deg,#1a1a1a 0%,#2a2a2a 50%,#1a1a1a 100%);background-size:200% 100%}@media (max-width: 900px){.feed-grid{gap:3px}.feed-grid-container{padding:12px}.multi-image-indicator{width:24px;height:24px;top:8px;right:8px}.multi-image-indicator svg{width:16px;height:16px}.grid-item-stats .stat{font-size:14px;gap:6px}.grid-item-stats svg{width:18px;height:18px}}@media (max-width: 600px){.feed-grid{gap:2px}.feed-grid-container{padding:0}.grid-item{border-radius:0}.grid-item:hover{transform:none}.grid-item-overlay{opacity:0}}.grid-item-image img{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;will-change:opacity}.grid-item{will-change:transform}.video-player{position:relative;width:100%;height:100%;cursor:pointer;background:#000}.video-element{width:100%;height:100%;object-fit:contain;display:block}.video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);transition:opacity .2s}.video-player:hover .video-overlay{opacity:.9}.play-button{background:rgba(255,255,255,.9);border:none;width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s,background .2s;padding-left:4px}.play-button:hover{transform:scale(1.1);background:#fff}.play-button:active{transform:scale(.95)}.play-button svg{width:24px;height:24px;color:#000}.mute-button{position:absolute;bottom:12px;right:12px;background:rgba(0,0,0,.6);border:none;color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s;z-index:10}.mute-button:hover{background:rgba(0,0,0,.8)}.mute-button svg{width:18px;height:18px}@media (max-width: 768px){.play-button{width:56px;height:56px}.play-button svg{width:20px;height:20px}.mute-button{width:28px;height:28px;bottom:8px;right:8px}.mute-button svg{width:16px;height:16px}}.media-carousel{position:relative;width:100%;background:#000;aspect-ratio:1 / 1;overflow:hidden}.media-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.media-image{width:100%;height:100%;object-fit:contain;display:block}.carousel-button{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.5);border:none;color:#fff;min-width:44px;min-height:44px;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,transform .2s;z-index:10}.carousel-button:hover{background:rgba(0,0,0,.7)}.carousel-button:active{transform:translateY(-50%) scale(.95)}.carousel-button svg{width:20px;height:20px}.carousel-prev{left:12px}.carousel-next{right:12px}.carousel-indicators{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:10}.carousel-indicator{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.5);border:none;cursor:pointer;padding:12px;transition:background .2s,transform .2s}.carousel-indicator:hover{transform:scale(1.2)}.carousel-indicator.active{background:rgba(255,255,255,.9);transform:scale(1.2)}@media (max-width: 768px){.media-carousel{aspect-ratio:4 / 5}.carousel-button{min-width:44px;min-height:44px;width:44px;height:44px}.carousel-button svg{width:18px;height:18px}.carousel-prev{left:8px}.carousel-next{right:8px}}@media (min-width: 769px){.media-carousel{aspect-ratio:1 / 1}}.comment-section{border-top:1px solid var(--insta-border);padding:0}.comments-list{max-height:none;overflow-y:visible;display:flex;flex-direction:column;gap:16px}.comments-empty{padding:36px 16px;text-align:center;color:var(--insta-text-secondary);font-size:15px;font-weight:500;letter-spacing:.3px}.comments-loading,.comments-error{padding:24px 16px;text-align:center;color:var(--insta-text-secondary);font-size:14px;font-weight:500;letter-spacing:.2px}.comments-error{color:var(--insta-heart);font-weight:600}.comments-loading-skeletons{display:flex;flex-direction:column;gap:20px;padding:16px 0}.comment-skeleton{display:flex;flex-direction:column;gap:8px;opacity:0;animation:skeletonFadeIn .5s ease-out forwards}@keyframes skeletonFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.skeleton-comment-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.skeleton-comment-time{width:60px;height:10px;border-radius:5px;background:linear-gradient(110deg,var(--insta-skeleton-start) 0%,var(--insta-skeleton-mid) 40%,var(--insta-skeleton-start) 80%);background-size:200% 100%;animation:shimmerPulse 2s ease-in-out infinite}.skeleton-comment-text-wrapper{display:flex;flex-direction:column;gap:6px}.skeleton-comment-text{height:14px;border-radius:7px;background:linear-gradient(110deg,var(--insta-skeleton-start) 0%,var(--insta-skeleton-mid) 40%,var(--insta-skeleton-start) 80%);background-size:200% 100%;animation:shimmerPulse 2s ease-in-out infinite;width:100%}.skeleton-comment-text.short{width:70%}.skeleton-comment-actions{display:flex;align-items:center;gap:12px;margin-top:2px}.skeleton-action-btn{width:32px;height:16px;border-radius:8px;background:linear-gradient(110deg,var(--insta-skeleton-start) 0%,var(--insta-skeleton-mid) 40%,var(--insta-skeleton-start) 80%);background-size:200% 100%;animation:shimmerPulse 2s ease-in-out infinite}.comment-item{display:flex;flex-direction:column;gap:8px;padding-left:0;transition:padding-left .2s}.comment-item.depth-1{padding-left:24px;border-left:2px solid var(--insta-border)}.comment-item.depth-2{padding-left:48px;border-left:2px solid var(--insta-border)}.comment-item.depth-3{padding-left:72px;border-left:2px solid var(--insta-border)}.comment-content{display:flex;flex-direction:column;gap:6px}.comment-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.comment-time{color:var(--insta-text-secondary);font-size:12px}.comment-text{color:var(--insta-text);font-size:14px;line-height:1.5;word-wrap:break-word;white-space:pre-wrap}.comment-actions{display:flex;align-items:center;gap:12px;margin-top:2px}.comment-like-btn,.comment-reply-btn{background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;transition:all .2s;font-size:12px;font-weight:600;color:var(--insta-text-secondary)}.comment-like-btn:hover{background:var(--hover-bg, rgba(0, 0, 0, .05));color:var(--insta-text)}.comment-reply-btn{padding:4px;border-radius:0}.comment-reply-btn:hover{background:transparent;color:var(--insta-text);opacity:.7}.comment-like-btn.liked,.comment-like-btn.liked:hover{color:var(--insta-heart, #ed4956)}.comment-like-btn:focus-visible,.comment-reply-btn:focus-visible{outline:2px solid #4af626;outline-offset:2px;border-radius:4px}.like-count{font-size:12px}.reply-limit-message{font-size:12px;color:var(--insta-text-secondary);font-weight:500;padding:6px 12px;letter-spacing:.2px}.reply-form-container{padding-left:8px;margin-top:4px}.reply-form{display:flex;gap:8px;align-items:center}.reply-input{flex:1;background:var(--insta-bg, #fafafa);border:1px solid var(--insta-border);border-radius:20px;padding:8px 16px;font-size:16px;color:var(--insta-text);caret-color:var(--insta-text, #262626);outline:none;transition:border-color .2s}.reply-input::placeholder{color:var(--insta-text-secondary, #8e8e8e);opacity:1;transition:opacity .2s}.reply-input:focus::placeholder{opacity:0}.reply-input:focus{border-color:var(--insta-text-secondary)}.reply-button-wrapper{position:relative;flex-shrink:0}.reply-submit-btn{padding:6px 14px;background:var(--insta-link);border:none;border-radius:20px;color:var(--insta-card-bg);font-size:13px;font-weight:600;cursor:pointer;transition:opacity .2s;flex-shrink:0;display:flex;align-items:center;justify-content:center;min-width:40px}.reply-submit-btn svg{stroke:var(--insta-card-bg)}.reply-submit-btn:hover:not(:disabled){opacity:.8}.reply-submit-btn:disabled{opacity:.7;cursor:wait}.reply-submit-btn:focus-visible{outline:2px solid #4af626;outline-offset:2px}.comment-replies{display:flex;flex-direction:column;gap:8px;margin-top:8px}.toggle-replies-btn{background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:4px;transition:background .2s;font-size:12px;font-weight:600;color:var(--insta-text-secondary);align-self:flex-start}.toggle-replies-btn:hover{background:var(--hover-bg, rgba(0, 0, 0, .05));color:var(--insta-text)}.toggle-replies-btn:focus-visible{outline:2px solid #4af626;outline-offset:2px;border-radius:4px}.toggle-replies-btn svg{flex-shrink:0}.replies-list{display:flex;flex-direction:column;gap:16px;margin-top:8px}.comment-form{display:flex;flex-direction:column;gap:8px;margin-top:12px}.comment-text-input{background:var(--insta-bg, #fafafa);border:1px solid var(--insta-border);border-radius:20px;padding:8px 16px;font-size:16px;color:var(--insta-text);caret-color:var(--insta-text, #262626);outline:none;transition:border-color .2s}.comment-text-input::placeholder{color:var(--insta-text-secondary, #8e8e8e);opacity:1;transition:opacity .2s}.comment-text-input:focus::placeholder{opacity:0}.comment-text-input:focus{border-color:var(--insta-text-secondary)}.comment-input-row{display:flex;gap:8px;align-items:center}.comment-text-input{flex:1}.comment-button-wrapper{position:relative;flex-shrink:0}.comment-submit-button{padding:8px 16px;background:transparent;border:none;color:var(--insta-link);font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s;flex-shrink:0;display:flex;align-items:center;justify-content:center}.comment-submit-button:hover:not(:disabled){opacity:.7}.comment-submit-button:disabled{opacity:.7;cursor:wait}.comment-submit-button:focus-visible{outline:2px solid #4af626;outline-offset:2px}.comment-error{color:var(--insta-heart);font-size:13px;padding:6px 12px;font-weight:500;letter-spacing:.2px;animation:fadeIn .2s ease}.validation-tooltip{position:absolute;bottom:calc(100% + 12px);right:0;background:var(--insta-heart, #ed4956);color:#fff;padding:10px 16px;border-radius:12px;font-size:13px;font-weight:600;white-space:nowrap;z-index:1000;box-shadow:0 8px 24px #ed495659,0 2px 8px #00000026;animation:tooltipSlideIn .3s cubic-bezier(.4,0,.2,1);pointer-events:none;letter-spacing:.2px}.validation-tooltip:after{content:"";position:absolute;top:100%;right:20px;border:7px solid transparent;border-top-color:var(--insta-heart, #ed4956);filter:drop-shadow(0 2px 2px rgba(0,0,0,.05))}@keyframes tooltipSlideIn{0%{opacity:0;transform:translateY(8px) scale(.95)}60%{opacity:1;transform:translateY(-2px) scale(1)}to{opacity:1;transform:translateY(0) scale(1)}}[data-theme=dark] .comment-item.depth-1,[data-theme=dark] .comment-item.depth-2,[data-theme=dark] .comment-item.depth-3{border-left-color:#3a3a3a}[data-theme=dark] .comment-like-btn:hover,[data-theme=dark] .toggle-replies-btn:hover{background:rgba(255,255,255,.1)}[data-theme=dark] .comment-reply-btn:hover{background:transparent;opacity:.7}[data-theme=dark] .reply-input,[data-theme=dark] .comment-text-input{background:#2a2a2a;border-color:#3a3a3a;color:#e0e0e0;caret-color:#e0e0e0}[data-theme=dark] .reply-input:focus,[data-theme=dark] .comment-text-input:focus{border-color:#4a4a4a}[data-theme=dark] .validation-tooltip{background:var(--insta-heart, #ff3040);color:#fff;box-shadow:0 8px 24px #ff304066,0 2px 8px #0000004d}[data-theme=dark] .validation-tooltip:after{border-top-color:var(--insta-heart, #ff3040)}.comments-list::-webkit-scrollbar{width:6px}.comments-list::-webkit-scrollbar-track{background:transparent}.comments-list::-webkit-scrollbar-thumb{background:var(--insta-border);border-radius:3px}.comments-list::-webkit-scrollbar-thumb:hover{background:var(--insta-text-secondary)}@media (max-width: 768px){.comment-section{padding:0}.comment-item.depth-1{padding-left:16px}.comment-item.depth-2{padding-left:32px}.comment-item.depth-3{padding-left:48px}.comment-input-row{flex-wrap:wrap}.comment-submit-button{align-self:flex-end}.comment-actions{gap:8px}.reply-form{flex-direction:column;align-items:stretch}.reply-submit-btn{align-self:flex-end}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.comment-item{animation:fadeIn .3s ease}.comment-like-btn,.comment-reply-btn,.toggle-replies-btn{will-change:background}.post-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal, 2000);padding:20px;animation:modalFadeIn .3s cubic-bezier(.4,0,.2,1)}@media (max-width: 768px){.post-modal-overlay{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(0,0,0,.92)}}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.post-modal-container{position:relative;width:100%;max-width:1200px;max-height:90vh;max-height:90svh;max-height:90dvh;background:var(--card-bg, #ffffff);border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #00000080;animation:modalSlideIn .4s cubic-bezier(.4,0,.2,1)}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.post-modal-close{position:absolute;top:16px;top:max(16px,env(safe-area-inset-top));right:16px;right:max(16px,env(safe-area-inset-right));z-index:10;width:40px;height:40px;background:none;border:none;color:#a0a0a0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.post-modal-close:hover{color:#606060;transform:scale(1.1)}.post-modal-close:active{transform:scale(.95)}.post-modal-close:focus-visible{outline:2px solid #4af626;outline-offset:2px}.post-modal-content{display:flex;height:90vh;height:90svh;height:90dvh;max-height:900px}.post-modal-media{flex:1;background:#000;display:flex;align-items:center;justify-content:center;min-width:0;position:relative;user-select:none;-webkit-user-select:none;z-index:1}.post-modal-media .media-carousel{width:100%;height:100%}.double-click-heart{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:100;animation:heartBurst 1s cubic-bezier(.4,0,.2,1) forwards}.double-click-heart svg{filter:drop-shadow(0 0 20px rgba(255,255,255,.5))}@keyframes heartBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}15%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}30%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.5)}}.post-modal-sidebar{width:420px;display:flex;flex-direction:column;background:var(--card-bg, #ffffff);border-left:1px solid var(--border-color, #e0e0e0)}.post-modal-header{padding:16px 20px;border-bottom:1px solid var(--border-color, #e0e0e0)}.post-modal-user{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;border-radius:50%;background:var(--accent-color, #1877f2);display:flex;align-items:center;justify-content:center;color:#fff}.user-name{font-weight:600;font-size:15px;color:var(--text-primary, #1a1a1a)}.post-modal-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;-webkit-overflow-scrolling:touch;min-height:0}.modal-caption-timestamp-section{display:flex;flex-direction:column;gap:8px;padding-bottom:20px;align-self:flex-start;width:100%;margin-bottom:20px}.modal-caption,.modal-caption-empty{display:flex;flex-direction:column;gap:4px}.caption-empty-text{font-size:14px;line-height:1.5;color:var(--text-secondary, #8e8e8e);font-weight:500;letter-spacing:.2px}.caption-user{font-weight:600;font-size:14px;color:var(--text-primary, #1a1a1a)}.caption-text{font-size:14px;line-height:1.5;color:#000;white-space:pre-wrap;word-break:break-word}.caption-time{font-size:12px;color:var(--text-secondary, #8e8e8e);margin-top:4px}.modal-caption-timestamp-section .modal-timestamp{font-size:12px;color:var(--text-secondary, #8e8e8e);text-transform:uppercase;letter-spacing:.5px}.modal-comments-display{flex:1;align-self:flex-start;width:100%;margin-top:4px}.modal-comments-display .comment-section{border:none;padding:0;background:transparent}.modal-comments-display .comments-list{max-height:none;padding:0}.post-modal-footer{padding:16px 20px 20px;display:flex;flex-direction:column;gap:16px;flex-shrink:0}.modal-comment-form{padding-top:0}.modal-comment-form .comment-form{margin:0}.modal-footer-row{display:flex;align-items:center;gap:16px}.modal-actions{display:flex;gap:12px;align-items:center}.modal-action-button{background:none;border:none;cursor:pointer;padding:8px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;color:var(--text-primary, #1a1a1a);transition:all .2s ease;border-radius:8px}.modal-action-button:hover{background:var(--hover-bg, rgba(0, 0, 0, .05));transform:scale(1.05)}.modal-action-button:active{transform:scale(.95)}.modal-action-button:focus-visible{outline:2px solid #4af626;outline-offset:2px;border-radius:8px}.modal-action-button.like-button.liked{color:#ed4956;animation:likeAnimation .4s cubic-bezier(.4,0,.2,1)}@keyframes likeAnimation{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.modal-likes{font-weight:600;font-size:14px;color:var(--text-primary, #1a1a1a);flex-shrink:0}.modal-timestamp{font-size:12px;color:var(--text-secondary, #8e8e8e);text-transform:uppercase;letter-spacing:.5px;margin-left:auto;flex-shrink:0}[data-theme=dark] .post-modal-container{background:#1a1a1a}[data-theme=dark] .post-modal-sidebar{background:#1a1a1a;border-left-color:#2a2a2a}[data-theme=dark] .post-modal-header{border-bottom-color:#2a2a2a}[data-theme=dark] .caption-text{color:#e0e0e0}[data-theme=dark] .modal-action-button:hover{background:rgba(255,255,255,.1)}.post-modal-body::-webkit-scrollbar{width:8px}.post-modal-body::-webkit-scrollbar-track{background:transparent}.post-modal-body::-webkit-scrollbar-thumb{background:var(--scrollbar-color, #c0c0c0);border-radius:4px}.post-modal-body::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover, #a0a0a0)}[data-theme=dark] .post-modal-body::-webkit-scrollbar-thumb{background:#3a3a3a}[data-theme=dark] .post-modal-body::-webkit-scrollbar-thumb:hover{background:#4a4a4a}@media (min-width: 901px){.post-modal-close{right:auto;left:16px;left:max(16px,env(safe-area-inset-left));background:rgba(0,0,0,.7);border-radius:50%;color:#fff}.post-modal-close:hover{background:rgba(0,0,0,.85);color:#fff}}@media (max-width: 1024px){.post-modal-sidebar{width:380px}}@media (max-width: 900px){.post-modal-content{flex-direction:column;height:auto;max-height:90vh;max-height:90svh;max-height:90dvh}.post-modal-media{height:45vh;height:45svh;height:45dvh;max-height:400px;flex-shrink:0;z-index:1}.post-modal-sidebar{width:100%;border-left:none;flex:1;min-height:0;max-height:none;z-index:2;position:relative;overflow:hidden}.post-modal-body{flex:1;overflow-y:auto;min-height:0}.post-modal-container{max-height:95vh;max-height:95svh;max-height:95dvh;display:flex;flex-direction:column}}@media (max-width: 900px){.post-modal-close{right:16px;right:max(16px,env(safe-area-inset-right));left:auto;background:none;color:#a0a0a0}.post-modal-close:hover{background:none;color:#606060}[data-theme=dark] .post-modal-close{color:#e0e0e0}[data-theme=dark] .post-modal-close:hover{color:#fff}}@media (max-width: 600px){.post-modal-overlay{padding:0}.post-modal-container{max-width:100%;max-height:100vh;max-height:100svh;max-height:100dvh;height:100vh;height:100svh;height:100dvh;border-radius:0}.post-modal-content{max-height:100vh;max-height:100svh;max-height:100dvh;height:100vh;height:100svh;height:100dvh}.post-modal-close{top:12px;top:max(12px,env(safe-area-inset-top));right:12px;right:max(12px,env(safe-area-inset-right))}.post-modal-media{height:40vh;height:40svh;height:40dvh;max-height:400px}.post-modal-sidebar{max-height:60vh;max-height:60svh;max-height:60dvh;flex:1}.post-modal-body{padding:12px 16px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));overflow-y:auto;gap:12px}.post-modal-footer{padding:12px 16px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(12px,env(safe-area-inset-bottom));gap:12px}.modal-footer-row{gap:12px}.modal-comment-form{padding-top:0}.modal-caption-timestamp-section{margin-bottom:12px;padding-bottom:12px}}.post-modal-overlay,.post-modal-container{will-change:opacity,transform}.modal-action-button{will-change:transform}.feed{width:100%;min-height:100%;background:var(--insta-bg, #fafafa)}.feed-loading,.feed-error,.feed-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.feed-error p{color:var(--insta-text);margin-bottom:16px}.feed-empty p{color:var(--insta-text-secondary);font-size:16px;margin:8px 0}.feed-empty-subtitle{font-size:14px!important}.retry-button{padding:10px 24px;background:var(--insta-button-bg);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.retry-button:hover{background:var(--insta-button-hover)}.post-skeleton{background:var(--insta-card-bg);border:1px solid var(--insta-border);border-radius:8px;margin-bottom:20px;padding:16px;opacity:0;animation:skeletonFadeIn .6s ease-out forwards;box-shadow:0 1px 3px #0000000d}@keyframes skeletonFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.skeleton-header-wrapper{display:flex;align-items:center;gap:12px;margin-bottom:12px}.skeleton-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;background:linear-gradient(110deg,var(--insta-skeleton-start) 0%,var(--insta-skeleton-mid) 40%,var(--insta-skeleton-start) 80%);background-size:200% 100%;animation:shimmerPulse 2s ease-in-out infinite}.skeleton-header-text{flex:1;display:flex;flex-direction:column;gap:8px}.skeleton-username{width:120px;height:12px;border-radius:6px}.skeleton-timestamp{width:80px;height:10px;border-radius:5px}.skeleton-media{width:100%;height:400px;margin-bottom:12px;border-radius:4px;position:relative;overflow:hidden;background:linear-gradient(110deg,var(--insta-skeleton-start) 0%,var(--insta-skeleton-mid) 40%,var(--insta-skeleton-start) 80%);background-size:200% 100%;animation:shimmerPulse 2s ease-in-out infinite}.skeleton-media:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);animation:shimmerWave 2.5s ease-in-out infinite}.skeleton-actions-wrapper{display:flex;gap:12px;margin-bottom:12px}.skeleton-action-icon{width:24px;height:24px;border-radius:50%}.skeleton-likes{width:80px;height:14px;border-radius:7px;margin-bottom:8px}.skeleton-caption-wrapper{display:flex;flex-direction:column;gap:6px}.skeleton-caption-line{width:100%;height:12px;border-radius:6px}.skeleton-caption-line.short{width:60%}.skeleton{background:linear-gradient(110deg,var(--insta-skeleton-start) 0%,var(--insta-skeleton-mid) 40%,var(--insta-skeleton-start) 80%);background-size:200% 100%;animation:shimmerPulse 2s ease-in-out infinite;border-radius:4px}@keyframes shimmerPulse{0%,to{background-position:200% 0;opacity:1}50%{background-position:-20% 0;opacity:.8}}@keyframes shimmerWave{0%{transform:translate(-100%)}50%,to{transform:translate(100%)}}.feed-loading-more{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px;color:var(--insta-text-secondary)}.spinner{width:20px;height:20px;border:2px solid var(--insta-border);border-top-color:var(--insta-text);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.feed-end{padding:40px 20px;text-align:center;color:var(--insta-text-secondary)}.feed-sentinel{height:1px;visibility:hidden}@media (max-width: 768px){.feed{padding:10px 0}.feed-container{padding:0 8px}.post-skeleton{margin-bottom:16px;padding:12px}.skeleton-media{height:320px}.skeleton-avatar{width:36px;height:36px}.skeleton-username{width:100px}.skeleton-timestamp{width:70px}}.instagram{width:100%;height:100%;overflow-y:auto;background:var(--insta-bg);color:var(--insta-text);transition:background .3s ease,color .3s ease}.instagram[data-theme=light]{--insta-bg: #fafafa;--insta-card-bg: #ffffff;--insta-text: #262626;--insta-text-secondary: #8e8e8e;--insta-border: #dbdbdb;--insta-heart: #ed4956;--insta-link: #0095f6;--insta-button-bg: #0095f6;--insta-button-hover: #1877f2;--insta-skeleton: #f0f0f0;--insta-skeleton-start: #e8e8e8;--insta-skeleton-mid: #f5f5f5}.instagram[data-theme=dark]{--insta-bg: #0a0a0a;--insta-card-bg: #1a1a1a;--insta-text: #fafafa;--insta-text-secondary: #a8a8a8;--insta-border: #262626;--insta-heart: #ff3040;--insta-link: #ffffff;--insta-button-bg: #ffffff;--insta-button-hover: #e0e0e0;--insta-skeleton: #2a2a2a;--insta-skeleton-start: #1f1f1f;--insta-skeleton-mid: #2f2f2f}.instagram-header{position:sticky;top:0;z-index:100;background:var(--insta-card-bg);border-bottom:1px solid var(--insta-border);padding-top:max(0px,env(safe-area-inset-top))}.instagram-header-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:6px 20px;width:100%;box-sizing:border-box}.instagram-logo{display:flex;align-items:center;gap:0px;height:100%}.instagram-camera-icon{flex-shrink:0;display:block;transform:translateY(-2px)}.instagram-logo-img{height:58px;width:auto;object-fit:contain;flex-shrink:0;display:block}.instagram::-webkit-scrollbar{width:8px}.instagram::-webkit-scrollbar-track{background:var(--insta-bg)}.instagram::-webkit-scrollbar-thumb{background:var(--insta-border);border-radius:4px}.instagram::-webkit-scrollbar-thumb:hover{background:var(--insta-text-secondary)}@media (max-width: 768px){.instagram-header{padding-top:max(0px,env(safe-area-inset-top))}.instagram-header-content{padding:6px 12px}.instagram-logo-img{height:46px}}@media (max-width: 480px){.instagram-logo-img{height:40px}.instagram-camera-icon{width:30px;height:30px}}.transport-container{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.transport-controls{display:flex;gap:var(--spacing-sm)}.transport-button{width:48px;height:48px;background-color:#3a3a3a;border:1px solid #000000;color:#ccc;font-size:1.2rem;cursor:pointer;border-radius:2px;transition:all .2s;font-family:var(--font-mono)}.transport-button:hover{background-color:#4a4a4a}.transport-button:active{transform:scale(.95)}.transport-button.active{background-color:#ff9f00;color:#000;border-color:#ff9f00}.transport-button.play-button.active{background-color:#0f0;color:#000;border-color:#0f0}.transport-button.play-button.active:hover{background-color:#3f3}.transport-button.pause-button.active{background-color:red;color:#fff;border-color:red}.transport-button.pause-button.active:hover{background-color:#f33}.transport-button:focus-visible{outline:2px solid #4af626;outline-offset:2px}.bpm-control{display:flex;align-items:center;gap:var(--spacing-sm);padding:8px 12px;background-color:#3a3a3a;border:1px solid #000000;border-radius:2px}.bpm-control label{color:gray;font-size:.9rem;font-weight:700}.bpm-slider{width:120px;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#555555;outline:none;border-radius:3px}.bpm-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;background:#ff9f00;cursor:pointer;border-radius:50%;transition:background .2s}.bpm-slider::-webkit-slider-thumb:hover{background:#ffb933}.bpm-slider:focus-visible{outline:2px solid #4af626;outline-offset:2px}.bpm-slider::-moz-range-thumb{width:18px;height:18px;background:#ff9f00;cursor:pointer;border-radius:50%;border:none;transition:background .2s}.bpm-slider::-moz-range-thumb:hover{background:#ffb933}.bpm-display{min-width:40px;text-align:center;color:#ff9f00;font-weight:700;font-size:1.1rem}.step-indicator{display:flex;align-items:center;gap:var(--spacing-sm);padding:8px 12px;background-color:#3a3a3a;border:1px solid #000000;border-radius:2px}.step-indicator span{color:gray;font-size:.9rem;min-width:80px}.step-dots{display:flex;gap:4px}.step-dot{width:8px;height:8px;background-color:#555;border-radius:50%;transition:background-color .1s}.step-dot.active{background-color:#ff9f00;box-shadow:0 0 8px #ff9f00}@media (max-width: 768px){.transport-container{gap:var(--spacing-sm)}.transport-button{width:44px;height:44px;font-size:1rem}.bpm-slider{width:100px}.step-indicator{width:100%}.step-dots{flex:1;justify-content:space-between}}@media (max-width: 480px){.transport-controls{gap:6px}.transport-button{width:40px;height:40px}.bpm-control{flex:1;min-width:0}.bpm-slider{width:80px}.step-indicator span{font-size:.85rem;min-width:70px}.step-dot{width:6px;height:6px}}.tracklist-wrapper{display:flex;gap:var(--spacing-md);align-items:stretch}.tracklist-container{flex:1;display:flex;flex-direction:column;gap:8px}.tracklist-header{display:grid;grid-template-columns:100px 110px 120px 90px 70px;gap:8px;padding:8px var(--spacing-sm);background-color:#2a2a2a;border:1px solid #000000;border-radius:2px;font-size:.85rem;color:gray;font-weight:700}.track-row{display:grid;grid-template-columns:100px 110px 120px 90px 70px;gap:8px;padding:var(--spacing-sm);background-color:#2a2a2a;border:1px solid #000000;border-radius:2px;align-items:center;transition:border-color .2s}.track-row:hover{border-color:#555}.track-name{display:flex;align-items:center;gap:8px;color:#ccc;font-weight:700}.track-indicator{width:12px;height:12px;border-radius:50%;background-color:#555;transition:background-color .2s}.track-indicator.armed{background-color:#f33;box-shadow:0 0 8px #f33}.track-controls{display:flex;gap:4px}.track-button{width:32px;height:32px;background-color:#3a3a3a;border:1px solid #000000;color:gray;font-size:.85rem;font-weight:700;cursor:pointer;border-radius:2px;transition:all .2s;font-family:var(--font-mono)}.track-button:hover{background-color:#4a4a4a;color:#ccc}.track-button.active{background-color:#ff9f00;color:#000;border-color:#ff9f00}.track-button:first-child.active{background-color:#f33;color:#fff;border-color:#f33}.track-volume,.track-pan{display:flex;align-items:center;gap:8px}.volume-slider,.pan-slider{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#555555;outline:none;border-radius:3px}.volume-slider::-webkit-slider-thumb,.pan-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;background:#ff9f00;cursor:pointer;border-radius:50%;transition:background .2s}.volume-slider::-webkit-slider-thumb:hover,.pan-slider::-webkit-slider-thumb:hover{background:#ffb933}.volume-slider::-moz-range-thumb,.pan-slider::-moz-range-thumb{width:16px;height:16px;background:#ff9f00;cursor:pointer;border-radius:50%;border:none;transition:background .2s}.volume-slider::-moz-range-thumb:hover,.pan-slider::-moz-range-thumb:hover{background:#ffb933}.volume-value,.pan-value{min-width:38px;text-align:right;color:gray;font-size:.8rem}.clear-button{width:100%;height:32px;background-color:#3a3a3a;border:1px solid #000000;color:gray;font-size:.85rem;cursor:pointer;border-radius:2px;transition:all .2s;font-family:var(--font-mono)}.clear-button:hover{background-color:#d85a00;color:#fff;border-color:#d85a00}.master-channel-vertical{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);background-color:#2a2a2a;border:2px solid #ff9f00;border-radius:2px;padding:var(--spacing-sm);min-width:70px}.master-label{font-size:.75rem;font-weight:700;color:#ff9f00;letter-spacing:1px;writing-mode:horizontal-tb}.master-slider-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%}.master-slider-vertical{-webkit-appearance:none;-moz-appearance:none;appearance:none;writing-mode:vertical-lr;direction:rtl;width:8px;height:200px;background:#555555;outline:none;border-radius:4px}.master-slider-vertical::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;background:#ff9f00;cursor:pointer;border-radius:50%;transition:background .2s;box-shadow:0 2px 6px #0000004d}.master-slider-vertical::-webkit-slider-thumb:hover{background:#ffb933}.master-slider-vertical::-moz-range-thumb{width:24px;height:24px;background:#ff9f00;cursor:pointer;border-radius:50%;border:none;transition:background .2s;box-shadow:0 2px 6px #0000004d}.master-slider-vertical::-moz-range-thumb:hover{background:#ffb933}.master-value{font-size:.9rem;font-weight:700;color:#ff9f00;min-height:24px;display:flex;align-items:center;justify-content:center}@media (max-width: 768px){.tracklist-wrapper{flex-direction:column}.master-channel-vertical{flex-direction:row;min-width:auto;width:100%}.master-slider-vertical{width:200px;height:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;writing-mode:horizontal-tb}.tracklist-header{grid-template-columns:1fr;display:none}.track-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.track-name{grid-column:1 / -1;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.track-controls{justify-content:center}.track-button{flex:1;max-width:60px}.track-volume,.track-pan{flex-direction:row}.volume-slider,.pan-slider{min-width:0}}@media (max-width: 480px){.track-button{width:32px;height:32px;font-size:.8rem}.track-controls{gap:4px}.volume-value,.pan-value{font-size:.75rem;min-width:38px}.clear-button{height:28px;font-size:.8rem}}.sequencer-container{display:flex;flex-direction:column;min-width:0}.sequencer-grid{display:flex;flex-direction:column;gap:8px;min-width:0}.sequencer-track{display:grid;grid-template-columns:140px 1fr;gap:var(--spacing-sm);background-color:#2a2a2a;padding:var(--spacing-sm);border:1px solid #000000;border-radius:2px}.track-label{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:8px;background-color:#3a3a3a;border:1px solid #000000;border-radius:2px;cursor:pointer;transition:all .2s}.track-label:hover{background-color:#4a4a4a}.track-label.selected{background-color:#ff9f00;border-color:#ff9f00}.track-label.selected .track-name{color:#000}.track-label:focus-visible{outline:2px solid #4af626;outline-offset:2px}.track-name{font-weight:700;color:#ccc}.drum-types{display:flex;gap:4px;margin-top:4px}.drum-label{display:inline-block;width:20px;height:20px;line-height:20px;text-align:center;border-radius:3px;font-size:.75rem;font-weight:700}.drum-label.drum-kick{background-color:#ff333380;color:#c00;border:1px solid #ff3333}.drum-label.drum-snare{background-color:#3399ff80;color:#66b3ff;border:1px solid #3399ff}.drum-label.drum-hihat{background-color:#ffdd0080;color:#fe6;border:1px solid #ffdd00}.steps-container{display:grid;grid-template-columns:repeat(16,1fr);gap:4px;min-width:0}.step-cell{aspect-ratio:1;background-color:#3a3a3a;border:1px solid #000000;border-radius:2px;cursor:pointer;transition:all .15s;position:relative;min-width:32px;display:flex;align-items:center;justify-content:center}.step-cell:hover{background-color:#4a4a4a;border-color:#555}.step-cell.active{background-color:#ff9f00;border-color:#ff9f00}.step-cell.current{box-shadow:0 0 12px #ff9f00;animation:pulse .5s ease-in-out}.note-indicator{width:12px;height:12px;background-color:#000;border-radius:50%}.step-cell-drum{display:flex;flex-direction:column;gap:2px;min-width:32px}.drum-substep{flex:1;min-height:10px;background-color:#3a3a3a;border:1px solid #000000;border-radius:2px;cursor:pointer;transition:all .15s}.drum-substep:hover{background-color:#4a4a4a}.drum-substep.drum-kick.active{background-color:#f55;border-color:#f33}.drum-substep.drum-snare.active{background-color:#66b3ff;border-color:#39f}.drum-substep.drum-hihat.active{background-color:#fe6;border-color:#fd0}.drum-substep.current{box-shadow:0 0 8px currentColor}.sequencer-footer{margin-top:4px}.beat-markers{display:grid;grid-template-columns:140px repeat(16,1fr);gap:4px;padding:0 var(--spacing-sm)}.beat-marker{text-align:center;color:gray;font-size:.75rem;min-width:32px}.beat-marker:nth-child(1),.beat-marker:nth-child(5),.beat-marker:nth-child(9),.beat-marker:nth-child(13){color:#ff9f00;font-weight:700}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@media (max-width: 1200px){.step-cell,.step-cell-drum{min-width:28px}.drum-substep{min-height:8px}}@media (max-width: 768px){.sequencer-track{grid-template-columns:100px 1fr}.beat-markers{grid-template-columns:100px repeat(16,1fr)}.step-cell,.step-cell-drum{min-width:24px}.steps-container{gap:3px}.note-indicator{width:8px;height:8px}.drum-substep{min-height:6px}.sequencer-hint{font-size:.75rem}}@media (max-width: 480px){.sequencer-track{grid-template-columns:1fr}.track-label{padding:6px}.steps-container{gap:2px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.step-cell,.step-cell-drum{min-width:36px}.drum-substep{min-height:5px;border-width:1px}.beat-markers{grid-template-columns:repeat(16,1fr);margin-left:0}.beat-marker{min-width:36px;font-size:.65rem}.sequencer-container{gap:0}}.piano-roll-container{display:flex;flex-direction:column;gap:var(--spacing-md)}.track-selector{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.track-select-button{padding:8px 16px;background-color:#3a3a3a;border:1px solid #000000;color:gray;font-family:var(--font-mono);font-size:.9rem;font-weight:700;cursor:pointer;border-radius:2px;transition:all .2s}.track-select-button:hover{background-color:#4a4a4a;color:#ccc}.track-select-button.active{background-color:#ff9f00;color:#000;border-color:#ff9f00}.track-select-button:focus-visible{outline:2px solid #4af626;outline-offset:2px}.piano-roll-grid{display:grid;grid-template-columns:80px 1fr;gap:8px;background-color:#2a2a2a;padding:var(--spacing-sm);border:1px solid #000000;border-radius:2px;overflow-x:auto;-webkit-overflow-scrolling:touch;min-width:0}.piano-keys{display:flex;flex-direction:column;gap:2px}.piano-key{height:28px;display:flex;align-items:center;padding:0 8px;border-radius:2px;font-size:.75rem;border:1px solid #000000}.piano-key.white-key{background-color:#ccc;color:#000;font-weight:700}.piano-key.black-key{background-color:#3a3a3a;color:#ccc}.note-label{-webkit-user-select:none;user-select:none}.roll-grid{display:flex;flex-direction:column;gap:2px;min-width:0}.roll-row{display:grid;grid-template-columns:repeat(16,1fr);gap:2px;min-height:28px}.roll-cell{background-color:#3a3a3a;border:1px solid #000000;border-radius:2px;cursor:pointer;transition:all .15s;min-width:32px;position:relative}.roll-cell:hover{background-color:#4a4a4a;border-color:#555}.roll-cell.has-note{background-color:#ff9f00;border-color:#ff9f00}.roll-cell.has-note:hover{background-color:#ffb933;border-color:#ffb933}.roll-cell.current{box-shadow:inset 0 0 8px #ff9f00;animation:rollPulse .5s ease-in-out}.no-track-selected{padding:var(--spacing-lg);text-align:center;background-color:#2a2a2a;border:1px solid #000000;border-radius:2px;color:gray}.piano-roll-footer{margin-top:4px}.step-numbers{display:grid;grid-template-columns:80px repeat(16,1fr);gap:8px;padding:0 var(--spacing-sm)}.step-number{text-align:center;color:gray;font-size:.75rem;min-width:32px}.step-number:nth-child(2),.step-number:nth-child(6),.step-number:nth-child(10),.step-number:nth-child(14){color:#ff9f00;font-weight:700}@keyframes rollPulse{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.1)}}@media (max-width: 768px){.piano-roll-grid{grid-template-columns:60px 1fr}.piano-key{height:24px;padding:0 6px;font-size:.7rem}.roll-row{min-height:24px;gap:1px}.roll-cell{min-width:28px}.step-numbers{grid-template-columns:60px repeat(16,1fr)}.step-number{min-width:28px;font-size:.7rem}}@media (max-width: 480px){.track-select-button{padding:6px 12px;font-size:.85rem}.piano-roll-grid{grid-template-columns:50px 1fr}.piano-key{height:20px;padding:0 4px;font-size:.65rem}.roll-row{min-height:20px}.roll-cell{min-width:36px}.step-numbers{grid-template-columns:50px repeat(16,1fr)}.step-number{min-width:36px;font-size:.65rem}}.daw-container{width:100%;min-height:100vh;min-height:100svh;min-height:100dvh;background-color:#1a1a1a;color:#ccc;font-family:var(--font-mono);position:relative;display:flex;flex-direction:column;--daw-bg-dark: #1a1a1a;--daw-bg-medium: #2a2a2a;--daw-bg-light: #3a3a3a;--daw-border: #000000;--daw-text: #cccccc;--daw-text-dim: #808080;--daw-active: #ff9f00;--daw-hover: #ffb933}.audio-init-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(10,10,10,.5);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:100}@media (max-width: 768px){.audio-init-overlay{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(10,10,10,.8)}}.init-button{background-color:#ff9f00;color:#000;border:2px solid #ffb933;padding:20px 40px;font-family:var(--font-mono);font-size:1.2rem;font-weight:700;cursor:pointer;border-radius:8px;transition:all .2s;box-shadow:0 4px 20px #ff9f0080;text-transform:uppercase;letter-spacing:1px}.init-button:hover{background-color:var(--daw-hover);transform:translateY(-2px);box-shadow:0 6px 16px #ff9f0066}.init-button:active{background-color:#cc7f00;transform:translateY(0);box-shadow:0 2px 8px #ff9f004d}.init-button:focus-visible{outline:2px solid #4af626;outline-offset:2px}.daw-workspace{width:100%;height:100%;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;min-height:0}.daw-header{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--daw-bg-medium);border-bottom:2px solid var(--daw-border)}.header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.daw-header h3{margin:0;font-size:1.1rem;color:var(--daw-text)}.daw-subtitle{margin:4px 0 0;font-size:.85rem;color:var(--daw-text-dim)}.clear-all-button{padding:8px 12px;background-color:var(--daw-bg-light);border:1px solid var(--daw-border);color:var(--daw-text-dim);font-family:var(--font-mono);font-size:1.2rem;cursor:pointer;border-radius:2px;transition:all .2s;white-space:nowrap;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:36px}.clear-all-button:hover{background-color:#d85a00;border-color:#d85a00}.clear-all-button:focus-visible{outline:2px solid #4af626;outline-offset:2px}.transport-section{padding:var(--spacing-md);background-color:var(--daw-bg-medium);border-bottom:2px solid var(--daw-border)}.tracks-section{padding:var(--spacing-md);background-color:var(--daw-bg-dark);border-bottom:2px solid var(--daw-border)}.editor-section{flex:1;padding:var(--spacing-md);background-color:var(--daw-bg-dark);min-height:200px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.editor-toggle{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--daw-bg-medium);border-bottom:2px solid var(--daw-border);display:flex;gap:var(--spacing-sm)}.view-button{padding:10px 16px;background-color:var(--daw-bg-light);border:1px solid var(--daw-border);color:var(--daw-text-dim);font-family:var(--font-mono);font-size:1.3rem;cursor:pointer;border-radius:2px;transition:all .2s;display:flex;align-items:center;justify-content:center;min-width:50px}.view-button:hover{color:var(--daw-text);background-color:#4a4a4a}.view-button.active{background-color:var(--daw-active);color:#000;border-color:var(--daw-active)}.view-button:focus-visible{outline:2px solid #4af626;outline-offset:2px}@media (max-width: 768px){.daw-header h3{font-size:1rem}.header-content{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.clear-all-button{width:100%}.transport-section,.tracks-section,.editor-section{padding:var(--spacing-sm)}.daw-workspace{overflow:visible}.editor-section{overflow:visible;flex:0 0 auto}}@media (max-width: 480px){.init-button{padding:14px 28px;font-size:1rem}}*{box-sizing:border-box}body{margin:0}table{border-collapse:collapse}[data-color-mode=light] input{--csstools-color-scheme--light:initial;color-scheme:light}[data-color-mode=dark] input{--csstools-color-scheme--light: ;color-scheme:dark}@media (prefers-color-scheme:light){[data-color-mode=auto][data-light-theme*=light]{--csstools-color-scheme--light:initial;color-scheme:light}}@media (prefers-color-scheme:dark){[data-color-mode=auto][data-dark-theme*=dark]{--csstools-color-scheme--light: ;color-scheme:dark}}[role=button]:focus:not(:focus-visible):not(.focus-visible),[role=tabpanel][tabindex="0"]:focus:not(:focus-visible):not(.focus-visible),a:focus:not(:focus-visible):not(.focus-visible),button:focus:not(:focus-visible):not(.focus-visible),summary:focus:not(:focus-visible):not(.focus-visible){box-shadow:none;outline:none}[tabindex="0"]:focus:not(:focus-visible):not(.focus-visible),details-dialog:focus:not(:focus-visible):not(.focus-visible){outline:none}.prc-src-BaseStyles-dl-St{color:var(--BaseStyles-fgColor,var(--fgColor-default,var(--color-fg-default)));font-family:var(--BaseStyles-fontFamily,var(--fontStack-system,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"));line-height:var(--BaseStyles-lineHeight,1.5)}input .prc-src-BaseStyles-dl-St:has([data-color-mode=light]){--csstools-color-scheme--light:initial;color-scheme:light}input .prc-src-BaseStyles-dl-St:has([data-color-mode=dark]){--csstools-color-scheme--light: ;color-scheme:dark}.prc-src-BaseStyles-dl-St :where(a:not([class*=prc-]):not([class*=PRC-]):not([class*=Primer_Brand__])){color:var(--fgColor-accent,var(--color-accent-fg));-webkit-text-decoration:none;text-decoration:none}:is(.prc-src-BaseStyles-dl-St :where(a:not([class*=prc-]):not([class*=PRC-]):not([class*=Primer_Brand__]))):hover{-webkit-text-decoration:underline;text-decoration:underline}.prc-Spinner-Box-qNUI9{display:inline-flex}@keyframes prc-Spinner-rotate-keyframes-XyFIG{to{transform:rotate(1turn)}}.prc-Spinner-SpinnerAnimation-e7Gf-{animation:prc-Spinner-rotate-keyframes-XyFIG var(--base-duration-1000,1s) var(--base-easing-linear,0,0,1,1) infinite}.prc-VisuallyHidden-VisuallyHidden-UNWQp:not(:focus):not(:active):not(:focus-within){clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.prc-Text-Text-0ima0:where([data-size=small]){font-size:var(--text-body-size-small,.75rem);line-height:var(--text-body-lineHeight-small,1.6666)}.prc-Text-Text-0ima0:where([data-size=medium]){font-size:var(--text-body-size-medium,.875rem);line-height:var(--text-body-lineHeight-medium,1.4285)}.prc-Text-Text-0ima0:where([data-size=large]){font-size:var(--text-body-size-large,1rem);line-height:var(--text-body-lineHeight-large,1.5)}.prc-Text-Text-0ima0:where([data-weight=light]){font-weight:var(--base-text-weight-light,300)}.prc-Text-Text-0ima0:where([data-weight=normal]){font-weight:var(--base-text-weight-normal,400)}.prc-Text-Text-0ima0:where([data-weight=medium]){font-weight:var(--base-text-weight-medium,500)}.prc-Text-Text-0ima0:where([data-weight=semibold]){font-weight:var(--base-text-weight-semibold,600)}:where(.prc-Heading-Heading-6CmGO){font-size:var(--text-title-size-large,2rem);font-weight:var(--base-text-weight-semibold,600);margin:0}:where(.prc-Heading-Heading-6CmGO):where([data-variant=large]){font:var(--text-title-shorthand-large,600 2rem/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji")}:where(.prc-Heading-Heading-6CmGO):where([data-variant=medium]){font:var(--text-title-shorthand-medium,600 1.25rem/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji")}:where(.prc-Heading-Heading-6CmGO):where([data-variant=small]){font:var(--text-title-shorthand-small,600 1rem/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji")}:where(.prc-Link-Link-85e08){color:var(--fgColor-accent,var(--color-accent-fg));-webkit-text-decoration:none;text-decoration:none;text-underline-offset:.05rem}:where(.prc-Link-Link-85e08):is(button){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0;cursor:pointer;display:inline-block;font-size:inherit;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}:where(.prc-Link-Link-85e08):hover{-webkit-text-decoration:underline;text-decoration:underline}[data-a11y-link-underlines=true] :where(.prc-Link-Link-85e08):where([data-inline=true]){-webkit-text-decoration:underline;text-decoration:underline}:where(.prc-Link-Link-85e08):where([data-muted=true]){color:var(--fgColor-muted,var(--color-fg-muted))}:where(.prc-Link-Link-85e08):where([data-muted=true]):hover{color:var(--fgColor-accent,var(--color-accent-fg));-webkit-text-decoration:none;text-decoration:none}.prc-StateLabel-StateLabel-ukDwa{align-items:center;border-radius:var(--borderRadius-full,624.9375rem);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis));display:inline-flex;font-weight:var(--base-text-weight-semibold,600);line-height:16px;text-align:center}.prc-StateLabel-StateLabel-ukDwa:where([data-size=small]){font-size:var(--text-body-size-small,.75rem);padding:var(--base-size-4,.25rem) var(--base-size-8,.5rem)}.prc-StateLabel-StateLabel-ukDwa:where([data-size=medium]){font-size:var(--text-body-size-medium,.875rem);padding:var(--base-size-8,.5rem) var(--base-size-12,.75rem)}.prc-StateLabel-StateLabel-ukDwa:where([data-status=issueClosed]){background-color:var(--bgColor-done-emphasis,var(--color-done-emphasis));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-done-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=issueClosedNotPlanned]){background-color:var(--bgColor-neutral-emphasis,var(--color-fg-subtle));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-neutral-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=pullClosed]){background-color:var(--bgColor-closed-emphasis,var(--color-closed-emphasis));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-closed-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=pullMerged]){background-color:var(--bgColor-done-emphasis,var(--color-done-emphasis));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-done-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=pullQueued]){background-color:var(--bgColor-attention-emphasis,var(--color-attention-emphasis));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-attention-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=issueOpened]){background-color:var(--bgColor-open-emphasis,var(--color-open-emphasis));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-open-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=pullOpened]){background-color:var(--bgColor-open-emphasis,var(--color-open-emphasis));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-open-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=draft]){background-color:var(--bgColor-draft-emphasis,var(--bgColor-neutral-emphasis,var(--color-fg-subtle)));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-draft-emphasis,var(--borderColor-neutral-emphasis,transparent));color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=issueDraft]){background-color:var(--bgColor-draft-emphasis,var(--bgColor-neutral-emphasis,var(--color-fg-subtle)));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-draft-emphasis,var(--borderColor-neutral-emphasis,transparent));color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=unavailable]){background-color:var(--bgColor-neutral-emphasis,var(--color-fg-subtle));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-neutral-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=open]){background-color:var(--bgColor-open-emphasis,var(--color-open-emphasis));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-open-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-StateLabel-ukDwa:where([data-status=closed]){background-color:var(--bgColor-done-emphasis,var(--color-done-emphasis));box-shadow:var(--boxShadow-thin,inset 0 0 0 1px) var(--borderColor-done-emphasis,transparent);color:var(--fgColor-onEmphasis,var(--color-fg-on-emphasis))}.prc-StateLabel-Icon-NuDm4{margin-right:var(--base-size-4,.25rem)}.prc-StateLabel-Icon-NuDm4:where([data-size-small]){width:1em}.shutdown-screen{width:100%;height:100%;background-color:#0a0a0a;display:flex;align-items:center;justify-content:center;font-family:Courier New,Courier,monospace;color:#e0e0e0}.shutdown-content{max-width:600px;padding:20px}.shutdown-log-line{color:#b5cea8;margin-bottom:8px;font-size:.95rem}.shutdown-separator{height:20px}.shutdown-halted{color:#e0e0e0;margin-bottom:20px;font-size:1rem}.shutdown-reboot{color:#4af626;font-size:1rem}.cursor-blink{animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}@media (max-width: 768px){.shutdown-log-line,.shutdown-halted,.shutdown-reboot{font-size:.85rem}}:root{--bg-primary: #0a0a0a;--bg-secondary: #0f0f0f;--text-primary: #e0e0e0;--text-secondary: #808080;--accent-green: #4af626;--accent-cyan: #4ec9b0;--accent-orange: #ce9178;--error-red: #f48771;--success-green: #b5cea8;--info-blue: #9cdcfe;--warning-yellow: #dcdcaa;--border-color: #333;--tab-height: 40px;--spacing-sm: 10px;--spacing-md: 20px;--spacing-lg: 30px;--font-mono: "Courier New", Courier, monospace;--font-size-base: 1rem;--z-base: 1;--z-dropdown: 1000;--z-sticky: 100;--z-modal: 2000;--z-overlay: 2100;--z-popover: 2200;--z-tooltip: 2300}html{height:100%;overscroll-behavior:none;width:100%}@media (min-width: 769px){html{overflow:hidden;position:fixed}body{overflow:hidden}}@media (max-width: 768px){html{overflow:hidden;position:relative}body{overflow:hidden}}body{background-color:#0a0a0a;color:#e0e0e0;font-family:Courier New,Courier,monospace;margin:0;padding:0;font-size:16px;height:100%;overscroll-behavior:none}input,button,textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none}*{scrollbar-width:thin;scrollbar-color:#3a3a3a #1a1a1a}*::-webkit-scrollbar{width:12px;height:12px}*::-webkit-scrollbar-track{background:#1a1a1a;border-radius:10px}*::-webkit-scrollbar-thumb{background:#3a3a3a;border-radius:10px;border:2px solid #1a1a1a}*::-webkit-scrollbar-thumb:hover{background:#4a4a4a}*::-webkit-scrollbar-thumb:active{background:#555555}*::-webkit-scrollbar-corner{background:#1a1a1a}#root{height:100vh;height:100svh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding-bottom:env(safe-area-inset-bottom)}.tab-content{flex-direction:column;flex:1;overflow:hidden;top:0;left:0;right:0;bottom:0}@media (max-width: 768px){.tab-content{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}}@media (max-width: 768px){body{font-size:16px}}@media (max-width: 480px){body{font-size:16px}}
