.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-40px;left:0;background:#8b5cf6;color:#fff;padding:8px 16px;z-index:10000;text-decoration:none;font-weight:500;border-radius:0 0 4px;transition:top .15s ease}.skip-link:focus{top:0}*:focus-visible{outline:1px solid #8b5cf6;outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),textarea:focus:not(:focus-visible),select:focus:not(:focus-visible){outline:none}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:1px solid #8b5cf6;outline-offset:2px;border-color:#8b5cf6}@media (prefers-color-scheme: dark){*:focus-visible{outline-color:#9d75f8}input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#9d75f8;border-color:#9d75f8}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{touch-action:manipulation}body{margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@viewport{width:device-width;initial-scale:1}@media (max-width: 768px){.product-grid{grid-template-columns:1fr!important}.chat-container{flex-direction:column!important}.deliverables-sidebar{position:fixed!important;bottom:0!important;left:0!important;right:0!important;width:100%!important;max-width:100%!important;max-height:70vh!important;border-radius:12px 12px 0 0!important;z-index:100!important}.mobile-header{padding:12px 16px!important}.input-area{position:sticky!important;bottom:0!important;padding:12px 16px!important}.deliverables-bar{padding:12px 16px!important}.messages-area{padding:16px!important}}@media (max-width: 480px){.mobile-header,.input-area{padding:10px 12px!important}.messages-area{padding:12px!important}.inline-card-buttons{flex-wrap:wrap!important;gap:6px!important}}@media (pointer: coarse){button,input[type=submit],.touch-target{min-height:44px;min-width:44px}a,.clickable{padding:8px;margin:-8px}}html,body{overflow-x:hidden}html{scroll-behavior:smooth}@supports (padding: max(0px)){.input-area{padding-bottom:max(16px,env(safe-area-inset-bottom))!important}.mobile-header{padding-top:max(12px,env(safe-area-inset-top))!important}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.bottom-sheet-enter{animation:slideUp .3s ease-out}.mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:99}.mermaid-diagram{display:flex;justify-content:center;margin:16px 0;overflow-x:auto;padding:16px;background:#8b5cf608;border-radius:6px;border:1px solid rgba(139,92,246,.1)}.mermaid-diagram svg{max-width:100%;height:auto}@media (max-width: 768px){.mermaid-diagram{padding:12px;margin:12px 0}.mermaid-diagram svg{min-width:300px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes glow{0%,to{box-shadow:0 0 #7c3aed66}50%{box-shadow:0 0 0 8px #7c3aed00}}@keyframes typingDot{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .2s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .25s ease-out forwards}.animate-fade-in-scale{animation:fadeInScale .2s ease-out forwards}.animate-slide-in-right{animation:slideInRight .25s ease-out forwards}.animate-slide-in-left{animation:slideInLeft .25s ease-out forwards}.animate-pulse{animation:pulse .3s ease-in-out}.animate-shake{animation:shake .4s ease-in-out}.animate-bounce{animation:bounce .5s ease-in-out}.animate-glow{animation:glow 1.5s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.typing-dot{animation:typingDot 1.4s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}.skeleton-shimmer{background:linear-gradient(90deg,#fff0,#ffffff1a,#fff0);background-size:200% 100%;animation:shimmer 1.5s infinite}.transition-all{transition:all .15s ease}.transition-colors{transition:color .15s ease,background-color .15s ease,border-color .15s ease}.transition-transform{transition:transform .15s ease}.transition-opacity{transition:opacity .15s ease}.transition-shadow{transition:box-shadow .15s ease}.transition-slow{transition:all .3s ease}.transition-fast{transition:all .1s ease}.hover-lift{transition:transform .15s ease,box-shadow .15s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.hover-scale{transition:transform .15s ease}.hover-scale:hover{transform:scale(1.02)}.hover-brighten{transition:filter .15s ease}.hover-brighten:hover{filter:brightness(1.1)}.hover-glow{transition:box-shadow .15s ease}.hover-glow:hover{box-shadow:0 0 0 3px #7c3aed33}.press-scale{transition:transform .1s ease}.press-scale:active{transform:scale(.97)}.interactive{transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}.interactive:hover{transform:translateY(-1px)}.interactive:active{transform:translateY(0) scale(.98)}.message-enter{animation:fadeInUp .25s ease-out forwards}.message-highlight{animation:glow 1s ease-out forwards}.deliverable-enter{animation:slideInRight .3s ease-out forwards}.deliverable-updated{animation:pulse .3s ease-out}.btn-ripple{position:relative;overflow:hidden}.btn-ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);opacity:0}.btn-ripple:active:after{width:200px;height:200px;opacity:0;transition:width .3s ease,height .3s ease,opacity .3s ease}.modal-backdrop-enter{animation:fadeIn .2s ease-out forwards}.modal-content-enter{animation:fadeInScale .2s ease-out forwards}.panel-slide-in{animation:slideInRight .25s ease-out forwards}.bottom-sheet-slide{animation:slideUp .3s ease-out forwards}.toast-enter{animation:slideInRight .3s ease-out forwards}.toast-exit{animation:fadeIn .2s ease-out reverse forwards}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-spin{animation:none!important}}
