:root{--primary:#eeb600;--primary-dark:#c99a00;--secondary:#03dac6;--bg:#f5f5f5;--surface:#fff;--on-surface:#1a1a1a;--on-surface-dim:#0009;--on-surface-soft:#00000080;--elevation-1:0 1px 3px #0000001f, 0 1px 2px #00000014;--elevation-2:0 3px 6px #0000001f, 0 2px 4px #00000014;--elevation-4:0 6px 12px #0000001f, 0 4px 6px #00000014;--radius:12px;--radius-sm:8px}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--on-surface);min-height:100vh;padding-bottom:80px;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}.hidden{display:none!important}.container{max-width:1400px;margin:0 auto;padding:0 8px}.icon-btn{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;text-decoration:none;transition:background .2s;display:flex}.icon-btn:hover{background:#ffffff26}.material-icons{text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga";direction:ltr;font-family:Material Icons;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}.circular-progress{border:3px solid #eeb60033;border-top:3px solid var(--primary);border-radius:50%;width:36px;height:36px;animation:.9s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton-card{break-inside:avoid;border-radius:var(--radius);background:linear-gradient(90deg,#eee 25%,#f5f5f5 37%,#eee 63%) 0 0/800px 100%;margin-bottom:15px;animation:1.4s infinite shimmer;overflow:hidden}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.camera-page{z-index:9999;-webkit-user-select:none;user-select:none;background:#fff;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.camera-topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#ffffffeb;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.camera-topbar button{color:#333;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:6px;transition:background .2s;display:flex}.camera-topbar button:active{background:#00000014}.cam-reset-btn{margin-right:4px;color:#ff5252!important}.cam-reset-btn:active{background:#ff52521a!important}.camera-topbar .cam-title{color:#222;letter-spacing:1px;text-transform:uppercase;font-size:15px;font-weight:700}.camera-viewfinder{background:#f0f0f0;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.camera-viewfinder video{object-fit:cover;opacity:0;pointer-events:none;width:100%;height:100%;position:absolute}.camera-viewfinder canvas{object-fit:cover;width:100%;height:100%}.camera-loading{color:#00000073;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex;position:absolute;inset:0}.camera-loading .material-icons{font-size:48px;animation:1.5s ease-in-out infinite cam-pulse}@keyframes cam-pulse{0%,to{opacity:.4}50%{opacity:1}}.camera-error{color:#00000080;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;font-size:14px;display:flex;position:absolute;inset:0}.camera-error .material-icons{color:#ff5252;font-size:56px}.camera-swipe-hud{z-index:12;color:#222;pointer-events:none;background:#ffffffd9;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:8px 10px;animation:.15s hud-fadein;display:flex;position:absolute;box-shadow:0 2px 8px #0000001f}.camera-swipe-hud.left{top:50%;left:12px;transform:translateY(-50%)}.camera-swipe-hud.right{top:50%;right:12px;transform:translateY(-50%)}.camera-swipe-hud.bottom{flex-direction:row;gap:6px;bottom:12px;left:50%;transform:translate(-50%)}.camera-swipe-hud .material-icons{opacity:.7;font-size:18px}.camera-swipe-hud span:last-child{font-variant-numeric:tabular-nums;font-size:14px;font-weight:800}@keyframes hud-fadein{0%{opacity:0;transform:translateY(-50%)scale(.85)}to{opacity:1;transform:translateY(-50%)scale(1)}}.camera-swipe-hud.bottom{animation-name:hud-fadein-bottom}@keyframes hud-fadein-bottom{0%{opacity:0;transform:translate(-50%)scale(.85)}to{opacity:1;transform:translate(-50%)scale(1)}}.camera-filter-strip{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);-webkit-overflow-scrolling:touch;scrollbar-width:none;background:#fffffff2;gap:6px;padding:8px 12px;display:flex;overflow-x:auto}.camera-filter-strip::-webkit-scrollbar{display:none}.filter-chip{cursor:pointer;background:#0000000a;border:2px solid #0000;border-radius:12px;flex-direction:column;flex-shrink:0;align-items:center;gap:3px;min-width:56px;padding:6px 10px;transition:all .2s;display:flex}.filter-chip .material-icons{color:#00000080;font-size:20px}.filter-chip span:last-child{color:#00000073;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;font-size:9px;font-weight:600}.filter-chip.active{background:#00000014;border-color:#222}.filter-chip.active .material-icons,.filter-chip.active span:last-child{color:#222}.filter-chip:active{transform:scale(.93)}.camera-controls{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;justify-content:space-around;align-items:center;padding:12px 24px 20px;display:flex}.cam-btn-secondary{color:#333;cursor:pointer;background:#0000000f;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex}.cam-btn-secondary:active{background:#00000024;transform:scale(.9)}.cam-capture-btn{cursor:pointer;background:0 0;border:4px solid #222;border-radius:50%;justify-content:center;align-items:center;width:68px;height:68px;transition:all .15s;display:flex;position:relative}.cam-capture-btn:after{content:"";background:#222;border-radius:50%;width:54px;height:54px;transition:all .15s;display:block}.cam-capture-btn:active{transform:scale(.9)}.cam-capture-btn:active:after{background:#444}.cam-capture-btn.capturing:after{background:#ff5252}.camera-flash{z-index:100;pointer-events:none;background:#fff;animation:.3s ease-out forwards cam-flash;position:absolute;inset:0}@keyframes cam-flash{0%{opacity:.9}to{opacity:0}}.camera-toast{color:#222;z-index:200;pointer-events:none;white-space:nowrap;background:#fffffff2;border-radius:20px;padding:10px 16px;font-size:13px;font-weight:600;animation:1.8s forwards cam-toast;position:fixed;bottom:120px;left:50%;transform:translate(-50%);box-shadow:0 2px 16px #00000024}@keyframes cam-toast{0%{opacity:0;transform:translate(-50%)translateY(10px)}15%{opacity:1;transform:translate(-50%)translateY(0)}75%{opacity:1}to{opacity:0}}.cam-thumb-preview{z-index:180;pointer-events:auto;cursor:pointer;border:2px solid #fff;border-radius:10px;width:56px;height:56px;animation:3s forwards thumb-pop;position:fixed;bottom:100px;left:16px;overflow:hidden;box-shadow:0 4px 16px #0000002e}.cam-save-indicator{color:#fff;opacity:0;background:#0006;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.cam-thumb-preview:active .cam-save-indicator{opacity:1}.cam-save-indicator .material-icons{font-size:20px}.cam-thumb-preview img{object-fit:cover;width:100%;height:100%}@keyframes thumb-pop{0%{opacity:0;transform:scale(.5)}10%{opacity:1;transform:scale(1)}80%{opacity:1}to{opacity:0;transform:scale(.8)translateY(8px)}}.camera-grid{pointer-events:none;z-index:5;position:absolute;inset:0}.camera-grid:before,.camera-grid:after{content:"";position:absolute}.camera-grid:before{border-left:1px solid #0000001a;border-right:1px solid #0000001a;inset:0 33.33%}.camera-grid:after{border-top:1px solid #0000001a;border-bottom:1px solid #0000001a;inset:33.33% 0}.camera-timer-display{color:#222;text-shadow:0 4px 20px #0000001a;z-index:60;pointer-events:none;font-size:72px;font-weight:900;animation:.5s cam-timer-pop;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes cam-timer-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(2)}50%{opacity:1;transform:translate(-50%,-50%)scale(.9)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.camera-zoom{color:#222;z-index:8;pointer-events:none;background:#fffc;border-radius:10px;padding:3px 10px;font-size:11px;font-weight:700;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.camera-aspect-label{color:#00000080;z-index:8;pointer-events:none;letter-spacing:.5px;background:#ffffffbf;border-radius:6px;padding:2px 8px;font-size:10px;font-weight:700;position:absolute;top:8px;right:8px}.camera-save-popup-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:500;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.2s popup-fadein;display:flex;position:fixed;inset:0}@keyframes popup-fadein{0%{opacity:0}to{opacity:1}}.camera-save-popup{text-align:center;background:#fff;border-radius:24px;flex-direction:column;align-items:center;width:100%;max-width:320px;padding:20px;animation:.3s cubic-bezier(.175,.885,.32,1.275) popup-scale;display:flex;box-shadow:0 10px 40px #0003}@keyframes popup-scale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.camera-save-popup img{object-fit:cover;border-radius:16px;width:100%;max-height:280px;margin-bottom:16px;box-shadow:0 4px 12px #0000001a}.camera-save-popup h3{color:#222;margin:0 0 8px;font-size:18px;font-weight:700}.camera-save-popup p{color:#666;margin:0 0 20px;font-size:13px;line-height:1.4}.camera-save-actions{gap:12px;width:100%;display:flex}.camera-save-actions button{cursor:pointer;border:none;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:6px;padding:12px;font-size:15px;font-weight:600;transition:all .2s;display:flex}.camera-save-actions button:active{transform:scale(.96)}.camera-save-actions .cancel-btn{color:#555;background:#f0f0f0}.camera-save-actions .save-btn{color:#fff;background:#222}.camera-save-actions .save-btn .material-icons{font-size:18px}@keyframes install-pulse{0%{filter:drop-shadow(0 0 2px gold);transform:scale(1)}50%{filter:drop-shadow(0 0 10px gold);transform:scale(1.15)}to{filter:drop-shadow(0 0 2px gold);transform:scale(1)}}.install-btn-pulse{animation:2s ease-in-out infinite install-pulse}:root{--primary:#eeb600;--primary-light:#ffce2e;--primary-dark:#c99a00;--bg:#000;--surface:#1a1a1a;--on-surface:#fff;--on-surface-soft:#aaa;--radius-lg:24px;--radius-md:16px}body{background-color:var(--bg);margin:0;padding:0;overflow:hidden}.app-shell{flex-direction:column;min-height:100vh;display:flex}
