*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.absolute{position:absolute}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.min-h-screen{min-height:100vh}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.px-4{padding-left:1rem;padding-right:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}:root{--camera-body: #e8e0d4;--camera-body-dark: #c9bfb0;--camera-top: #2c2c2c;--lens-ring: #1a1a1a;--shutter-red: #cc2233;--shutter-red-dark: #991122;--polaroid-white: #f5f2ed;--polaroid-shadow: rgba(0, 0, 0, .25);--wood-bg: #8b7355;--wood-bg-dark: #6b5640}*{margin:0;padding:0;box-sizing:border-box}html,body,#app{height:100%}body{min-height:100vh;overflow-x:hidden;font-family:SimSun,宋体,STSong,"Noto Serif CJK SC",serif;background-color:var(--wood-bg);background-image:repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(0,0,0,.03) 2px,rgba(0,0,0,.03) 4px),repeating-linear-gradient(0deg,transparent,transparent 40px,rgba(0,0,0,.05) 40px,rgba(0,0,0,.05) 42px),linear-gradient(180deg,#9b8567,#7a6348,#8b7355)}.camera-body{position:relative;width:380px;height:500px;border-radius:20px;background:linear-gradient(165deg,#f0e8dc,#e8e0d4 30%,#d4c8b8 70%,#c9bfb0);box-shadow:0 15px 40px #0006,0 5px 15px #0003,inset 0 1px #ffffff80,inset 0 -2px 4px #0000001a;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .3s ease}.camera-body:hover{transform:translateY(-2px)}.camera-top{position:absolute;top:0;left:0;right:0;height:120px;border-radius:20px 20px 0 0;background:linear-gradient(180deg,#3a3a3a,#2c2c2c);box-shadow:inset 0 1px #ffffff1a,0 2px 4px #0000004d}.rainbow-stripe{position:absolute;top:115px;left:0;right:0;height:8px;display:flex;overflow:hidden;border-radius:0}.rainbow-stripe div{flex:1;height:100%}.viewfinder{position:absolute;top:18px;left:50%;transform:translate(-50%);width:50px;height:36px;border-radius:6px;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border:2px solid #555;box-shadow:inset 0 2px 6px #000c,0 1px #ffffff1a}.viewfinder:after{content:"";position:absolute;top:6px;left:6px;width:14px;height:10px;border-radius:3px;background:radial-gradient(circle,#6496ff4d,#32509680);border:1px solid rgba(255,255,255,.15)}.flash-unit{position:absolute;top:20px;left:30px;width:42px;height:32px;border-radius:6px;background:linear-gradient(135deg,#d4d4d4,#a0a0a0);border:2px solid #888;box-shadow:inset 0 1px #fff9,0 1px 3px #0000004d}.flash-unit:after{content:"";position:absolute;inset:4px;border-radius:3px;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(0,0,0,.1) 2px,rgba(0,0,0,.1) 4px)}.flash-unit.firing:after{background:radial-gradient(circle,rgba(255,255,230,.9) 0%,rgba(255,255,200,.5) 50%,transparent 70%);animation:flashFire .3s ease-out}@keyframes flashFire{0%{opacity:1;background:radial-gradient(circle,#fffbe6 0%,rgba(255,255,200,.8) 50%,transparent 70%)}to{opacity:1}}.brand-logo{position:absolute;top:25px;right:25px;color:#ffffffb3;font-size:14px;font-weight:700;font-style:italic;letter-spacing:2px;text-shadow:0 1px 2px rgba(0,0,0,.5)}.lens-area{position:absolute;top:140px;left:50%;transform:translate(-50%);width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,#111 30%,#1a1a1a 60%,#2a2a2a,#333);border:6px solid #444;box-shadow:0 4px 15px #00000080,inset 0 2px 8px #000c,0 0 0 3px #555,0 0 0 6px #333;overflow:hidden}.lens-inner{position:absolute;inset:15px;border-radius:50%;overflow:hidden;background:#000;border:3px solid #222;box-shadow:inset 0 0 20px #000c}.lens-inner video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transform:scaleX(-1)}.lens-reflection{position:absolute;top:20px;left:25px;width:60px;height:40px;border-radius:50%;background:linear-gradient(135deg,rgba(255,255,255,.25) 0%,transparent 70%);pointer-events:none;z-index:5}.lens-ring-mark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:140px;height:140px;border-radius:50%;border:2px solid rgba(255,255,255,.08);pointer-events:none;z-index:5}.shutter-btn{position:absolute;top:50px;right:-28px;width:56px;height:56px;border-radius:50%;background:linear-gradient(145deg,#dd3344 0%,var(--shutter-red) 40%,var(--shutter-red-dark) 100%);border:3px solid #aa1122;box-shadow:0 4px 10px #0006,inset 0 1px #ffffff4d,inset 0 -2px 4px #0000004d;cursor:pointer;transition:all .15s ease;z-index:10;outline:none}.shutter-btn:hover{background:linear-gradient(145deg,#ee4455 0%,#dd3344 40%,var(--shutter-red) 100%);box-shadow:0 6px 15px #00000080,inset 0 1px #ffffff4d,0 0 15px #cc22334d}.shutter-btn:active{transform:scale(.88);box-shadow:0 2px 5px #0006,inset 0 2px 4px #0006}.shutter-btn-inner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:30px;height:30px;border-radius:50%;border:2px solid rgba(255,255,255,.2);background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%)}.shutter-btn.firing{animation:shutterPulse .3s ease-out}@keyframes shutterPulse{0%{box-shadow:0 4px 10px #0006,inset 0 1px #ffffff4d,0 0 #ffffff80}50%{box-shadow:0 4px 10px #0006,inset 0 1px #ffffff4d,0 0 0 12px #fff0}to{box-shadow:0 4px 10px #0006,inset 0 1px #ffffff4d,0 0 #fff0}}.photo-slot{position:absolute;bottom:15px;left:50%;transform:translate(-50%);width:260px;height:12px;border-radius:3px;background:linear-gradient(180deg,#1a1a1a,#2a2a2a,#1a1a1a);box-shadow:inset 0 2px 4px #000c,0 1px #ffffff26}.hinge{position:absolute;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#999,#666 60%,#444);border:1px solid #555;box-shadow:0 1px 3px #0006}.hinge-left{left:15px;top:125px}.hinge-right{right:15px;top:125px}.mode-dial{position:absolute;top:10px;left:50%;transform:translate(-50%);width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 40% 40%,#777,#444 80%);border:2px solid #555;box-shadow:0 2px 5px #00000080}.mode-dial:after{content:"";position:absolute;top:3px;left:50%;transform:translate(-50%);width:2px;height:8px;background:#ccc;border-radius:1px}.flash-overlay{position:fixed;inset:0;background:#fff;z-index:100;pointer-events:none;animation:flashAnim .6s ease-out forwards}@keyframes flashAnim{0%{opacity:.95}20%{opacity:.7}to{opacity:0}}.polaroid-printing{position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:240px;animation:polaroidSlideOut 2s cubic-bezier(.22,1,.36,1) forwards;z-index:20}@keyframes polaroidSlideOut{0%{transform:translate(-50%) translateY(0);opacity:0}15%{opacity:1}to{transform:translate(-50%) translateY(320px);opacity:1}}.polaroid-card{background:var(--polaroid-white);padding:12px 12px 44px;box-shadow:0 4px 15px var(--polaroid-shadow),0 1px 3px #00000026,inset 0 0 30px #00000005;position:relative}.polaroid-card:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 1px,rgba(0,0,0,.003) 1px,rgba(0,0,0,.003) 2px);pointer-events:none;border-radius:inherit}.polaroid-card img{width:100%;display:block;background:#e0dcd6}.polaroid-card .photo-reveal{animation:photoReveal 3s ease-out forwards}@keyframes photoReveal{0%{filter:brightness(2.2) contrast(.2) saturate(0);opacity:.4}20%{filter:brightness(1.8) contrast(.4) saturate(.1);opacity:.6}40%{filter:brightness(1.4) contrast(.6) saturate(.4);opacity:.8}65%{filter:brightness(1.1) contrast(.85) saturate(.75);opacity:.95}to{filter:brightness(1) contrast(1) saturate(1);opacity:1}}.polaroid-card .caption{position:absolute;bottom:10px;left:12px;right:12px;text-align:center;font-family:Comic Sans MS,Brush Script MT,cursive;font-size:11px;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gallery-area{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;padding:30px 20px;max-width:900px;margin:0 auto}.gallery-item{cursor:pointer;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,z-index 0s;transform:rotate(var(--rotation, 0deg));position:relative;animation:galleryItemIn .5s cubic-bezier(.34,1.56,.64,1) both}@keyframes galleryItemIn{0%{opacity:0;transform:rotate(var(--rotation, 0deg)) translateY(30px) scale(.8)}to{opacity:1;transform:rotate(var(--rotation, 0deg)) translateY(0) scale(1)}}.gallery-item:hover{transform:rotate(0) scale(1.1) translateY(-8px);box-shadow:0 16px 35px #00000059,0 6px 12px #0003;z-index:10}.gallery-item .gallery-delete-btn{position:absolute;top:-6px;right:-6px;width:24px;height:24px;border-radius:50%;background:#f44336;border:2px solid #d32f2f;color:#fff;font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:scale(.6);transition:all .2s ease;z-index:15;box-shadow:0 2px 8px #f4433666}.gallery-item:hover .gallery-delete-btn{opacity:1;transform:scale(1)}.gallery-item .gallery-delete-btn:hover{background:#ff5252;transform:scale(1.15)}.gallery-item .polaroid-card{width:160px;padding:8px 8px 30px}.gallery-item .polaroid-card img{aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover}.photo-viewer{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-out}.photo-viewer-backdrop{position:absolute;inset:0;background:#000000d9;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.photo-viewer-content{position:relative;z-index:1;animation:viewerPopIn .4s cubic-bezier(.34,1.56,.64,1)}.photo-viewer .polaroid-card{width:380px;max-width:85vw;padding:18px 18px 55px}.photo-viewer .polaroid-card img{aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover}@keyframes viewerPopIn{0%{transform:scale(.7) rotate(-5deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.photo-viewer.closing .photo-viewer-content{animation:viewerPopOut .25s ease-in forwards}.photo-viewer.closing .photo-viewer-backdrop{animation:fadeOut .25s ease-in forwards}@keyframes viewerPopOut{0%{transform:scale(1) rotate(0);opacity:1}to{transform:scale(.8) rotate(3deg);opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.viewer-actions{display:flex;gap:12px;margin-top:20px;justify-content:center;flex-wrap:wrap}.viewer-btn{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;border-radius:25px;font-size:14px;font-family:inherit;cursor:pointer;transition:all .2s ease;color:#fff;letter-spacing:.5px}.viewer-btn-save{background:linear-gradient(135deg,#4caf50,#45a049);box-shadow:0 3px 10px #4caf504d}.viewer-btn-save:hover{background:linear-gradient(135deg,#5cbf60,#4caf50);transform:translateY(-2px);box-shadow:0 6px 15px #4caf5066}.viewer-btn-delete{background:linear-gradient(135deg,#f44336,#d32f2f);box-shadow:0 3px 10px #f443364d}.viewer-btn-delete:hover{background:linear-gradient(135deg,#ff5252,#f44336);transform:translateY(-2px);box-shadow:0 6px 15px #f4433666}.viewer-btn-close{background:linear-gradient(135deg,#666,#555);box-shadow:0 3px 10px #0003}.viewer-btn-close:hover{background:linear-gradient(135deg,#777,#666);transform:translateY(-2px)}.viewer-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:#ffffff1a;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:2}.viewer-nav-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-50%) scale(1.1)}.viewer-nav-prev{left:-60px}.viewer-nav-next{right:-60px}.camera-status{position:absolute;top:85px;left:50%;transform:translate(-50%);font-size:10px;color:#555;letter-spacing:1px;text-transform:uppercase;font-family:Arial,sans-serif;white-space:nowrap;transition:color .3s ease}.camera-status.active{color:#4a7c59}.led-indicator{position:absolute;top:22px;right:80px;width:8px;height:8px;border-radius:50%;background:#333;border:1px solid #222;transition:all .3s ease}.led-indicator.active{background:#4caf50;box-shadow:0 0 6px #4caf50,0 0 12px #4caf5066;animation:ledPulse 2s ease-in-out infinite}@keyframes ledPulse{0%,to{box-shadow:0 0 6px #4caf50,0 0 12px #4caf5066}50%{box-shadow:0 0 8px #4caf50,0 0 18px #4caf5099}}.lens-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#555;font-size:11px;text-align:center;border-radius:50%;background:radial-gradient(circle,#222,#111);transition:opacity .3s ease}.lens-placeholder svg{margin-bottom:6px;opacity:.4}.start-camera-btn{padding:12px 32px;border:none;border-radius:30px;font-size:15px;font-family:inherit;cursor:pointer;background:linear-gradient(135deg,#2c2c2c,#1a1a1a);color:#f0e8dc;box-shadow:0 4px 15px #0000004d;transition:all .3s ease;letter-spacing:1px}.start-camera-btn:hover{background:linear-gradient(135deg,#3a3a3a,#2c2c2c);transform:translateY(-2px);box-shadow:0 6px 20px #0006}.start-camera-btn:active{transform:translateY(0)}.empty-gallery{text-align:center;padding:40px 20px;color:#fff6;font-style:italic;font-size:14px}.photo-counter{position:absolute;top:88px;right:25px;font-family:Courier New,monospace;font-size:11px;color:#00000059;letter-spacing:1px;transition:color .3s ease}.hint-text{color:#ffffff73;font-size:13px;font-style:italic;letter-spacing:1px;animation:hintPulse 3s ease-in-out infinite}@keyframes hintPulse{0%,to{opacity:.45}50%{opacity:.7}}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%) translateY(20px);padding:12px 24px;border-radius:25px;font-size:14px;font-family:Arial,sans-serif;color:#fff;z-index:300;opacity:0;animation:toastIn .3s ease-out forwards;pointer-events:none;white-space:nowrap}.toast-success{background:#4caf50e6;box-shadow:0 4px 15px #4caf504d}.toast-info{background:#4285f4e6;box-shadow:0 4px 15px #4285f44d}.toast-warning{background:#ff9800e6;box-shadow:0 4px 15px #ff98004d}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toastOut{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-10px)}}.confirm-dialog{position:fixed;inset:0;z-index:250;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}.confirm-dialog-backdrop{position:absolute;inset:0;background:#0009}.confirm-dialog-content{position:relative;z-index:1;background:#fff;border-radius:16px;padding:28px;max-width:340px;width:90vw;text-align:center;box-shadow:0 20px 60px #0000004d;animation:viewerPopIn .3s cubic-bezier(.34,1.56,.64,1)}.confirm-dialog-content h3{font-size:18px;color:#333;margin-bottom:8px}.confirm-dialog-content p{font-size:14px;color:#777;margin-bottom:24px;line-height:1.5}.confirm-dialog-actions{display:flex;gap:12px;justify-content:center}.confirm-btn{padding:10px 24px;border:none;border-radius:25px;font-size:14px;font-family:inherit;cursor:pointer;transition:all .2s ease;color:#fff}.confirm-btn-cancel{background:#999}.confirm-btn-cancel:hover{background:#aaa}.confirm-btn-delete{background:linear-gradient(135deg,#f44336,#d32f2f)}.confirm-btn-delete:hover{background:linear-gradient(135deg,#ff5252,#f44336)}@media(max-width:480px){.camera-body{width:300px;height:420px}.camera-top{height:100px}.lens-area{top:120px;width:180px;height:180px}.lens-inner{inset:12px}.rainbow-stripe{top:96px;height:6px}.shutter-btn{top:40px;right:-22px;width:46px;height:46px}.shutter-btn-inner{width:24px;height:24px}.photo-slot{width:200px}.polaroid-printing{width:190px}.gallery-item .polaroid-card{width:130px;padding:6px 6px 25px}.photo-viewer .polaroid-card{width:300px}.viewer-nav-prev{left:10px}.viewer-nav-next{right:10px}.camera-status{top:72px}.photo-counter{top:74px;right:15px}.hinge-left{left:10px;top:104px}.hinge-right{right:10px;top:104px}.hinge{width:12px;height:12px}}.shortcut-hint{position:fixed;bottom:12px;right:16px;font-size:11px;color:#ffffff40;font-family:Arial,sans-serif;letter-spacing:.5px}.shortcut-hint kbd{display:inline-block;padding:1px 5px;border-radius:3px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);font-family:inherit;font-size:10px}.storage-toggle{display:flex;align-items:center;gap:10px}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;inset:0;background:#555;border-radius:24px;transition:background .3s ease;box-shadow:inset 0 2px 4px #0000004d}.toggle-slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:0 1px 3px #0000004d}.toggle-switch input:checked+.toggle-slider{background:#3498db}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-label{font-family:Arial,sans-serif;font-size:12px;color:#fff9;letter-spacing:.5px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.gallery-tabs{display:flex;justify-content:center;gap:4px;margin-bottom:24px;background:#0003;border-radius:12px;padding:4px;max-width:400px;margin-left:auto;margin-right:auto}.gallery-tab{flex:1;padding:10px 20px;border:none;background:transparent;color:#ffffff80;font-family:Arial,sans-serif;font-size:13px;letter-spacing:.5px;cursor:pointer;border-radius:10px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:6px}.gallery-tab:hover{color:#ffffffb3;background:#ffffff0d}.gallery-tab.active{color:#fff;background:#ffffff1f;box-shadow:0 2px 8px #00000026}.storage-indicator{position:absolute;top:6px;left:6px;width:20px;height:20px;border-radius:50%;background:#0006;display:flex;align-items:center;justify-content:center;color:#ffffff4d;transition:all .3s ease;z-index:2}.storage-indicator.uploaded{background:#3498dbb3;color:#fff}.storage-indicator svg{display:block}.gallery-upload-btn{position:absolute;bottom:6px;right:6px;width:26px;height:26px;border-radius:50%;border:none;background:#3498dbbf;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.8);transition:all .25s ease;z-index:2;padding:0}.gallery-item:hover .gallery-upload-btn{opacity:1;transform:scale(1)}.gallery-upload-btn:hover{background:#3498db;transform:scale(1.15)!important}.gallery-upload-btn:active{transform:scale(.95)!important}.cloud-loading-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-top:3px solid rgba(52,152,219,.7);border-radius:50%;animation:cloudSpin .8s linear infinite;margin:0 auto 12px}@keyframes cloudSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cloud-item .polaroid-card img{min-height:120px;background:#e0e0e0}.welcome-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);position:relative;overflow:hidden}.welcome-particles{position:absolute;inset:0;pointer-events:none}@keyframes floatUp{0%{transform:translateY(0) scale(1);opacity:0}10%{opacity:.6}90%{opacity:.1}to{transform:translateY(-100vh) scale(.3);opacity:0}}.welcome-content{position:relative;z-index:1;text-align:center;padding:40px 20px;max-width:700px;width:100%}.welcome-header{margin-bottom:48px}.welcome-title{font-family:Georgia,serif;font-size:52px;font-weight:700;color:#fff;letter-spacing:4px;margin-bottom:12px;text-shadow:0 4px 20px rgba(0,0,0,.3)}.welcome-subtitle{font-size:16px;color:#ffffff80;letter-spacing:6px;text-transform:uppercase}.welcome-cards{display:flex;flex-direction:column;gap:20px}.welcome-card{display:flex;align-items:center;gap:20px;padding:28px 32px;background:#ffffff0f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:20px;cursor:pointer;transition:all .4s cubic-bezier(.16,1,.3,1);text-align:left;width:100%;color:#fff;position:relative;overflow:hidden}.welcome-card:before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .4s;border-radius:20px}.camera-card:before{background:linear-gradient(135deg,#cc223326,#e8e0d41a)}.trip-card:before{background:linear-gradient(135deg,#3498db26,#2ecc711a)}.welcome-card:hover{transform:translateY(-4px) scale(1.01);border-color:#ffffff40;box-shadow:0 12px 40px #0000004d}.welcome-card:hover:before{opacity:1}.card-icon{flex-shrink:0;width:80px;height:80px;border-radius:18px;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.camera-card .card-icon{background:linear-gradient(135deg,#c23,#e8e0d4)}.trip-card .card-icon{background:linear-gradient(135deg,#3498db,#2ecc71)}.chat-card:before{background:linear-gradient(135deg,#9b59b626,#3498db1a)}.chat-card{text-decoration:none;cursor:pointer}.chat-card .card-icon{background:linear-gradient(135deg,#9b59b6,#3498db)}.earth-card:before{background:linear-gradient(135deg,#4caf5026,#8bc34a1a)}.earth-card{text-decoration:none;cursor:pointer}.earth-card .card-icon{background:linear-gradient(135deg,#4caf50,#8bc34a)}.card-badge{display:inline-block;margin-top:6px;padding:2px 10px;border-radius:10px;font-size:11px;font-weight:600;color:#9b59b6;background:#9b59b61f;border:1px solid rgba(155,89,182,.25)}.card-content{flex:1;position:relative;z-index:1}.card-title{font-family:Georgia,serif;font-size:22px;font-weight:600;margin-bottom:6px;letter-spacing:1px}.card-desc{font-size:14px;color:#ffffff8c;line-height:1.5}.card-arrow{flex-shrink:0;opacity:.3;transition:all .3s;position:relative;z-index:1}.welcome-card:hover .card-arrow{opacity:.8;transform:translate(4px)}.welcome-footer{margin-top:60px;color:#fff3;font-size:13px;letter-spacing:2px}.trip-page{min-height:100vh;background:linear-gradient(135deg,#0c1220,#1a2332,#0d1b2a);padding-bottom:80px;position:relative}.trip-back-btn{position:fixed;top:20px;left:20px;z-index:100;background:#ffffff1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:8px 16px;color:#ffffffbf;cursor:pointer;font-size:14px;transition:all .2s;display:flex;align-items:center;gap:4px}.trip-back-btn:hover{background:#fff3;color:#fff}.trip-header{padding:40px 24px 0}.trip-header-content{max-width:800px;margin:0 auto;display:flex;align-items:center;gap:16px}.trip-logo{width:56px;height:56px;background:linear-gradient(135deg,#3498db,#2ecc71);border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.trip-title{font-family:Georgia,serif;font-size:28px;font-weight:700;color:#fff;letter-spacing:1px}.trip-subtitle{font-size:13px;color:#fff6;letter-spacing:2px}.trip-token-badge{margin-left:auto;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:6px 14px;font-size:13px;color:#ffffffb3;display:flex;align-items:center;gap:6px;flex-shrink:0}.trip-token-badge svg{color:#2ecc71}.trip-token-badge span{font-weight:700;color:#2ecc71}.trip-search{padding:32px 24px 0}.search-card{max-width:800px;margin:0 auto;background:#ffffff0d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:28px 32px}.search-title{font-size:18px;font-weight:600;color:#ffffffd9;margin-bottom:20px;display:flex;align-items:center;gap:8px}.search-form{display:flex;flex-direction:column;gap:16px}.search-input-group{display:flex;flex-direction:column;gap:6px;flex:1}.search-input-group label{font-size:12px;color:#ffffff73;letter-spacing:1px;text-transform:uppercase}.search-input-group input{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px 16px;color:#fff;font-size:15px;outline:none;transition:all .2s}.search-input-group input:focus{border-color:#3498db;background:#ffffff14}.search-input-group input::-moz-placeholder{color:#ffffff40}.search-input-group input::placeholder{color:#ffffff40}.search-date-group{display:flex;gap:16px}.search-actions{display:flex;gap:12px;margin-top:4px}.btn-search,.btn-generate{display:flex;align-items:center;gap:8px;padding:12px 24px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-search{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#fffc}.btn-search:hover{background:#ffffff2e;color:#fff}.btn-generate{background:linear-gradient(135deg,#3498db,#2ecc71);color:#fff;position:relative}.btn-generate:hover{transform:translateY(-1px);box-shadow:0 4px 16px #3498db66}.token-cost{font-size:11px;font-weight:400;opacity:.7;background:#0003;padding:2px 8px;border-radius:8px}.trip-content{padding:32px 24px;max-width:800px;margin:0 auto}.empty-state{text-align:center;padding:60px 20px;color:#ffffff4d}.empty-state p{margin-top:16px;font-size:16px}.empty-hint{font-size:13px!important;color:#fff3}.guide-list{display:flex;flex-direction:column;gap:16px}.guide-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:24px;transition:all .3s;cursor:default}.guide-card:hover{background:#ffffff14;border-color:#ffffff1f}.guide-card-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.guide-card-dest{font-family:Georgia,serif;font-size:20px;font-weight:600;color:#fff}.guide-ai-badge,.guide-user-badge{font-size:11px;padding:3px 10px;border-radius:8px;font-weight:600;letter-spacing:.5px}.guide-ai-badge{background:#3498db33;color:#5dade2}.guide-user-badge{background:#2ecc7133;color:#58d68d}.guide-card-meta{display:flex;gap:16px;font-size:12px;color:#ffffff59;margin-bottom:12px}.guide-card-preview{font-size:14px;color:#ffffff8c;line-height:1.6;margin-bottom:12px}.btn-read-more{font-size:13px;color:#3498db;background:none;border:none;cursor:pointer;padding:4px 0;font-weight:600;transition:color .2s}.btn-read-more:hover{color:#5dade2}.guide-detail{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:32px}.guide-detail-header{margin-bottom:24px}.guide-detail-header h2{font-family:Georgia,serif;font-size:26px;color:#fff;margin-top:12px}.guide-detail-meta{display:flex;gap:16px;font-size:13px;color:#fff6;margin-top:8px;align-items:center}.guide-detail-body{color:#fffc;line-height:1.8;font-size:15px}.guide-detail-body h1{font-size:22px;color:#fff;margin:24px 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.guide-detail-body h2{font-size:20px;color:#fff;margin:20px 0 10px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.08)}.guide-detail-body h3{font-size:17px;color:#ffffffe6;margin:16px 0 8px}.guide-detail-body ul{padding-left:20px;margin:8px 0}.guide-detail-body li{margin:4px 0;color:#ffffffb3}.guide-detail-body strong{color:#fff}.guide-detail-body p{margin:8px 0}.btn-back{display:flex;align-items:center;gap:4px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:6px 14px;color:#fff9;font-size:13px;cursor:pointer;transition:all .2s}.btn-back:hover{background:#ffffff26;color:#fff}.generating-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#f39c12;background:#f39c1226;padding:4px 12px;border-radius:8px;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.guide-stream-content{min-height:200px}.streaming-cursor{display:inline-block;animation:blink .8s infinite;color:#3498db;font-weight:700}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.guide-luggage-section{margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}.guide-luggage-section h3{display:flex;align-items:center;gap:8px;color:#f39c12;font-size:18px;margin-bottom:12px}.btn-submit-float{position:fixed;bottom:30px;right:30px;width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#3498db,#2ecc71);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #3498db66;transition:all .3s;z-index:50}.btn-submit-float:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 6px 24px #3498db80}.modal-overlay{position:fixed;inset:0;z-index:200;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px}.modal-card{background:#1e2a3a;border:1px solid rgba(255,255,255,.1);border-radius:20px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.08)}.modal-header h2{font-size:18px;color:#fff;font-weight:600}.modal-close{background:none;border:none;color:#fff6;font-size:24px;cursor:pointer;padding:4px 8px;line-height:1}.modal-close:hover{color:#fff}.modal-body{padding:24px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:12px;color:#ffffff73;margin-bottom:6px;letter-spacing:.5px;text-transform:uppercase}.form-group input,.form-group textarea{width:100%;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px 14px;color:#fff;font-size:14px;outline:none;transition:border-color .2s;font-family:inherit;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus{border-color:#3498db}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:flex;gap:12px}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid rgba(255,255,255,.08)}.btn-cancel,.btn-confirm{padding:10px 24px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-cancel{background:#ffffff14;color:#fff9}.btn-cancel:hover{background:#ffffff26;color:#fff}.btn-confirm{background:linear-gradient(135deg,#3498db,#2ecc71);color:#fff}.btn-confirm:hover{box-shadow:0 4px 16px #3498db66}@keyframes tripToastIn{0%{transform:translate(-50%) translateY(20px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}@keyframes tripToastOut{0%{transform:translate(-50%) translateY(0);opacity:1}to{transform:translate(-50%) translateY(20px);opacity:0}}@media(max-width:640px){.welcome-title{font-size:36px}.welcome-card{padding:20px;gap:14px}.card-icon{width:60px;height:60px}.card-icon svg{width:36px;height:36px}.card-title{font-size:18px}.card-desc{font-size:13px}.trip-header-content{flex-wrap:wrap}.trip-token-badge{margin-left:0}.search-date-group,.search-actions{flex-direction:column}.guide-card{padding:18px}.guide-detail{padding:20px}.form-row{flex-direction:column}.login-card{max-width:360px;padding:30px 24px}.login-title{font-size:28px}.welcome-user-bar{flex-direction:column;gap:10px;align-items:flex-start}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0c1220,#1a1a2e 40%,#16213e);position:relative;overflow:hidden}.login-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.login-card{background:#ffffff0d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:48px 40px;max-width:420px;width:90%;position:relative;z-index:1;box-shadow:0 20px 60px #0000004d}.login-header{text-align:center;margin-bottom:36px}.login-title{font-size:36px;font-weight:700;background:linear-gradient(135deg,#e67e22,#f1c40f,#2ecc71,#3498db);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 8px}.login-subtitle{color:#ffffff80;font-size:14px;margin:0}.login-form{display:flex;flex-direction:column;gap:20px}.login-input-group{display:flex;flex-direction:column;gap:8px}.login-input-group label{color:#ffffffb3;font-size:14px;font-weight:500;display:flex;align-items:center;gap:6px}.login-input-group label svg{opacity:.6}.login-input-group input{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:14px 16px;color:#fff;font-size:15px;outline:none;transition:all .2s ease}.login-input-group input::-moz-placeholder{color:#ffffff4d}.login-input-group input::placeholder{color:#ffffff4d}.login-input-group input:focus{border-color:#3498db99;background:#ffffff1f;box-shadow:0 0 0 3px #3498db26}.login-code-row{display:flex;align-items:center;gap:10px}.login-code-row input{flex:1;min-width:0}.login-send-code-btn{flex-shrink:0;padding:10px 16px;background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s}.login-send-code-btn:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#2471a3);transform:translateY(-1px)}.login-send-code-btn:disabled{background:#ffffff26;color:#ffffff80;cursor:not-allowed}.login-error{color:#e74c3c;font-size:13px;margin:0;min-height:18px;text-align:center}.login-tabs{display:flex;margin-bottom:20px;background:#ffffff0d;border-radius:10px;padding:3px}.login-tab{flex:1;padding:10px 0;border:none;border-radius:8px;background:transparent;color:#ffffff80;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease}.login-tab.active{background:linear-gradient(135deg,#3498db,#2ecc71);color:#fff;box-shadow:0 2px 8px #3498db4d}.login-tab:not(.active):hover{color:#fffc;background:#ffffff0d}.login-btn{background:linear-gradient(135deg,#3498db,#2ecc71);border:none;border-radius:12px;padding:14px 24px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;position:relative;overflow:hidden}.login-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.login-btn:active{transform:translateY(0)}.login-btn.loading{opacity:.7;pointer-events:none}.login-btn.loading .login-btn-text{opacity:0}.login-btn.loading:after{content:"";position:absolute;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:loginSpinner .6s linear infinite}@keyframes loginSpinner{to{transform:rotate(360deg)}}.login-hint{text-align:center;color:#ffffff59;font-size:12px;margin:16px 0 0}.welcome-user-bar{display:flex;align-items:center;justify-content:space-between;background:#ffffff0f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:12px 20px;margin-bottom:28px}.user-info{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#3498db,#2ecc71);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#fff}.user-details{display:flex;flex-direction:column;gap:2px}.user-name{color:#ffffffe6;font-size:15px;font-weight:600}.user-tokens{color:#ffffff80;font-size:12px;display:flex;align-items:center;gap:4px}.user-tokens svg{color:#2ecc71}.logout-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px 16px;color:#fff9;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.logout-btn:hover{background:#e74c3c33;border-color:#e74c3c66;color:#e74c3c}.trip-header-right{display:flex;align-items:center;gap:12px;margin-left:auto}.trip-user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3498db,#2ecc71);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff}.token-cost-badge{background:#e74c3c26;color:#e74c3c;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:500}.profile-modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease}.profile-modal{background:linear-gradient(135deg,#1a1f35,#0f1628);border:1px solid rgba(255,255,255,.1);border-radius:20px;width:90%;max-width:440px;max-height:85vh;overflow-y:auto;animation:modalSlideIn .3s ease}.profile-modal::-webkit-scrollbar{width:6px}.profile-modal::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.profile-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px}.profile-modal-header h2{font-size:20px;font-weight:700;color:#fff;margin:0}.profile-modal-close{background:#ffffff14;border:none;border-radius:10px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff9;transition:all .2s}.profile-modal-close:hover{background:#ffffff26;color:#fff}.profile-modal-body{padding:8px 24px 24px}.profile-section{margin-bottom:20px}.profile-label{display:block;font-size:13px;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.profile-input{width:100%;padding:12px 16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:15px;outline:none;transition:all .2s;box-sizing:border-box}.profile-input:focus{border-color:#3498db80;background:#ffffff14;box-shadow:0 0 0 3px #3498db26}.profile-avatar-row{display:flex;align-items:flex-start;gap:16px}.profile-avatar-preview{width:56px;height:56px;min-width:56px;border-radius:16px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;font-weight:700}.profile-avatar-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;flex:1}.avatar-option{width:36px;height:36px;border:2px solid transparent;border-radius:10px;background:#ffffff0f;font-size:18px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;padding:0}.avatar-option:hover{background:#ffffff1f;transform:scale(1.1)}.avatar-option.selected{border-color:#3498db;background:#3498db33;box-shadow:0 0 8px #3498db4d}.profile-token-balance{display:flex;align-items:center;gap:8px;padding:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px}.token-icon{color:#2ecc71;display:flex}.token-value{font-size:28px;font-weight:800;color:#fff}.token-unit{font-size:14px;color:#fff6;font-weight:500}.profile-save-btn{width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:14px;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s;font-family:inherit;margin-top:8px}.profile-save-btn:hover{transform:translateY(-1px);box-shadow:0 4px 20px #667eea66}.profile-save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.profile-status{text-align:center;font-size:13px;margin-top:8px;min-height:20px}.profile-status.success{color:#2ecc71}.profile-status.error{color:#e74c3c}.profile-status.info{color:#ffffff80}.user-info{display:flex;align-items:center;gap:10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:6px 14px 6px 6px;cursor:pointer;transition:all .2s;color:#fff;font-family:inherit}.user-info:hover{background:#ffffff1a;border-color:#ffffff26}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes wcMsgIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes wcFadeIn{0%{opacity:0}to{opacity:1}}@keyframes wcSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.wc-app{display:flex;flex-direction:column;height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);color:#e0e0e0;overflow:hidden}.wc-header{display:flex;align-items:center;padding:12px 16px;background:#0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.wc-back-btn{color:#8ab4f8;text-decoration:none;font-size:20px;font-weight:700;margin-right:12px;transition:color .2s;cursor:pointer;background:none;border:none;padding:0}.wc-back-btn:hover{color:#aecbfa}.wc-title{flex:1;font-family:Georgia,serif;font-size:18px;font-weight:600;background:linear-gradient(135deg,#8ab4f8,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;color:transparent}.wc-user-info{display:flex;align-items:center;gap:6px;flex-shrink:0;font-size:13px}.wc-user-name{font-size:13px;color:#ffffffb3;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wc-nav{display:flex;padding:8px 16px;background:#0003;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.wc-nav-btn{padding:8px 14px;border:none;border-radius:8px;background:#ffffff0f;color:#fff9;font-size:13px;cursor:pointer;transition:all .3s;white-space:nowrap;margin-right:6px}.wc-nav-btn.active{background:linear-gradient(135deg,#8ab4f8,#a78bfa);color:#fff;font-weight:600}.wc-nav-btn:hover:not(.active){background:#ffffff1a;color:#fffc}.wc-content{flex:1;overflow:hidden;min-height:0}.wc-chat-layout{display:flex;flex-direction:row;height:100%;min-height:0}.wc-sidebar{width:180px;border-right:1px solid rgba(255,255,255,.06);background:#00000026;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}.wc-sidebar-title{font-size:12px;color:#fff6;padding:12px 12px 6px;text-transform:uppercase;letter-spacing:1px;flex-shrink:0}.wc-sidebar-count{color:#4ade80;font-weight:600}.wc-online-list{flex:1;overflow-y:auto;padding:4px 8px}.wc-online-user{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:10px;transition:background .2s;cursor:pointer;margin-bottom:2px}.wc-online-user:hover{background:#ffffff0f}.wc-online-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;position:relative}.wc-online-dot{position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:50%;background:#4ade80;border:2px solid #1a1a2e}.wc-online-name{font-size:13px;color:#ffffffb3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wc-chat-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.wc-chat-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#00000026;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.wc-chat-header-left{display:flex;align-items:center;gap:8px}.wc-chat-back{background:none;border:none;color:#8ab4f8;font-size:14px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .2s}.wc-chat-back:hover{background:#8ab4f81a}.wc-chat-target-name{font-size:15px;font-weight:600;color:#e0e0e0}.wc-chat-target-info{font-size:12px;color:#ffffff80}.wc-msg-list{flex:1;overflow-y:auto;padding:16px;min-height:0}.wc-typing{font-size:12px;color:#fff6;font-style:italic;padding:4px 0;text-align:center}.wc-msg{display:flex;align-items:flex-start;margin-bottom:10px;animation:wcMsgIn .3s ease}.wc-msg-self{flex-direction:row-reverse}.wc-msg-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;margin-right:8px}.wc-msg-self .wc-msg-avatar{margin-right:0;margin-left:8px;background:linear-gradient(135deg,#8ab4f8,#a78bfa)}.wc-msg-other .wc-msg-avatar{background:linear-gradient(135deg,#4ade80,#22d3ee)}.wc-msg-body{max-width:65%;display:flex;flex-direction:column}.wc-msg-self .wc-msg-body{align-items:flex-end}.wc-msg-name{font-size:11px;color:#fff6;margin-bottom:2px}.wc-msg-text{padding:8px 12px;border-radius:12px;font-size:14px;line-height:1.5;word-break:break-word}.wc-msg-other .wc-msg-text{background:#ffffff1a;border-top-left-radius:4px;color:#e0e0e0}.wc-msg-self .wc-msg-text{background:linear-gradient(135deg,#8ab4f8,#a78bfa);border-top-right-radius:4px;color:#fff}.wc-msg-img-wrap{display:block}.wc-msg-img{max-width:240px;border-radius:10px;cursor:pointer;display:block;transition:transform .2s}.wc-msg-img:hover{transform:scale(1.02)}.wc-msg-file{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;cursor:pointer;transition:background .2s;text-decoration:none}.wc-msg-other .wc-msg-file{background:#ffffff14;color:#e0e0e0}.wc-msg-self .wc-msg-file{background:#ffffff26;color:#fff}.wc-file-icon{font-size:28px;flex-shrink:0}.wc-file-info{display:flex;flex-direction:column;gap:2px}.wc-file-info b{font-size:13px;font-weight:500}.wc-file-info small{font-size:11px;opacity:.6}.wc-msg-time{font-size:10px;color:#ffffff4d;margin-top:2px}.wc-chat-input-area{display:flex;align-items:center;padding:10px 16px;background:#0003;border-top:1px solid rgba(255,255,255,.06);flex-shrink:0;min-height:56px}.wc-msg-input{flex:1;padding:10px 14px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:#ffffff0f;color:#e0e0e0;font-size:14px;outline:none;transition:border-color .2s;min-width:0}.wc-msg-input:focus{border-color:#8ab4f880}.wc-msg-input::-moz-placeholder{color:#ffffff4d}.wc-msg-input::placeholder{color:#ffffff4d}.wc-tool-btn{width:36px;height:36px;border-radius:50%;border:none;background:#ffffff14;color:#fff9;font-size:18px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;margin-right:6px;flex-shrink:0}.wc-tool-btn:hover{background:#ffffff26;color:#fff}.wc-send-btn{padding:10px 18px;border:none;border-radius:20px;background:linear-gradient(135deg,#8ab4f8,#a78bfa);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;flex-shrink:0;margin-left:6px}.wc-send-btn:hover{filter:brightness(1.1);transform:scale(1.02)}.wc-send-btn:active{transform:scale(.98)}.wc-friends-page{display:flex;flex-direction:column;height:100%;overflow-y:auto}.wc-friend-section{padding:16px;border-bottom:1px solid rgba(255,255,255,.06)}.wc-section-title{font-size:13px;color:#ffffff80;margin:0 0 10px;font-weight:600;display:flex;align-items:center}.wc-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:10px;font-size:11px;font-weight:700;background:#ef4444;color:#fff}.wc-friend-requests{margin-bottom:4px}.wc-request-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#ffffff0a;margin-bottom:6px}.wc-request-info{flex:1;min-width:0;display:flex;flex-direction:column}.wc-request-info b{font-size:14px;font-weight:600;color:#e0e0e0}.wc-request-info small{font-size:11px;color:#fff6}.wc-accept-btn,.wc-reject-btn{padding:5px 12px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.wc-accept-btn{background:linear-gradient(135deg,#4ade80,#22d3ee);color:#fff;margin-right:6px}.wc-reject-btn{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.wc-friend-list{display:flex;flex-direction:column}.wc-friend-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);margin-bottom:6px;cursor:pointer;transition:all .2s}.wc-friend-item:hover{background:#ffffff14}.wc-friend-avatar-wrap{position:relative;flex-shrink:0}.wc-online-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#fff3;position:absolute;bottom:-2px;right:-2px;border:2px solid #1a1a2e}.wc-online-dot.online{background:#4ade80}.wc-friend-info{flex:1;min-width:0;display:flex;flex-direction:column}.wc-friend-info b{font-size:14px;font-weight:600;color:#e0e0e0}.wc-friend-info small{font-size:11px;color:#fff6}.wc-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;flex-shrink:0}.wc-search-bar{display:flex;gap:8px}.wc-search-input{flex:1;padding:8px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0f;color:#e0e0e0;font-size:13px;outline:none}.wc-search-input:focus{border-color:#8ab4f880}.wc-search-input::-moz-placeholder{color:#ffffff4d}.wc-search-input::placeholder{color:#ffffff4d}.wc-search-btn{padding:8px 16px;border:none;border-radius:10px;background:linear-gradient(135deg,#8ab4f8,#a78bfa);color:#fff;font-size:13px;font-weight:600;cursor:pointer}.wc-search-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);margin-top:6px}.wc-add-btn{padding:5px 12px;border:none;border-radius:6px;background:linear-gradient(135deg,#8ab4f8,#a78bfa);color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.wc-add-btn:hover{filter:brightness(1.1)}.wc-already-friend{font-size:12px;color:#fff6}.wc-moments-page{display:flex;flex-direction:column;height:100%;overflow-y:auto}.wc-moment-publish{padding:16px;border-bottom:1px solid rgba(255,255,255,.06)}.wc-moment-text{width:100%;padding:10px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff0f;color:#e0e0e0;font-size:14px;resize:none;outline:none;font-family:inherit;min-height:50px;max-height:100px;box-sizing:border-box;transition:border-color .2s}.wc-moment-text:focus{border-color:#8ab4f880}.wc-moment-text::-moz-placeholder{color:#ffffff4d}.wc-moment-text::placeholder{color:#ffffff4d}.wc-moment-actions{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.wc-moment-img-area{display:flex;align-items:center;gap:8px}.wc-moment-img-btn{padding:8px 14px;border:1px dashed rgba(138,180,248,.4);border-radius:10px;background:#8ab4f814;color:#8ab4f8;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.wc-moment-img-btn:hover{background:#8ab4f826;border-color:#8ab4f899}.wc-moment-img-hint{font-size:12px;color:#4ade80}.wc-moment-preview{position:relative;display:inline-block;margin-top:8px}.wc-moment-preview img{max-width:120px;max-height:120px;border-radius:10px;display:block}.wc-moment-preview-remove{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;background:#ef4444;color:#fff;border:none;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.wc-moment-preview-remove:hover{background:#dc2626}.wc-publish-btn{padding:8px 16px;border:none;border-radius:10px;background:linear-gradient(135deg,#f472b6,#a78bfa);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.wc-publish-btn:hover{filter:brightness(1.1)}.wc-moments-list{padding:16px;display:flex;flex-direction:column}.wc-moment-card{background:#ffffff0d;border-radius:16px;padding:16px;border:1px solid rgba(255,255,255,.06);margin-bottom:16px;animation:wcSlideUp .3s ease}.wc-moment-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.wc-moment-header b{font-size:14px;font-weight:600;color:#8ab4f8}.wc-moment-header small{display:block;font-size:11px;color:#ffffff59}.wc-moment-content{font-size:14px;line-height:1.6;color:#e0e0e0;margin-bottom:10px;white-space:pre-wrap;word-break:break-word}.wc-moment-image{margin-bottom:10px;border-radius:12px;overflow:hidden}.wc-moment-image img{max-width:100%;border-radius:12px;cursor:pointer;display:block}.wc-moment-actions-bar{display:flex;gap:16px;margin-bottom:8px}.wc-like-btn,.wc-comment-toggle{background:none;border:none;color:#ffffff80;font-size:13px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .2s}.wc-like-btn:hover{color:#f472b6;background:#f472b61a}.wc-like-btn.liked{color:#f472b6}.wc-comment-toggle:hover{color:#8ab4f8;background:#8ab4f81a}.wc-comments{background:#ffffff0a;border-radius:8px;padding:8px 12px;margin-bottom:8px}.wc-comment{font-size:13px;color:#ffffffb3;line-height:1.5;padding:2px 0}.wc-comment b{color:#8ab4f8;font-weight:500}.wc-comment-input-wrap{display:flex;gap:6px;margin-top:6px}.wc-comment-input{flex:1;padding:6px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#e0e0e0;font-size:13px;outline:none;min-width:0}.wc-comment-input:focus{border-color:#8ab4f866}.wc-comment-input::-moz-placeholder{color:#ffffff40}.wc-comment-input::placeholder{color:#ffffff40}.wc-comment-send{padding:6px 12px;border:none;border-radius:8px;background:linear-gradient(135deg,#8ab4f8,#a78bfa);color:#fff;font-size:12px;cursor:pointer;flex-shrink:0}.wc-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.wc-avatar-letter{background:linear-gradient(135deg,#8ab4f8,#a78bfa);color:#fff;font-weight:600}.wc-img-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#000000e6;cursor:pointer;animation:wcFadeIn .2s ease}.wc-img-modal img{max-width:90vw;max-height:90vh;border-radius:8px;-o-object-fit:contain;object-fit:contain}.wc-img-close{position:absolute;top:20px;right:20px;width:40px;height:40px;border-radius:50%;background:#ffffff26;border:none;color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.wc-img-close:hover{background:#ffffff40}.wc-toast{position:fixed;top:20px;left:50%;transform:translate(-50%);padding:10px 24px;border-radius:12px;background:#1e293bf2;color:#e0e0e0;font-size:14px;z-index:300;animation:wcSlideUp .3s ease;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.wc-empty{color:#ffffff4d;font-size:14px;text-align:center;padding:20px}@media(max-width:640px){.wc-sidebar{display:none}.wc-msg-body{max-width:80%}.wc-msg-img{max-width:180px}.wc-moment-actions{flex-wrap:wrap}}.welcome-card.admin-card{background:linear-gradient(135deg,#1e0a0ae6,#321414e6);border-color:#ef44444d}.welcome-card.admin-card:hover{border-color:#ef444499;box-shadow:0 0 30px #ef444426}.welcome-card.admin-card .card-icon svg{color:#ef4444}.admin-page{min-height:100vh;background:#0a0e1a;color:#e2e8f0;position:relative;overflow-y:auto}.admin-bg{position:fixed;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(239,68,68,.05) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(56,189,248,.04) 0%,transparent 50%);pointer-events:none;z-index:0}.admin-container{position:relative;z-index:1;max-width:640px;margin:0 auto;padding:20px 16px 40px}.admin-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.admin-back-btn{width:40px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#e2e8f0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.admin-back-btn:hover{background:#ffffff1a;border-color:#fff3}.admin-header-info{flex:1}.admin-title{font-size:20px;font-weight:700;margin:0}.admin-subtitle{font-size:13px;color:#64748b;margin:2px 0 0}.admin-badge{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3);padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.admin-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.admin-stat-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:16px;display:flex;align-items:center;gap:12px}.stat-icon{color:#38bdf8;opacity:.7}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:22px;font-weight:700}.stat-label{font-size:12px;color:#64748b}.admin-search-bar{display:flex;align-items:center;gap:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px 14px;margin-bottom:16px}.admin-search-bar svg{color:#64748b;flex-shrink:0}.admin-search-bar input{flex:1;background:none;border:none;color:#e2e8f0;font-size:14px;outline:none}.admin-search-bar input::-moz-placeholder{color:#475569}.admin-search-bar input::placeholder{color:#475569}.admin-user-list{display:flex;flex-direction:column;gap:8px}.admin-user-card{display:flex;align-items:center;justify-content:space-between;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:14px 16px;transition:all .2s}.admin-user-card:hover{background:#ffffff0f;border-color:#ffffff1f}.admin-user-card.admin-user{border-color:#ef444433;background:#ef444408}.user-card-left{display:flex;align-items:center;gap:12px}.user-card-avatar{width:40px;height:40px;border-radius:50%;background:#38bdf826;color:#38bdf8;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600}.user-card-avatar.admin-avatar{background:#ef444426;color:#ef4444}.user-card-info{display:flex;flex-direction:column}.user-card-name{font-size:14px;font-weight:600}.admin-tag{background:#ef444426;color:#ef4444;padding:1px 6px;border-radius:4px;font-size:11px;font-weight:500}.user-card-phone{font-size:12px;color:#64748b}.user-card-right{display:flex;align-items:center;gap:10px}.user-card-tokens{font-size:14px;font-weight:600;color:#38bdf8}.user-card-tokens small{font-size:11px;color:#64748b;font-weight:400}.user-card-action{width:32px;height:32px;border-radius:8px;background:#38bdf81a;border:1px solid rgba(56,189,248,.2);color:#38bdf8;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.user-card-action:hover{background:#38bdf833;border-color:#38bdf866}.admin-loading,.admin-empty,.admin-error{text-align:center;padding:40px 0;color:#64748b;font-size:14px}.admin-error{color:#ef4444}.admin-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.admin-modal{background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:16px;width:90%;max-width:400px;padding:0;overflow:hidden}.admin-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.06)}.admin-modal-header h2{font-size:16px;font-weight:700;margin:0}.admin-modal-close{width:32px;height:32px;border-radius:8px;border:none;background:#ffffff0f;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.admin-modal-close:hover{background:#ffffff1f;color:#e2e8f0}.admin-modal-body{padding:20px}.modal-user-info{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding:12px;background:#ffffff08;border-radius:10px}.modal-avatar{width:44px;height:44px;border-radius:50%;background:#38bdf826;color:#38bdf8;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}.modal-user-detail{flex:1}.modal-username{display:block;font-size:14px;font-weight:600}.modal-phone{display:block;font-size:12px;color:#64748b}.modal-current-tokens{font-size:13px;color:#94a3b8}.modal-current-tokens strong{color:#38bdf8}.modal-action-toggle{display:flex;gap:8px;margin-bottom:16px}.action-btn{flex:1;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff08;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;font-size:14px;font-weight:500;transition:all .2s}.action-btn.active.add-active,.action-btn.active[data-action=add]{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.action-btn.active.sub-active,.action-btn.active[data-action=subtract]{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.action-btn.active{background:#22c55e1a;border-color:#22c55e4d;color:#22c55e}.action-btn:not(.active):hover{background:#ffffff0f}.modal-amount-input{margin-bottom:16px}.modal-amount-input label{display:block;font-size:13px;color:#94a3b8;margin-bottom:8px}.amount-input-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:8px}.amount-preset{padding:8px 4px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#e2e8f0;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s;text-align:center}.amount-preset:hover{background:#38bdf81a;border-color:#38bdf84d}.modal-amount-input input[type=number]{width:100%;background:#0f172a99;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 12px;color:#e2e8f0;font-size:14px;outline:none;box-sizing:border-box}.modal-amount-input input:focus{border-color:#38bdf8}.modal-preview{padding:12px;background:#ffffff08;border-radius:10px;margin-bottom:16px;min-height:20px}.preview-row{display:flex;align-items:center;justify-content:center;gap:10px;font-size:16px;font-weight:600}.preview-result{color:#38bdf8}.preview-error .preview-result{color:#ef4444}.preview-warn{text-align:center;color:#ef4444;font-size:12px;margin-top:6px}.modal-confirm-btn{width:100%;padding:12px;border-radius:10px;border:none;background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.modal-confirm-btn:hover{opacity:.9;transform:translateY(-1px)}.modal-confirm-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.modal-status{text-align:center;font-size:13px;margin-top:10px;min-height:18px}.modal-status.success{color:#22c55e}.modal-status.error{color:#ef4444}
