*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0F0F0F;--surface: #171717;--card: #1C1C1C;--border: #2A2A2A;--text-primary: #F5F5F5;--text-secondary: #888888;--text-tertiary: #4A4A4A;--accent: #34C759;--accent-muted: rgba(52, 199, 89, .15);--accent-red: #FF3B30;--accent-red-muted: rgba(255, 59, 48, .15);--accent-orange: #FF9F0A}html,body,#root{height:100%;background:var(--bg);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input{font-family:inherit;color:inherit}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1) opacity(.4);cursor:pointer}::-webkit-scrollbar{width:0;height:0}.app{display:flex;flex-direction:column;height:100dvh;max-width:430px;margin:0 auto;position:relative;background:var(--bg)}.screen-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-top:env(safe-area-inset-top)}.tab-bar{display:flex;background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);flex-shrink:0}.tab-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;color:var(--text-tertiary);font-size:10px;font-weight:500;letter-spacing:.3px;transition:color .15s}.tab-btn.active{color:var(--accent)}.mockup-carousel{display:flex;gap:16px;overflow-x:auto;padding-left:24px;padding-right:24px;padding-bottom:8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;align-items:flex-end}@media(min-width:700px){.mockup-carousel{overflow-x:visible;justify-content:center;padding-left:24px;padding-right:24px;flex-wrap:nowrap;gap:24px}.mockup-carousel>*{scroll-snap-align:none}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:100;display:flex;align-items:flex-end;justify-content:center}.modal-sheet{background:var(--bg);width:100%;max-width:430px;margin:0 auto;border-radius:16px 16px 0 0;max-height:92dvh;display:flex;flex-direction:column;overflow:hidden;transition:max-height .1s ease-out}.modal-handle{width:36px;height:4px;background:var(--border);border-radius:2px;margin:10px auto 0;flex-shrink:0}.modal-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:16px;padding-bottom:max(40px,env(safe-area-inset-bottom))}
