.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{color-scheme:only light;--w-overlay-3: rgba(255,255,255,.03);--w-overlay-4: rgba(255,255,255,.04);--w-overlay-5: rgba(255,255,255,.05);--w-overlay-6: rgba(255,255,255,.06);--w-overlay-7: rgba(255,255,255,.07);--w-overlay-8: rgba(255,255,255,.08);--w-overlay-10: rgba(255,255,255,.1);--w-overlay-12: rgba(255,255,255,.12);--w-overlay-15: rgba(255,255,255,.15);--w-overlay-20: rgba(255,255,255,.2);--w-overlay-30: rgba(255,255,255,.3);--w-overlay-45: rgba(255,255,255,.45);--w-overlay-50: rgba(255,255,255,.5);--w-overlay-55: rgba(255,255,255,.55);--w-overlay-65: rgba(255,255,255,.65);--w-overlay-70: rgba(255,255,255,.7);--w-overlay-75: rgba(255,255,255,.75);--w-overlay-85: rgba(255,255,255,.85);--w-overlay-90: rgba(255,255,255,.9);--w-overlay-95: rgba(255,255,255,.95);--ds-warm-dark-base: #2a1410;--ds-warm-dark-floor: #1a0e0a;--surface-dark: #1c1c2e;--surface-dark-mid: #16213e;--surface-dark-deep: #0f3460;--surface-dark-base: rgba(10,12,30,.97);--surface-dark-floor: rgba(6,8,24,.99);--surface-card-dark: rgba(30,25,50,.95);--surface-card-darker: rgba(15,12,35,.98);--surface-panel-dark: rgba(15,20,40,.95);--surface-panel-floor: rgba(10,14,30,.98);--surface-moon-area: rgba(10,10,30,.6);--text-on-dark: rgba(255,235,200,.9);--text-on-dark-sub: rgba(255,235,200,.7);--text-on-dark-muted: rgba(255,235,200,.5);--brand-google-blue: #4285F4;--brand-google-red: #EA4335;--brand-google-green: #34A853;--brand-google-yellow: #FBBC05;--brand-kakao: #FEE500;--brand-naver: #03C75A;--radius-xs: 4px;--radius-2xl: 24px;--radius-full: 9999px;--text-display: 36px;--text-display-lh: 1.2;--text-h1: 28px;--text-h1-lh: 1.3;--text-h2: 24px;--text-h2-lh: 1.35;--text-h3: 20px;--text-h3-lh: 1.4;--text-h4: 18px;--text-h4-lh: 1.45;--text-lg: 18px;--text-md: 16px;--text-sm: 14px;--text-xs: 12px;--text-2xs: 11px;--font-xs: 11px;--font-sm: 12px;--font-md: 14px;--font-lg: 16px;--font-xl: 18px;--space-2xs: 2px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 20px;--space-2xl: 24px;--space-3xl: 32px;--space-4xl: 40px;--app-header-height: 64px;--bottom-nav-height: 80px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--transition-spring: .3s cubic-bezier(.34, 1.56, .64, 1);--z-behind: -1;--z-base: 0;--z-content: 1;--z-raised: 2;--z-float: 3;--z-elevated: 5;--z-sticky: 10;--z-sticky-above: 15;--z-controls: 20;--z-dropdown: 100;--z-sticky-nav: 500;--z-overlay: 900;--z-modal: 1000;--z-toast: 1100;--z-tooltip: 1200}:root{--font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, sans-serif;--font-size: 16px;--font-weight-normal: 400;--font-weight-medium: 500;--background: #ffffff;--foreground: #4a3b39;--card: #ffffff;--card-foreground: #4a3b39;--popover: #ffffff;--popover-foreground: #4a3b39;--primary: #ff7b8a;--primary-foreground: #4a3b39;--secondary: #ffeadf;--secondary-foreground: #6b5754;--muted: #f6efe9;--muted-foreground: #8a7b79;--accent: #f2e1db;--accent-foreground: #4a3b39;--destructive: #ff6b6b;--destructive-foreground: #ffffff;--border: #eaddd8;--section-divider-color: var(--border-subtle);--section-divider-thickness: 1px;--input: #eaddd8;--input-background: #ffffff;--switch-background: #eaddd8;--ring: #c4614f;--primary-hover: #f95d6e;--radius: 1.25rem;--radius-sm: calc(var(--radius) - 4px);--radius-md: calc(var(--radius) - 2px);--radius-lg: 1.5rem;--radius-xl: calc(var(--radius-lg) + 4px);--chart-1: #ffb5a7;--chart-2: #fcd5ce;--chart-3: #f8edeb;--chart-4: #f9dcc4;--chart-5: #fec89a;--sidebar: #fdfaf6;--sidebar-foreground: #4a3b39;--sidebar-primary: #ffaa99;--sidebar-primary-foreground: #ffffff;--sidebar-accent: #f2e1db;--sidebar-accent-foreground: #4a3b39;--sidebar-border: #eaddd8;--sidebar-ring: #ffaa99;--ds-apricot: #ffaa99;--ds-apricot-light: #ffeadf;--ds-apricot-soft: rgba(255, 170, 153, .2);--ds-apricot-deep: #ff9080;--ds-coral: #ff7b8a;--ds-coral-light: #ffd4da;--ds-coral-soft: rgba(255, 123, 138, .15);--ds-coral-deep: #c4614f;--ds-accent: #ff7b8a;--ds-coral-signature-deep: #E15546;--ds-coral-signature-accent: #FBD9D1;--ds-warm-tint-04: rgba(255, 170, 153, .04);--ds-warm-tint-05: rgba(255, 170, 153, .05);--ds-warm-tint-06: rgba(255, 170, 153, .06);--ds-warm-tint-08: rgba(255, 170, 153, .08);--ds-warm-tint-10: rgba(255, 170, 153, .1);--ds-warm-tint-12: rgba(255, 170, 153, .12);--ds-warm-tint-15: rgba(255, 170, 153, .15);--ds-warm-tint-18: rgba(255, 170, 153, .18);--ds-warm-tint-20: rgba(255, 170, 153, .2);--ds-warm-tint-25: rgba(255, 170, 153, .25);--ds-warm-tint-30: rgba(255, 170, 153, .3);--ds-warm-tint-35: rgba(255, 170, 153, .35);--ds-warm-tint-40: rgba(255, 170, 153, .4);--ds-warm-tint-50: rgba(255, 170, 153, .5);--ds-bg-page: var(--background);--ds-bg-cream: var(--secondary);--ds-bg-card: var(--card);--ds-bg-muted: var(--muted);--ds-bg-tinted: var(--accent);--ds-text-strong: var(--foreground);--ds-text-body: var(--foreground);--ds-text-muted: var(--muted-foreground);--ds-text-subtle: #c4b5b3;--ds-border-soft: rgba(234, 221, 216, .7);--ds-border: var(--border);--ds-border-strong: rgba(0, 0, 0, .18);--ds-shadow-sm: 0 2px 10px rgba(249, 93, 110, .1), 0 1px 3px rgba(0, 0, 0, .05);--ds-shadow: 0 8px 32px rgba(249, 93, 110, .14), 0 2px 8px rgba(0, 0, 0, .06);--ds-shadow-lg: 0 16px 48px rgba(249, 93, 110, .18), 0 4px 12px rgba(0, 0, 0, .06);--ds-shadow-hover: 0 20px 52px rgba(249, 93, 110, .22), 0 4px 12px rgba(0, 0, 0, .06);--ds-radius-xs: 4px;--ds-radius-sm: var(--radius-sm);--ds-radius-md: var(--radius-md);--ds-radius-lg: var(--radius-lg);--ds-radius-xl: var(--radius-xl);--ds-radius-pill: 999px;--ds-popup-cream: #fff5f1;--ds-popup-cream-border: #f5dfd5;--ds-popup-stripe: var(--ds-coral-deep);--ds-section-radius: var(--ds-radius-lg);--ds-section-px: 1.25rem;--ds-section-py: .875rem;--ds-section-max-width: 400px;--ds-section-title-size: var(--ds-text-body-lg);--ds-section-title-weight: 700;--ds-section-body-size: var(--ds-text-body-md);--ds-section-body-weight: 600;--text-base: var(--ds-text-body-lg);--ds-font-display: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--ds-font-body: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--ds-text-display: clamp(28px, 4vw, 38px);--ds-text-h1: clamp(22px, 3vw, 28px);--ds-text-h2: 20px;--ds-text-h3: 17px;--ds-text-body-lg: 16px;--ds-text-body-md: 14px;--ds-text-caption: 12px;--ds-chart-1: var(--chart-1);--ds-chart-2: var(--chart-2);--ds-chart-3: var(--chart-3);--ds-chart-4: var(--chart-4);--ds-chart-5: var(--chart-5);--ds-chart-apricot: #ffb5a7;--ds-chart-apricot-deep: #ffaa99;--ds-chart-apricot-soft: rgba(255, 181, 167, .28);--ds-chart-coral: #ffaa99;--ds-chart-coral-deep: #ff9080;--ds-chart-coral-soft: rgba(255, 170, 153, .25);--ds-chart-jade: #7ec490;--ds-chart-jade-deep: #3dbb8a;--ds-chart-jade-soft: rgba(61, 187, 138, .42);--font-serif: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--ds-glass-bg: rgba(255, 255, 255, .52);--ds-glass-border: rgba(255, 255, 255, .72);--ds-glass-blur: blur(18px);--ds-glass-radius: 24px}:root{--bento-gap: clamp(8px, 2vw, 12px);--bento-gap-lg: clamp(10px, 2.5vw, 16px);--bento-radius: var(--radius);--bento-radius-sm: var(--radius-sm);--bento-card-bg: var(--card);--bento-card-bg-cream: var(--ds-bg-cream);--bento-card-bg-tinted: var(--ds-coral-soft);--bento-card-border: var(--border);--bento-card-padding: 20px;--bento-card-padding-lg: 24px;--bento-card-shadow: var(--ds-shadow-sm);--bento-card-shadow-hover: var(--ds-shadow);--bento-accent: var(--ds-coral);--bento-accent-fg: var(--primary-foreground);--bento-accent-bar: 3px;--bento-eyebrow-size: 11px;--bento-eyebrow-color: var(--text-secondary);--bento-title-size: 18px;--bento-title-weight: 700;--bento-value-size: 28px;--bento-value-weight: 800;--bento-body-size: 14px;--bento-body-color: var(--ds-text-body)}*:focus-visible{outline:2px solid var(--ring);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ring);outline-offset:2px;box-shadow:var(--focus-ring)}*:focus:not(:focus-visible){outline:none}button,a,[role=button],input[type=checkbox],input[type=radio]{min-height:44px;min-width:44px}.slide-dot,.onboarding-dot,.ad-dot,.carousel-dot,.indicator-dot{min-height:44px!important;min-width:44px!important;max-width:none!important;max-height:none!important;width:44px!important;height:44px!important;padding:20px!important;border:none!important;border-radius:50%!important;box-sizing:border-box!important;opacity:.5;display:flex;align-items:center;justify-content:center;cursor:pointer}.slide-dot.active,.onboarding-dot.active,.ad-dot.active,.carousel-dot.active,.indicator-dot.active{width:44px!important;max-width:none!important;border-radius:2px!important;opacity:1;background-color:var(--primary)!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-contrast:high){:root{--gold: #FFD700;--jade: #00CC99;--gray: #E0E0E0}}p,span,div,h1,h2,h3,h4,h5,h6,li{user-select:text;word-break:keep-all;overflow-wrap:break-word;word-wrap:break-word}[aria-live]{min-height:1px;min-width:1px}[aria-live=polite],[aria-live=assertive]{position:relative}[role=dialog],[role=navigation],[role=group]{outline:none}html,body,#root{min-height:calc(var(--vh, 1vh) * 100);min-height:100dvh;background:var(--bg-main)}html{overflow-y:auto;overflow-x:hidden}body{font-family:var(--font-sans);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;background-color:var(--background, #ffffff);background-image:none}@media(max-width:1023px){body{background-image:none;background-color:var(--background, #ffffff)}}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:600;letter-spacing:.02em}button,input,select,textarea{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}.text-display{font-family:var(--font-serif);font-size:var(--text-display);font-weight:700;line-height:var(--text-display-lh);letter-spacing:.02em;color:var(--foreground)}.text-h1{font-family:var(--font-serif);font-size:var(--text-h1);font-weight:600;line-height:var(--text-h1-lh);letter-spacing:.02em;color:var(--text-primary)}.text-h2{font-family:var(--font-serif);font-size:var(--text-h2);font-weight:600;line-height:var(--text-h2-lh);letter-spacing:.02em;color:var(--foreground)}.text-h3{font-family:var(--font-serif);font-size:var(--text-h3);font-weight:600;line-height:var(--text-h3-lh);letter-spacing:.01em;color:var(--text-primary)}.text-h4{font-family:var(--font-sans);font-size:var(--text-h4);font-weight:600;line-height:var(--text-h4-lh);color:var(--text-primary)}.text-lg{font-size:var(--text-lg);line-height:1.6}.text-md{font-size:var(--text-md);line-height:1.6}.text-sm{font-size:var(--text-sm);line-height:1.5}.text-xs{font-size:var(--text-xs);line-height:1.5}.text-2xs{font-size:var(--text-2xs);line-height:1.4}.text-primary{color:var(--foreground)}.text-secondary,.text-muted{color:var(--muted-foreground)}.text-gold{color:var(--primary)}.text-jade{color:var(--jade)}.nabi-card{background:var(--card);border-radius:var(--radius-lg);border:1.5px solid var(--border);padding:var(--space-xl);transition:var(--transition-normal);word-break:break-word;overflow-wrap:break-word;box-shadow:var(--shadow-sm)}.nabi-card:hover{border-color:var(--ring);cursor:pointer}.nabi-card:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm);filter:brightness(.95)}.nabi-card:focus-visible{outline:2px solid var(--ring);outline-offset:2px;box-shadow:var(--focus-ring)}.nabi-card--gold{border-left:3px solid var(--primary)}.nabi-card--elevated{background:var(--bg-elevated);box-shadow:var(--shadow)}.nabi-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:var(--transition-normal);border:none;min-height:48px}.nabi-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px;box-shadow:var(--focus-ring)}.nabi-btn:disabled,.nabi-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none;pointer-events:none}.nabi-btn--primary{background:var(--primary);color:var(--primary-foreground);box-shadow:0 1px 3px var(--overlay-15)}.nabi-btn--primary:hover{background:var(--primary-hover, #ff9080);transform:translateY(-1px);box-shadow:0 3px 10px var(--overlay-20)}.nabi-btn--primary:active:not(:disabled){background:var(--primary-hover, #ff9080);transform:translateY(0);box-shadow:none;filter:brightness(.92)}.nabi-btn--secondary{background:var(--muted);color:var(--foreground);border:1px solid var(--border)}.nabi-btn--secondary:hover{background:var(--accent);border-color:var(--ring)}.nabi-btn--secondary:active:not(:disabled){background:var(--muted);transform:translateY(0);filter:brightness(.96)}.nabi-btn--ghost{background:transparent;color:var(--foreground);border:none}.nabi-btn--ghost:hover{background:var(--muted)}.nabi-btn--ghost:active:not(:disabled){background:var(--accent);transform:translateY(0)}.nabi-btn--outline{background:transparent;color:var(--foreground);border:1px solid var(--border)}.nabi-btn--outline:hover{background:var(--muted);border-color:var(--ring)}.nabi-btn--outline:active:not(:disabled){background:var(--accent);transform:translateY(0)}.nabi-btn--jade{background:linear-gradient(135deg,#c1e7c8,#a4d4ad);color:var(--primary-foreground, #4a3b39)}.nabi-btn--jade:hover{transform:translateY(-2px);box-shadow:0 6px 18px #4a3b3938,inset 0 0 0 1px #4a3b392e;color:var(--primary-foreground, #4a3b39);filter:saturate(1.05)}.nabi-btn--jade:active:not(:disabled){transform:translateY(0);filter:brightness(.92)}.nabi-btn--danger{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.nabi-btn--danger:hover{transform:translateY(-2px);box-shadow:0 4px 16px #dc262659}.nabi-btn--danger:active:not(:disabled){transform:translateY(0);filter:brightness(.88)}.nabi-btn--sm{padding:var(--space-sm) var(--space-lg);font-size:var(--text-xs);min-height:36px}.nabi-btn--lg{padding:var(--space-lg) var(--space-2xl);font-size:var(--text-md);min-height:52px}.nabi-btn--full{width:100%;justify-content:center}.nabi-input{width:100%;padding:var(--space-md) var(--space-lg);background:var(--background);border:1.5px solid var(--border);border-radius:var(--radius-md);color:var(--foreground);font-family:var(--font-sans);font-size:var(--text-sm);transition:var(--transition-fast);min-height:48px}.nabi-input:hover:not(:focus):not(:disabled){border-color:var(--ring);background:var(--muted)}.nabi-input:focus{outline:none;border-color:var(--ring);background:var(--background);box-shadow:var(--focus-ring)}.nabi-input:focus-visible{outline:2px solid var(--ring);outline-offset:2px;box-shadow:var(--focus-ring)}.nabi-input:disabled{opacity:.45;cursor:not-allowed;background:#ffffff0a}.nabi-input[aria-invalid=true]{border-color:var(--error);box-shadow:0 0 0 3px #ef444426}.nabi-input[aria-invalid=true]:focus{border-color:var(--error);box-shadow:var(--destructive-focus-ring)}.nabi-input::placeholder{color:var(--text-muted)}.nabi-input-error{font-size:var(--text-xs);color:var(--error);margin-top:var(--space-xs)}.section-header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-xl)}.section-header__icon{width:36px;height:36px;display:flex;align-items:center;justify-content:space-between;background:var(--gold-alpha-15);border-radius:var(--radius-sm);color:var(--gold)}.section-header__title{font-family:var(--font-serif);font-size:var(--text-h3);font-weight:600;color:var(--gold);margin:0}.nabi-modal-overlay{position:fixed;inset:0;background:#020617f2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:space-between;z-index:var(--z-modal);padding:var(--space-lg)}.nabi-modal{background:linear-gradient(145deg,var(--bg-main),var(--bg-dark));border:1px solid var(--gold-alpha-20);border-radius:var(--radius-xl);max-width:420px;width:100%;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;box-shadow:var(--shadow-lg)}@media(max-width:479px){.nabi-modal{max-width:calc(100% - 32px);margin:0 16px}}.nabi-modal__header{padding:var(--space-xl);border-bottom:1px solid rgba(255,255,255,.05);display:flex;align-items:center;justify-content:space-between}.nabi-modal__title{font-family:var(--font-serif);font-size:var(--text-h3);font-weight:600;color:var(--gold);margin:0}.nabi-modal__body{padding:var(--space-xl);word-break:break-word;overflow-wrap:break-word}.nabi-modal__footer{padding:var(--space-lg) var(--space-xl);border-top:1px solid rgba(255,255,255,.05);display:flex;gap:var(--space-md)}.nabi-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-full);font-size:var(--text-2xs);font-weight:600}.nabi-badge--gold{background:var(--gold-subtle);color:var(--gold)}.nabi-badge--jade{background:var(--jade-glow);color:var(--jade)}.nabi-badge--success{background:#10b98126;color:var(--success)}.nabi-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold-alpha-30),transparent);margin:var(--space-xl) 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-gold{0%,to{box-shadow:0 0 0 0 var(--gold-glow)}50%{box-shadow:0 0 0 8px transparent}}.animate-fadeIn{animation:fadeIn var(--transition-normal) ease forwards}.animate-slideUp{animation:slideUp var(--transition-slow) ease forwards}.page-enter{opacity:0;transform:translateY(8px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.app-container{min-height:calc(var(--vh, 1vh) * 100);min-height:100dvh;background:var(--bg-main);padding-bottom:calc(120px + env(safe-area-inset-bottom,0px));position:relative;z-index:var(--z-sticky);overscroll-behavior-y:auto}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.seal-intro{position:fixed;inset:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--background, #ffffff) 0%,var(--ds-coral-light, #ffeadf) 100%);overflow:hidden;z-index:var(--z-modal);box-sizing:border-box}.seal-intro:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 18% 24%,rgba(242,106,90,.18),transparent 55%),radial-gradient(circle at 82% 18%,rgba(251,181,163,.22),transparent 60%),radial-gradient(circle at 70% 80%,rgba(242,106,90,.14),transparent 60%),radial-gradient(circle at 25% 78%,rgba(251,181,163,.18),transparent 55%),radial-gradient(2.5px 2.5px at 30% 35%,rgba(251,181,163,.85),transparent),radial-gradient(2px 2px at 60% 25%,rgba(242,106,90,.55),transparent),radial-gradient(1.5px 1.5px at 80% 55%,rgba(251,181,163,.7),transparent),radial-gradient(2px 2px at 45% 70%,rgba(242,106,90,.45),transparent),radial-gradient(1.5px 1.5px at 15% 60%,rgba(251,181,163,.6),transparent),radial-gradient(1px 1px at 90% 35%,rgba(242,106,90,.4),transparent),radial-gradient(1.5px 1.5px at 55% 90%,rgba(251,181,163,.55),transparent);background-size:100% 100%;animation:starsTwinkle 4s ease-in-out infinite;pointer-events:none}@keyframes starsTwinkle{0%,to{opacity:.85}50%{opacity:1}}.seal-container{position:relative;width:200px;height:200px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.seal-ring{position:absolute;width:100%;height:100%;border:2px solid var(--gold);border-radius:50%;opacity:.3;animation:pulse 3s ease-in-out infinite}.seal-ring:nth-child(2){width:85%;height:85%;animation-delay:.5s}.seal-ring:nth-child(3){width:70%;height:70%;animation-delay:1s}@keyframes pulse{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.5;transform:scale(1.02)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.seal-butterfly{font-size:64px;filter:drop-shadow(0 0 20px var(--gold-alpha-30));transition:all .3s ease;z-index:var(--z-content)}.seal-text{margin-top:40px;text-align:center;color:var(--gray);font-size:14px;letter-spacing:.1em}.seal-progress{margin-top:16px;width:120px;height:2px;background:var(--gold-alpha-20);border-radius:2px;overflow:hidden}.seal-progress-bar{height:100%;background:linear-gradient(90deg,var(--gold-dark),var(--gold));transition:width .1s ease}.splash-content{display:flex;flex-direction:column;align-items:center;justify-content:space-between;z-index:var(--z-sticky);text-align:center}.splash-butterfly-container{margin-bottom:32px;position:relative}.splash-butterfly-container:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:300px;height:300px;background:radial-gradient(circle,var(--gold-alpha-40) 0%,var(--gold-alpha-10) 40%,transparent 70%);animation:glowPulse 2s ease-in-out infinite;z-index:var(--z-behind)}.splash-butterfly-container:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:250px;height:250px;border:1px solid var(--gold-alpha-30);border-radius:50%;animation:circleRotate 20s linear infinite;z-index:var(--z-behind)}@keyframes glowPulse{0%,to{opacity:.6;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}@keyframes circleRotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.splash-butterfly{filter:drop-shadow(0 0 20px rgba(242,106,90,.4))}.splash-butterfly-img{width:180px;height:auto;filter:brightness(1.1) drop-shadow(0 0 20px rgba(242,106,90,.8)) drop-shadow(0 0 40px rgba(255,150,120,.6)) drop-shadow(0 0 60px rgba(255,170,140,.4)) drop-shadow(0 0 80px rgba(242,106,90,.25));transition:all .3s ease;animation:butterflyGlow 2s ease-in-out infinite}.splash-butterfly-img.loading{animation:butterflyGlow 1.5s ease-in-out infinite}.splash-butterfly-img.ready{animation:butterflyFloat 3s ease-in-out infinite,butterflyGlow 2s ease-in-out infinite}@keyframes butterflyGlow{0%,to{filter:brightness(1.05) drop-shadow(0 0 20px rgba(242,106,90,.7)) drop-shadow(0 0 40px rgba(255,150,120,.5)) drop-shadow(0 0 60px rgba(255,170,140,.35))}50%{filter:brightness(1.2) drop-shadow(0 0 28px rgba(242,106,90,1)) drop-shadow(0 0 55px rgba(255,150,120,.8)) drop-shadow(0 0 90px rgba(255,170,140,.5))}}.splash-butterfly.loading .butterfly-wing.left{animation:wingFlapLeft .4s ease-in-out infinite;transform-origin:50px 50px}.splash-butterfly.loading .butterfly-wing.right{animation:wingFlapRight .4s ease-in-out infinite;transform-origin:50px 50px}.splash-butterfly.ready{animation:butterflyFloat 2s ease-in-out infinite}.splash-butterfly.ready .butterfly-wing.left{animation:wingFlapLeftSlow 1s ease-in-out infinite;transform-origin:50px 50px}.splash-butterfly.ready .butterfly-wing.right{animation:wingFlapRightSlow 1s ease-in-out infinite;transform-origin:50px 50px}@keyframes wingFlapLeft{0%,to{transform:scaleX(1) rotate(0)}50%{transform:scaleX(.7) rotate(-5deg)}}@keyframes wingFlapRight{0%,to{transform:scaleX(1) rotate(0)}50%{transform:scaleX(.7) rotate(5deg)}}@keyframes wingFlapLeftSlow{0%,to{transform:scaleX(1) rotate(0)}50%{transform:scaleX(.85) rotate(-3deg)}}@keyframes wingFlapRightSlow{0%,to{transform:scaleX(1) rotate(0)}50%{transform:scaleX(.85) rotate(3deg)}}@keyframes butterflyFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.splash-title{font-family:var(--font-serif);font-size:32px;color:var(--gold);letter-spacing:.15em;margin-bottom:8px}.splash-loading-text{font-family:var(--font-sans);font-size:14px;color:#fffc;letter-spacing:.4em;margin-top:40px;margin-bottom:24px;text-transform:uppercase;animation:loadingFade 1.5s ease-in-out infinite}@keyframes loadingFade{0%,to{opacity:.6}50%{opacity:1}}.sparkle-text{display:inline-block;position:relative;color:var(--gold);animation:sparkle 2s ease-in-out infinite;text-shadow:0 0 10px var(--gold),0 0 20px var(--gold-alpha-60),0 0 30px var(--gold-alpha-40)}.sparkle-text:before,.sparkle-text:after{content:"✦";position:absolute;font-size:12px;color:var(--gold);opacity:0;animation:sparkle-star 2s ease-in-out infinite}.sparkle-text:before{top:-8px;right:-4px;animation-delay:0s}.sparkle-text:after{bottom:-4px;left:-4px;animation-delay:1s}@keyframes sparkle{0%,to{text-shadow:0 0 10px var(--gold),0 0 20px var(--gold-alpha-60),0 0 30px var(--gold-alpha-40);transform:scale(1)}50%{text-shadow:0 0 15px rgba(255,215,100,1),0 0 30px rgba(255,215,100,.8),0 0 45px rgba(255,215,100,.6),0 0 60px var(--gold-alpha-40);transform:scale(1.05)}}@keyframes sparkle-star{0%,20%,to{opacity:0;transform:scale(0) rotate(0)}40%{opacity:1;transform:scale(1) rotate(180deg)}60%{opacity:1;transform:scale(1.2) rotate(360deg)}80%{opacity:0;transform:scale(.5) rotate(540deg)}}.splash-subtitle{font-size:14px;color:var(--gray);letter-spacing:.3em;margin-bottom:48px}.splash-loading{display:flex;flex-direction:column;align-items:center;gap:12px}.splash-loading-bar{width:160px;height:3px;background:var(--gold-alpha-20);border-radius:3px;overflow:hidden}.splash-loading-fill{height:100%;background:linear-gradient(90deg,var(--gold-dark),var(--gold));transition:width .1s ease}.splash-loading-text{font-size:13px;color:var(--gray);letter-spacing:.05em}.splash-enter-btn{padding:16px 40px;background:transparent;border:1px solid var(--ds-apricot);border-radius:var(--radius-md);color:var(--ds-apricot);font-size:15px;font-family:var(--ds-font-display);letter-spacing:.12em;cursor:pointer;transition:all .3s ease;animation:fadeIn .6s ease;box-shadow:0 0 18px #ffaa992e}.splash-enter-btn:hover,.splash-enter-btn:active{background:var(--ds-apricot-soft);border-color:var(--ds-apricot-deep);color:var(--ds-apricot-deep);box-shadow:0 0 28px #ffaa9959;transform:scale(1.02)}.splash-enter-btn:disabled,.splash-enter-btn[aria-busy=true],.splash-enter-btn--loading{background:var(--ds-apricot-soft);border-color:var(--ds-apricot-deep);color:var(--ds-apricot-deep);box-shadow:0 0 28px #ffaa9959;cursor:progress;transform:none;opacity:.92}.splash-enter-btn:disabled:hover,.splash-enter-btn:disabled:active,.splash-enter-btn[aria-busy=true]:hover,.splash-enter-btn[aria-busy=true]:active,.splash-enter-btn--loading:hover,.splash-enter-btn--loading:active{background:var(--ds-apricot-soft);border-color:var(--ds-apricot-deep);color:var(--ds-apricot-deep);box-shadow:0 0 28px #ffaa9959;transform:none}.splash-enter-btn--loading{position:relative;padding-right:56px}.splash-enter-btn--loading:after{content:"";position:absolute;top:50%;right:22px;width:14px;height:14px;margin-top:-7px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:splash-enter-btn-spin .7s linear infinite}@keyframes splash-enter-btn-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.splash-enter-btn--loading:after{animation:none}}.seal-intro.scratch-mode{cursor:crosshair}.intro-attribution{position:absolute;bottom:calc(30px + env(safe-area-inset-bottom,20px));left:50%;transform:translate(-50%);font-size:12px;color:var(--gray);opacity:.8;white-space:nowrap;z-index:var(--z-content)}.scratch-canvas{position:absolute;inset:0;z-index:var(--z-raised);cursor:crosshair;touch-action:none}.scratch-canvas.fade-out{animation:scratchFadeOut .8s ease forwards}@keyframes scratchFadeOut{0%{opacity:1}to{opacity:0;pointer-events:none}}.scratch-reveal-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:var(--z-content)}.scratch-hint-text{margin-top:30px;font-size:14px;color:var(--gold);opacity:.8;animation:pulse-text 2s ease-in-out infinite}@keyframes pulse-text{0%,to{opacity:.5}50%{opacity:1}}.welcome-page{min-height:calc(var(--vh, 1vh) * 100);min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,var(--bg-main) 0%,var(--bg-dark) 100%);padding:24px;position:relative;overflow:hidden}.welcome-page:before{content:"";position:absolute;inset:0;background:url(/images/welcome-butterfly.png) center center / contain no-repeat;opacity:var(--welcome-illustration-opacity, .55);mix-blend-mode:var(--welcome-illustration-blend, multiply);mask-image:radial-gradient(ellipse 80% 70% at center 45%,rgba(0,0,0,1) 0%,rgba(0,0,0,.7) 40%,rgba(0,0,0,.3) 65%,transparent 90%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at center 45%,rgba(0,0,0,1) 0%,rgba(0,0,0,.7) 40%,rgba(0,0,0,.3) 65%,transparent 90%);pointer-events:none;z-index:var(--z-base)}.welcome-page:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0%,transparent 30%,var(--welcome-vignette-mid, rgba(199, 165, 130, .16)) 60%,var(--welcome-vignette-edge, rgba(143, 100, 70, .32)) 100%),linear-gradient(to bottom,var(--welcome-vignette-top, rgba(143, 100, 70, .18)) 0%,transparent 14%,transparent 86%,var(--welcome-vignette-bottom, rgba(143, 100, 70, .22)) 100%);pointer-events:none;z-index:var(--z-content)}.welcome-content{text-align:center;max-width:340px;opacity:0;transform:translateY(20px);transition:all 1s ease;position:relative;z-index:var(--z-raised)}.welcome-content.fade-in{opacity:1;transform:translateY(0)}.welcome-image{width:120px;height:auto;margin-bottom:24px;border-radius:var(--radius-md);filter:drop-shadow(0 0 20px var(--gold-alpha-40))}.welcome-title{font-family:var(--font-serif);font-size:32px;font-weight:600;color:var(--gold);margin-bottom:8px;letter-spacing:.1em}.welcome-subtitle{font-size:14px;color:var(--gray);letter-spacing:.2em;margin-bottom:32px}.welcome-divider{width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:0 auto 32px}.welcome-message{font-size:16px;color:var(--white);line-height:2;margin-bottom:24px}.welcome-description{font-size:15px;color:var(--jade);margin-bottom:48px;font-style:italic}.welcome-btn{padding:16px 48px;background:linear-gradient(135deg,rgba(139,69,69,.12) 0%,var(--gold-alpha-8) 100%);border:1px solid var(--gold);border-radius:8px;color:var(--gold);font-size:16px;font-family:var(--font-serif);letter-spacing:.1em;cursor:pointer;position:relative;box-shadow:inset 0 1px #ffffff0d;transition:all .3s ease}.welcome-btn:hover,.welcome-btn:active{background:var(--gold-alpha-15);transform:scale(1.02);box-shadow:0 0 30px var(--gold-alpha-30)}.welcome-attribution{position:absolute;bottom:20px;left:50%;transform:translate(-50%);font-size:12px;color:var(--gray);opacity:.8;white-space:nowrap}.scratch-progress{position:fixed;bottom:60px;left:50%;transform:translate(-50%);width:120px;height:4px;background:var(--gold-alpha-20);border-radius:8px;overflow:hidden;z-index:var(--z-sticky)}.scratch-progress-bar{height:100%;background:linear-gradient(90deg,var(--gold-dark),var(--gold),var(--gold-light));transition:width .1s ease;border-radius:8px}.particle-canvas{pointer-events:none}.page-header{padding:24px 20px 16px;text-align:center}.page-header-nav{padding:var(--space-md) var(--space-lg);padding-top:max(env(safe-area-inset-top,8px) + 8px,20px)}@media(min-width:768px){.mobile-frame .page-header-nav{padding-top:calc(var(--app-header-height) + var(--space-md))}}.page-header-btn{background:var(--gold-alpha-10)!important;border:1px solid var(--gold-alpha-25)!important;border-radius:var(--radius-sm)!important}.page-header-btn:hover{background:var(--gold-alpha-20)!important}.home-section{margin-bottom:var(--space-lg)}.home-section-header{display:flex;align-items:center;justify-content:space-between;min-height:44px;cursor:pointer;user-select:none;font-size:var(--ds-section-title-size, 1rem);font-weight:var(--ds-section-title-weight, 700);color:var(--gold);font-family:var(--font-sans)}.section-chevron{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;font-size:14px;color:var(--gray);transition:transform .3s ease}.section-chevron.collapsed{transform:rotate(180deg)}.home-profile-card{margin-bottom:var(--space-lg);background:var(--bg-main);border-radius:var(--radius-md);border:1px solid var(--overlay-10);overflow:hidden}.home-profile-toggle{width:100%;padding:var(--space-md) var(--space-lg);background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;color:inherit}@media(prefers-reduced-motion:reduce){.seal-ring,.scratch-hint-text{animation:none!important}.seal-butterfly,.seal-text{transition:none!important}}.home-profile-card--styled{background:var(--bg-main);border:1px solid var(--overlay-10);border-radius:24px;box-shadow:0 8px 24px #0000000f,0 2px 6px #0000000a;padding:20px 20px 16px;overflow:visible}.home-profile-header{display:flex;align-items:center;gap:16px}.home-profile-avatar{position:relative;width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--overlay-10);border:2px solid var(--bg-main);box-shadow:0 2px 8px #00000014;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.home-profile-avatar img{width:100%;height:100%;object-fit:cover}.home-profile-avatar-edit{position:absolute;bottom:-2px;right:-2px;width:20px;height:20px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-main)}.home-profile-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.home-profile-name{font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;line-height:1.2}.home-profile-sub{font-size:14px;color:var(--gray);font-weight:500}.home-profile-role{font-size:12px;color:var(--gray);opacity:.8}.home-profile-expand{background:transparent;border:none;cursor:pointer;padding:6px;color:var(--gray);display:flex;align-items:center;justify-content:center;flex-shrink:0}.home-profile-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px;margin-bottom:4px}.home-profile-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px 6px;background:var(--bg-main);border:1px solid var(--overlay-10);border-radius:16px;cursor:pointer;font-size:12px;font-weight:600;color:var(--gray);box-shadow:0 2px 6px #0000000a;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.home-profile-tile:hover{transform:translateY(-1px);box-shadow:0 4px 10px #00000014}.home-profile-tile--active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 6px 14px #9a3a2547}.home-profile-tile--active:hover{box-shadow:0 8px 18px #9a3a2557}.home-profile-body{overflow:hidden;transition:max-height .3s ease,opacity .25s ease}.home-profile-body.collapsed{max-height:0;opacity:0;padding:0 var(--space-lg)}.home-profile-body.expanded{max-height:250px;opacity:1;padding:0 var(--space-lg) var(--space-md)}.home-cta-primary{width:100%;padding:var(--space-md);background:var(--gold-alpha-15);border:1px solid var(--gold-alpha-30);border-radius:var(--radius-md);color:var(--gold);font-size:14px;font-weight:600;cursor:pointer;margin-bottom:var(--space-md);display:flex;align-items:center;justify-content:center;gap:var(--space-xs)}.home-cta-primary:hover{background:var(--gold-alpha-25)}.saju-display{padding:var(--space-lg);margin-bottom:var(--space-lg);background:var(--bg-main);border-radius:var(--radius-lg);border:1px solid var(--gold-alpha-20)}.nav-buttons{display:flex;gap:var(--space-sm);margin-bottom:var(--space-lg)}.nav-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--muted);border:1px solid var(--border);border-radius:8px;color:var(--foreground);cursor:pointer;transition:all .2s ease;flex-shrink:0}.nav-btn:hover,.nav-btn:active{background:var(--accent);border-color:var(--ring);box-shadow:var(--ds-shadow-sm)}.btn-korean{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--foreground);font-family:var(--font-sans);font-size:15px;font-weight:500;letter-spacing:.02em;cursor:pointer;transition:all .2s ease;position:relative}.btn-korean:before,.btn-korean:after{display:none}.btn-korean:hover,.btn-korean:active{background:var(--muted);border-color:var(--ring);transform:translateY(-1px);box-shadow:var(--ds-shadow-sm)}.btn-korean.primary{background:var(--primary);color:var(--primary-foreground);border:none;box-shadow:var(--ds-shadow-sm)}.btn-korean.primary:before,.btn-korean.primary:after{display:none}.btn-korean.primary:hover,.btn-korean.primary:active{filter:brightness(1.1);box-shadow:var(--ds-shadow);transform:translateY(-1px)}.icon-korean{display:inline-flex;align-items:center;justify-content:space-between;width:44px;height:44px;background:linear-gradient(135deg,rgba(139,69,69,.1) 0%,var(--gold-alpha-8) 100%);border:1px solid var(--gold-alpha-30);border-radius:8px;color:var(--gold);font-size:18px;transition:all .2s ease;position:relative}.icon-korean:before{content:"";position:absolute;inset:3px;border:1px solid var(--gold-alpha-10);border-radius:6px;pointer-events:none}.icon-korean:hover{background:linear-gradient(135deg,rgba(139,69,69,.18) 0%,var(--gold-subtle) 100%);border-color:var(--gold);box-shadow:0 2px 8px var(--gold-alpha-20)}.page-header-content{text-align:left}.page-title{font-size:24px;color:var(--white);margin-bottom:4px}.page-subtitle{font-size:13px;color:var(--gray);font-weight:300}.card{background:var(--bg-card);border-radius:var(--radius-md);padding:var(--space-sm) 0;margin:0 0 var(--space-sm);box-shadow:var(--ds-shadow-sm);border:1px solid var(--border-subtle);position:relative;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1);word-break:break-word;overflow-wrap:break-word}.card:hover{transform:translateY(-2px);box-shadow:var(--ds-shadow)}.card:active{transform:translateY(0) scale(.995)}.card.compact-card{padding:16px;margin-bottom:12px}.card.compact-card:before,.card.compact-card:after{display:none}.card:before,.card:after{display:none}.card-title{font-size:14px;color:var(--text-primary);margin-bottom:16px;letter-spacing:.04em;font-weight:600;font-family:var(--font-sans);position:relative;padding-left:0}.card-title:before{display:none}.insight-text{font-family:var(--font-serif);font-size:18px;line-height:1.8;color:var(--white);text-align:center;padding:20px 0;word-break:break-word;overflow-wrap:break-word}.insight-text strong{color:var(--gold);font-weight:600}.chart-container{display:flex;justify-content:space-between;padding:16px 0}.stability-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.stability-number{font-family:var(--font-serif);font-size:36px;font-weight:700;color:var(--gold)}.stability-label{font-size:12px;color:var(--gray);margin-top:4px}.bottom-nav{background:var(--bg-card);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);padding:8px 8px 16px;z-index:var(--z-sticky-nav)!important;border:none;border-top:1px solid var(--border-light);border-radius:0;box-shadow:0 -2px 12px #0000000f;overflow:visible;position:fixed;bottom:0;left:0;right:0;margin-left:auto;margin-right:auto;width:100%;max-width:100%;min-height:var(--bottom-nav-height);padding-bottom:max(16px,env(safe-area-inset-bottom,16px))}@media(max-width:767px){html,body{min-height:100%;overflow-x:hidden;overflow-y:auto!important;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.desktop-layout,.mobile-app-wrapper,.mobile-frame,div[class*=pull]{transform:none!important;-webkit-transform:none!important;perspective:none!important;-webkit-perspective:none!important;overflow:visible!important;will-change:auto!important;contain:none!important}.app-container{transform:none!important;-webkit-transform:none!important;perspective:none!important;-webkit-perspective:none!important;will-change:auto!important;contain:none!important;overflow:visible!important}.app-header{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;max-width:100%!important;margin:0!important;transform:none!important;-webkit-transform:none!important;z-index:var(--z-sticky-nav)!important;-webkit-backface-visibility:hidden;backface-visibility:hidden}.bottom-nav{position:fixed!important;bottom:0!important;left:0!important;right:0!important;margin-left:auto!important;margin-right:auto!important;width:100%;max-width:100%;border-radius:24px 24px 0 0!important;transform:none!important;-webkit-transform:none!important;z-index:var(--z-sticky-nav)!important;-webkit-backface-visibility:hidden;backface-visibility:hidden}}.bottom-nav:before{content:"";position:absolute;inset:0;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.06) 0%,transparent 40%);pointer-events:none}.bottom-nav-inner{display:flex;justify-content:space-around;align-items:center;gap:2px}.bottom-nav .nav-btn{background:transparent;border:none;color:#fff9;font-size:11px;font-family:var(--font-sans);display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);padding:8px 10px 6px;border-radius:14px;position:relative;min-width:52px;min-height:56px;letter-spacing:-.02em}.bottom-nav .nav-btn:before,.bottom-nav .nav-btn:after{display:none}.bottom-nav .nav-btn.active{color:var(--gold);background:var(--gold-alpha-15)}.bottom-nav .nav-btn.active span:last-child{font-weight:700;letter-spacing:0}.bottom-nav .nav-btn.active:after{content:"";display:block;position:absolute;top:0;left:50%;transform:translate(-50%);width:24px;height:3px;background:var(--gold);border-radius:0 0 4px 4px;box-shadow:0 2px 8px var(--gold-alpha-40)}.bottom-nav .nav-btn.active .nav-icon{transform:scale(1.12) translateY(-1px);filter:drop-shadow(0 0 8px var(--gold-alpha-50))}.bottom-nav .nav-btn:hover:not(.active){color:#ffffffd9;background:#ffffff14}.bottom-nav .nav-btn:active{transform:scale(.93)}.nav-icon{font-size:21px;transition:transform .25s cubic-bezier(.4,0,.2,1),filter .25s ease}.relation-item{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid rgba(148,163,184,.18)}.relation-item:last-child{border-bottom:none}.relation-name{font-size:16px;color:var(--white)}.relation-type{font-size:12px;color:var(--gray);margin-top:4px}.relation-impact{display:flex;align-items:center;gap:12px}.impact-bar{width:80px;height:4px;background:var(--gold-alpha-20);border-radius:2px;overflow:hidden}.impact-fill{height:100%;background:var(--gold);transition:width .8s ease}.impact-value{font-size:14px;color:var(--gold);font-weight:600;min-width:32px;text-align:right}.report-section{margin:0 16px 24px}.report-section-title{font-size:12px;color:var(--gray);text-transform:uppercase;letter-spacing:.15em;margin-bottom:12px}.report-list{list-style:none}.report-list li{position:relative;padding:12px 0 12px 24px;color:var(--white);font-size:15px;border-bottom:1px solid rgba(148,163,184,.18)}.report-list li:before{content:"·";position:absolute;left:8px;color:var(--gold);font-size:20px}.save-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 32px);margin:24px 16px;padding:16px 20px;background:var(--primary);border:none;border-radius:10px;color:var(--primary-foreground);font-family:var(--font-sans);font-size:15px;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;box-shadow:var(--ds-shadow-sm)}.save-btn:before,.save-btn:after{display:none}.save-btn:active{filter:brightness(.9);transform:scale(.98)}.save-btn:hover{filter:brightness(1.1);box-shadow:var(--ds-shadow)}.locked-overlay{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:48px 24px;text-align:center}.locked-icon{font-size:48px;margin-bottom:24px;opacity:.6}.locked-text{font-family:var(--font-serif);font-size:18px;color:var(--gray);line-height:1.8;margin-bottom:32px}.subscribe-btn{background:var(--primary);border:none;border-radius:10px;padding:16px 32px;color:var(--primary-foreground);font-family:var(--font-sans);font-size:15px;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:all .2s ease;position:relative;box-shadow:var(--ds-shadow-sm)}.subscribe-btn:before,.subscribe-btn:after{display:none}.subscribe-btn:active{transform:scale(.98);filter:brightness(.9)}.subscribe-btn:hover{filter:brightness(1.1);box-shadow:var(--ds-shadow)}.fade-in{animation:fadeIn .6s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .5s ease forwards}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.page-transition-overlay{position:fixed;inset:0;z-index:var(--z-toast);pointer-events:none;display:flex;align-items:center;justify-content:center}.page-transition-overlay.active{pointer-events:all}.page-transition-curtain{position:absolute;inset:0;background:radial-gradient(ellipse at center,#140f23f7,#0a0814fc);opacity:0;transition:opacity .3s ease}.page-transition-overlay.active .page-transition-curtain{opacity:1}.page-transition-content{position:relative;z-index:var(--z-raised);display:flex;flex-direction:column;align-items:center;gap:16px;opacity:0;transform:scale(.8);transition:opacity .25s ease .1s,transform .35s cubic-bezier(.34,1.56,.64,1) .1s}.page-transition-overlay.active .page-transition-content{opacity:1;transform:scale(1)}.page-transition-icon{width:48px;height:48px;filter:drop-shadow(0 0 12px var(--gold-alpha-60));animation:transitionSpin 1.2s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes transitionSpin{0%{transform:rotate(0) scale(.5);opacity:0}50%{transform:rotate(180deg) scale(1.2);opacity:1}to{transform:rotate(360deg) scale(1);opacity:1}}.page-transition-text{color:var(--gold);font-family:var(--font-sans);font-size:14px;letter-spacing:2px;animation:transitionTextReveal .6s ease .15s forwards;opacity:0}@keyframes transitionTextReveal{0%{opacity:0;letter-spacing:8px}to{opacity:1;letter-spacing:2px}}.page-transition-sparkles{position:absolute;width:120px;height:120px}.page-transition-sparkle{position:absolute;width:4px;height:4px;background:var(--gold);border-radius:50%;animation:transitionSparkle .8s ease forwards}@keyframes transitionSparkle{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.5)}to{opacity:0;transform:scale(0) translate(var(--tx, 0),var(--ty, 0))}}.credit-event-card{background:linear-gradient(135deg,var(--gold-alpha-8) 0%,var(--gold-alpha-5) 100%);border:1px solid var(--gold-alpha-20);border-radius:16px;padding:16px;margin-bottom:12px;position:relative;overflow:hidden;transition:all .3s ease}.credit-event-card:hover{border-color:var(--gold-alpha-40);transform:translateY(-2px);box-shadow:0 8px 24px var(--gold-alpha-15)}.credit-event-card.claimed{opacity:.6;border-color:#80808033}.credit-event-claim-btn{background:linear-gradient(135deg,var(--gold-dark),var(--gold));color:var(--bg-card);border:none;border-radius:12px;padding:10px 20px;font-weight:700;font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.credit-event-claim-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 16px var(--gold-alpha-40)}.credit-event-claim-btn:active:not(:disabled){transform:scale(.95)}.credit-event-claim-btn:disabled{background:#8080804d;color:var(--text-muted);cursor:default}@keyframes creditClaimed{0%{transform:scale(1)}30%{transform:scale(1.15)}60%{transform:scale(.95)}to{transform:scale(1)}}.credit-claimed-animation{animation:creditClaimed .5s cubic-bezier(.34,1.56,.64,1)}@keyframes coinDrop{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-60px) scale(.5)}}.coin-particle{position:absolute;font-size:20px;animation:coinDrop .8s ease forwards;pointer-events:none}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;color:var(--gray);margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:14px 16px;background:var(--input-background);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--foreground);font-size:15px;outline:none;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--ring);box-shadow:var(--focus-ring)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--muted-foreground)}.form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.form-row .form-group{margin-bottom:0}.radio-group{display:flex;gap:8px}.radio-btn{flex:1;padding:12px;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted-foreground);font-size:14px;cursor:pointer;transition:all .2s}.radio-btn.active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.user-greeting{text-align:center;padding:16px 24px;font-size:16px}.user-name{font-size:14px;color:var(--text-primary);font-weight:600;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zodiac-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:0 16px 16px}.zodiac-item{display:flex;flex-direction:column;align-items:center;padding:16px 8px;background:var(--bg-card);border:1px solid var(--gold-alpha-10);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.zodiac-item:active{transform:scale(.95)}.zodiac-item.active{background:var(--gold-alpha-15);border-color:var(--gold)}.zodiac-icon{font-size:28px;margin-bottom:6px}.zodiac-name{font-size:12px;color:var(--white);margin-bottom:2px}.zodiac-dates{font-size:12px;color:var(--gray)}.zodiac-detail{display:flex;flex-direction:column;gap:16px;margin-top:16px}.zodiac-header-card{border:1px solid var(--gold-alpha-30)}.zodiac-header{display:flex;align-items:center;gap:16px;margin-bottom:12px}.zodiac-large-icon{font-size:48px}.zodiac-header-info .card-title{margin-bottom:4px}.zodiac-header-info .zodiac-dates{font-size:14px}.zodiac-meta{display:flex;gap:16px;padding-top:12px;border-top:1px solid var(--gold-alpha-15)}.zodiac-meta-item{font-size:14px;color:var(--jade)}.zodiac-personality{font-size:15px;color:var(--white);line-height:1.8;margin:0}.zodiac-traits-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.trait-card{padding:16px}.trait-title{font-size:14px;font-weight:600;color:var(--gold);margin-bottom:10px}.trait-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.trait-list li{font-size:13px;color:var(--white);padding-left:12px;position:relative}.trait-list li:before{content:"•";position:absolute;left:0;color:var(--jade)}.trait-list.weakness li:before{color:var(--element-fire)}.compatibility-list{display:flex;flex-wrap:wrap;gap:10px}.compatibility-item{padding:8px 16px;background:var(--gold-alpha-15);border:1px solid var(--gold-alpha-30);border-radius:20px;font-size:14px;color:var(--gold)}.lucky-items{display:flex;flex-direction:column;gap:12px}.lucky-row{display:flex;align-items:center;gap:12px}.lucky-label{font-size:14px;color:var(--gray);min-width:40px}.lucky-values{display:flex;gap:8px}.lucky-number{width:32px;height:32px;display:flex;align-items:center;justify-content:space-between;background:var(--gold-alpha-20);border:1px solid var(--gold);border-radius:50%;font-size:14px;font-weight:600;color:var(--gold)}.lucky-color{padding:6px 12px;background:#4c7a6a33;border:1px solid var(--jade);border-radius:12px;font-size:13px;color:var(--jade)}.tarot-cards{display:flex;justify-content:space-between;gap:16px;padding:24px 12px;min-height:400px;flex-wrap:wrap}.tarot-card{width:200px;height:300px;background:linear-gradient(145deg,var(--bg-card) 0%,var(--gold-alpha-10) 100%);border:2px solid var(--gold);border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:16px;animation:cardFlip .5s ease forwards}.tarot-card.with-image{width:220px;height:330px;padding:0;overflow:hidden;background:linear-gradient(145deg,#1a1f35,var(--bg-main));border:3px solid var(--gold);box-shadow:0 8px 32px var(--gold-alpha-40);transition:transform .3s ease,box-shadow .3s ease}.tarot-card.with-image:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 12px 40px var(--gold-alpha-50)}.tarot-card-inner{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:space-between}.tarot-card-image{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:calc(var(--radius-md) - 3px)}.tarot-card-placeholder{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(145deg,#1a1f35,var(--bg-main));border-radius:calc(var(--radius-md) - 3px);overflow:hidden}.tarot-card-placeholder-bg{position:absolute;inset:0;opacity:.15}.tarot-card-bg-blur{filter:blur(4px);transform:scale(1.1)}.tarot-card-placeholder-content{position:relative;z-index:var(--z-content);display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center;padding:8px;gap:4px}.tarot-card-roman{font-size:32px;font-weight:700;color:var(--gold);text-shadow:0 2px 10px var(--gold-alpha-60);font-family:var(--font-serif)}.tarot-card-hanja{font-size:48px;font-weight:700;color:var(--white);font-family:var(--font-serif);text-shadow:0 2px 12px rgba(0,0,0,.9);margin:8px 0}.tarot-card-english{font-size:12px;color:var(--gray);text-transform:uppercase;letter-spacing:.8px;opacity:.85}.tarot-card-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(2,6,23,.95) 0%,rgba(2,6,23,.7) 50%,transparent 100%);padding:32px 10px 10px;text-align:center}.tarot-card-overlay .tarot-number{font-size:12px;color:var(--gray);margin-bottom:4px}.tarot-card-overlay .tarot-name{font-size:14px;color:var(--gold);font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.9)}.tarot-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:space-between;width:100%;color:var(--gray);font-size:14px;gap:16px}.tarot-placeholder-cards{display:flex;gap:12px;justify-content:space-between}.tarot-card-back{width:140px;height:210px;border-radius:var(--radius-md);overflow:hidden;border:2px solid var(--gold-alpha-50);opacity:.7;transition:all .3s ease}.tarot-card-back:hover{opacity:1;transform:translateY(-6px) scale(1.03);box-shadow:0 8px 24px var(--gold-alpha-30)}.tarot-card-back .tarot-card-image{width:100%;height:100%;object-fit:cover}@keyframes cardFlip{0%{opacity:0;transform:rotateY(90deg)}to{opacity:1;transform:rotateY(0)}}.tarot-number{font-size:12px;color:var(--gray);margin-bottom:8px}.tarot-name{font-size:13px;color:var(--gold);text-align:center;font-weight:500}@media(max-width:768px){.tarot-cards{gap:10px;padding:16px 8px;min-height:auto}.tarot-card{width:calc(33.33% - 10px);max-width:140px;height:auto;aspect-ratio:2/3;padding:8px}.tarot-card.with-image{width:calc(33.33% - 10px);max-width:140px;height:auto;aspect-ratio:2/3;border-width:2px}.tarot-card-back{width:calc(33.33% - 10px);max-width:140px;height:auto;aspect-ratio:2/3}.tarot-card-overlay .tarot-number,.tarot-card-overlay .tarot-name{font-size:12px}.tarot-card-roman{font-size:16px}.tarot-card-hanja,.tarot-card-english{font-size:12px}}@media(max-width:480px){.tarot-cards{gap:8px;padding:12px 6px}.tarot-card,.tarot-card.with-image,.tarot-card-back{width:calc(33.33% - 6px);max-width:110px}.tarot-card-overlay .tarot-name{font-size:12px}.tarot-card-roman{font-size:14px}.tarot-card-hanja,.tarot-card-english{font-size:12px}}.tarot-details{display:flex;flex-direction:column;gap:16px;margin-top:20px}.tarot-detail-card{border:1px solid var(--gold-alpha-30)}.tarot-section{margin-bottom:16px}.tarot-section-title{font-size:14px;font-weight:600;color:var(--gold);margin-bottom:8px}.tarot-section-text{font-size:14px;color:var(--white);line-height:1.7;margin:0}.tarot-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.tarot-keyword{padding:6px 12px;background:var(--gold-alpha-15);border:1px solid var(--gold-alpha-30);border-radius:20px;font-size:12px;color:var(--gold)}.tarot-fortunes{display:flex;flex-direction:column;gap:10px;margin-bottom:16px;padding:12px;background:var(--muted);border-radius:var(--radius-sm)}.tarot-fortune-item{display:flex;align-items:center;gap:10px}.fortune-label{flex-shrink:0;font-size:13px;color:var(--gray);min-width:60px;word-break:break-word;overflow-wrap:break-word}.fortune-value{font-size:13px;color:var(--white);line-height:1.5;word-break:break-word;overflow-wrap:break-word}.tarot-advice{padding:12px;background:var(--muted);border-left:3px solid var(--primary);border-radius:var(--radius-sm);font-size:14px;color:var(--foreground);line-height:1.6}.tarot-advice strong{color:var(--foreground);font-weight:600}.button-group{display:flex;flex-direction:column;gap:12px;padding:0 16px}.save-btn.gold{background:var(--primary);border:none;color:var(--primary-foreground)}.question-input{width:100%;padding:14px 16px;background:var(--input-background);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--foreground);font-size:15px;outline:none}.dream-input{width:100%;padding:16px;background:var(--input-background);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--foreground);font-size:15px;resize:none;outline:none;font-family:inherit;line-height:1.6}.dream-input:focus{border-color:var(--ring);box-shadow:var(--focus-ring)}.dream-mode-toggle{display:flex;gap:8px;margin-bottom:16px}.dream-mode-toggle .mode-btn{flex:1;padding:12px 16px;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted-foreground);font-size:14px;cursor:pointer;transition:all .3s ease}.dream-mode-toggle .mode-btn.active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.dream-mode-toggle .mode-btn:hover:not(.active){background:var(--accent);border-color:var(--ring)}.dream-category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.dream-category-tabs .category-tab{padding:10px 16px;background:var(--muted);border:1px solid var(--border);border-radius:20px;color:var(--muted-foreground);font-size:13px;cursor:pointer;transition:all .3s ease;min-height:44px}.dream-category-tabs .category-tab.active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground);font-weight:500}.dream-category-tabs .category-tab:hover:not(.active){border-color:var(--ring);color:var(--foreground);background:var(--accent)}.dream-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:600px){.dream-grid{grid-template-columns:repeat(2,1fr)}}.dream-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:16px;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:var(--ds-shadow-sm)}.dream-card:hover{border-color:var(--ring);transform:translateY(-2px);box-shadow:var(--ds-shadow)}.dream-card-icon{font-size:32px;margin-bottom:8px}.dream-card-name{font-size:14px;color:var(--white);margin-bottom:6px;font-weight:500}.dream-card-fortune{font-size:12px;font-weight:600}.dream-detail{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--ds-shadow)}.dream-detail .back-btn{background:transparent;border:none;color:var(--foreground);font-size:14px;cursor:pointer;padding:0;margin-bottom:16px;display:flex;align-items:center;gap:4px}.dream-detail .back-btn:hover{text-decoration:underline}.dream-detail-header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.dream-detail-icon{font-size:48px}.dream-detail-name{font-size:20px;color:var(--white);margin:0 0 4px;font-family:var(--font-sans)}.dream-detail-category{font-size:13px;color:var(--gray-dim)}.dream-fortune-badge{display:inline-block;padding:8px 20px;border-radius:20px;font-size:14px;font-weight:600;border:1px solid;margin-bottom:20px}.dream-section{margin-bottom:20px}.dream-section h4{font-size:14px;color:var(--gold);margin:0 0 8px;font-weight:600}.dream-section p{font-size:15px;color:var(--gray);line-height:1.7;margin:0}.dream-section.lucky-action{background:var(--gold-alpha-10);border-radius:var(--radius-sm);padding:16px;border-left:3px solid var(--gold)}.dream-section.lucky-action h4{margin-bottom:6px}.dream-section.lucky-action p{color:var(--white)}.card-desc{font-size:14px;color:var(--gray-dim);margin-bottom:16px;line-height:1.6;word-break:break-word;overflow-wrap:break-word}.face-reading-card{text-align:center}.camera-container{margin-top:16px;position:relative}.camera-video{width:100%;max-width:320px;border-radius:var(--radius-md);border:2px solid var(--gold-alpha-30);transform:scaleX(-1)}.camera-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;background:var(--muted);border:2px dashed var(--border);border-radius:var(--radius-md)}.camera-icon{font-size:64px;margin-bottom:20px;opacity:.5}.camera-buttons{margin:0 auto;display:flex;flex-direction:column;gap:12px;width:100%;max-width:100%}.camera-error-text{margin-top:16px;color:var(--element-fire);font-size:13px;text-align:center}.error-text{margin:12px 0;padding:12px 16px;background:#f871711a;border:1px solid rgba(248,113,113,.3);border-radius:var(--radius-sm);color:var(--element-fire);font-size:14px;text-align:center}.camera-controls{padding-bottom:100px;margin-top:16px}.capture-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:linear-gradient(135deg,var(--gold-dark),var(--gold));border:none;border-radius:var(--radius-md);color:var(--bg-dark);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.capture-btn:hover{transform:scale(1.02);box-shadow:0 4px 20px var(--gold-alpha-30)}.capture-icon{font-size:20px}.captured-preview{margin-top:16px}.captured-image{width:100%;max-width:320px;border-radius:var(--radius-md);border:2px solid var(--gold);transform:scaleX(-1)}.capture-actions{display:flex;gap:12px;justify-content:space-between;margin-top:16px}.save-btn.outline{background:transparent;border:1px solid var(--gold);color:var(--gold)}.save-btn.outline:hover{background:var(--gold-alpha-10)}.camera-error{padding:24px;text-align:center;color:var(--gray)}.camera-error p{margin-bottom:16px}.face-reading-result{text-align:left;color:var(--white);font-size:15px;line-height:1.8}.face-reading-result p{margin:0}.loading-text{text-align:center;color:var(--gray);padding:24px;font-size:14px}.locked-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:40px 24px;margin:16px;text-align:center;border:1px solid var(--gold-alpha-20)}.lock-icon{font-size:48px;margin-bottom:16px}.locked-card h2{color:var(--gold);margin-bottom:12px}.locked-card p{color:var(--gray);font-size:15px;line-height:1.6;margin-bottom:24px}.premium-features{list-style:none;text-align:left;padding:0;margin-bottom:24px}.premium-features li{padding:10px 0;color:var(--white);font-size:14px;border-bottom:1px solid rgba(148,163,184,.18)}.modal-overlay{position:fixed;inset:0;width:100vw;height:calc(var(--vh, 1vh) * 100);height:100dvh;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:var(--z-modal);animation:fadeIn .3s ease;overflow:auto;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}.modal-content{background:var(--bg-card);border-radius:16px;border:1px solid var(--border-subtle);padding:24px;width:calc(100% - 32px);max-width:440px;max-height:80vh;max-height:80dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;position:relative;animation:slideUp .3s ease;box-sizing:border-box;outline:none;box-shadow:var(--ds-shadow-lg)}@media(max-width:479px){.modal-content{max-width:100%;padding:20px}}.modal-content:focus-visible{outline:2px solid var(--ring);outline-offset:2px}body.modal-open{overflow:hidden}@media(min-width:768px){.modal-content{max-width:500px}}.modal-close{position:absolute;top:12px;right:12px;background:var(--muted);border:1px solid var(--border);border-radius:50%;width:44px;height:44px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;color:var(--muted-foreground);font-size:22px;cursor:pointer;transition:all .2s;z-index:var(--z-sticky)}.modal-close:hover{background:var(--accent);color:var(--foreground)}.modal-header{margin-bottom:20px;padding-right:32px}.modal-title{font-family:var(--font-sans);font-size:20px;font-weight:600;color:var(--text-primary);margin:0}.modal-body{color:var(--white);word-break:break-word;overflow-wrap:break-word}.modal-body p{margin-bottom:12px;line-height:1.7;font-size:14px;word-break:break-word;overflow-wrap:break-word}.modal-body .detail-section,.nabi-popup-content .detail-section{margin-bottom:20px}.modal-body .detail-label,.nabi-popup-content .detail-label{font-size:13px;color:var(--jade);margin-bottom:6px;display:block;word-break:break-word;overflow-wrap:break-word}.modal-body .detail-value,.nabi-popup-content .detail-value{font-size:15px;color:var(--white);line-height:1.6;word-break:break-word;overflow-wrap:break-word}.modal-body .detail-highlight{color:var(--gold);font-weight:500}.modal-body .score-breakdown,.nabi-popup-content .score-breakdown{display:flex;flex-direction:column;gap:12px;margin-top:16px}.modal-body .score-item,.nabi-popup-content .score-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--muted);border-radius:var(--radius-sm);border-left:3px solid var(--primary);min-width:0}.modal-body .score-label{font-size:14px;color:var(--gray);word-break:break-word;overflow-wrap:break-word}.modal-body .score-value{font-size:16px;font-weight:600;color:var(--gold);word-break:break-word;overflow-wrap:break-word}.modal-body .insight-highlight{font-size:18px;color:var(--gold);font-weight:500;line-height:1.8;text-align:center;padding:16px;background:var(--gold-alpha-10);border-radius:var(--radius-md);border-left:3px solid var(--gold);word-break:break-word;overflow-wrap:break-word}.modal-body .keyword-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.modal-body .keyword-tag{font-size:13px;padding:6px 14px;background:#4c7a6a33;color:var(--jade);border-radius:20px;border:1px solid rgba(76,122,106,.3);word-break:break-word;overflow-wrap:break-word}.modal-body .detail-list,.nabi-popup-content .detail-list{list-style:none;padding:0;margin:10px 0 0}.modal-body .detail-list li,.nabi-popup-content .detail-list li{font-size:14px;color:var(--foreground);padding:10px 14px 10px 28px;background:var(--muted);border-radius:var(--radius-sm);margin-bottom:8px;position:relative;word-break:break-word;overflow-wrap:break-word}.modal-body .detail-list li:before,.nabi-popup-content .detail-list li:before{content:"✓";position:absolute;left:10px;color:var(--jade);font-weight:600}.modal-body .detail-list.warning li,.nabi-popup-content .detail-list.warning li{background:#8b1a1a26;border-left:3px solid #8B1A1A}.modal-body .detail-list.warning li:before,.nabi-popup-content .detail-list.warning li:before{content:"⚠";color:#e57373}.clickable-card{cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s}.clickable-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px var(--gold-alpha-15);border-color:var(--gold-alpha-40)}.clickable-card:active{transform:translateY(0)}.card-click-hint{font-size:13px;color:var(--jade);margin-top:8px;display:flex;align-items:center;gap:4px}.subscribe-header{text-align:center;margin-bottom:24px}.subscribe-icon{font-size:48px;margin-bottom:12px}.subscribe-header h2{color:var(--white);margin-bottom:8px}.subscribe-header p{color:var(--gray);font-size:14px}.subscribe-price{text-align:center;margin-bottom:24px}.price-amount{font-family:var(--font-serif);font-size:36px;font-weight:700;color:var(--gold)}.price-period{font-size:16px;color:var(--gray)}.subscribe-features{list-style:none;padding:0;margin-bottom:24px}.subscribe-features li{padding:10px 0;color:var(--white);font-size:14px;border-bottom:1px solid rgba(148,163,184,.18)}.subscribe-btn.full{width:100%;padding:16px}.subscribe-note{text-align:center;font-size:12px;color:var(--gray);margin-top:16px}.gold-text{color:var(--gold)!important}.lucky-items{text-align:center}.lucky-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}.lucky-item{display:flex;flex-direction:column;align-items:center;padding:16px 8px;background:var(--gold-alpha-10);border-radius:var(--radius-sm)}.lucky-label{font-size:13px;color:var(--gray);margin-bottom:6px}.lucky-value{font-size:16px;color:var(--gold);font-weight:600}.report-list.warning li:before{content:"!";color:#e57373}.save-btn:disabled{opacity:.5;cursor:not-allowed}.people-grid{display:flex;flex-direction:column;gap:12px;padding:0 16px}.person-card{display:flex;flex-direction:column;padding:16px;position:relative}.person-card-header{display:flex;align-items:center;gap:12px;width:100%}.person-card.expanded{border-color:var(--gold)}.person-card.self{border:1px solid var(--gold);background:var(--gold-alpha-10)}.person-icon{font-size:32px;width:48px;height:48px;display:flex;align-items:center;justify-content:space-between;background:var(--gold-alpha-15);border-radius:50%}.person-info{flex:1}.person-name{font-size:16px;font-weight:600;color:var(--white);margin-bottom:4px}.person-hanja{font-size:13px;font-weight:400;color:var(--gold);margin-left:6px;font-family:var(--font-serif)}.person-relation{font-size:12px;color:var(--gold);margin-bottom:2px}.person-birth{font-size:12px;color:var(--gray)}.person-weight{font-size:13px;color:var(--gold);background:var(--gold-alpha-15);padding:4px 10px;border-radius:12px}.remove-person{background:none;border:none;color:var(--gray);font-size:18px;cursor:pointer;opacity:.6;margin-left:auto;padding:4px 8px}.remove-person:hover{opacity:1;color:#e57373}.add-person-btn{margin-top:24px}.person-checkbox{width:24px;height:24px;min-width:24px;border:2px solid var(--gold-alpha-40);border-radius:8px;background:transparent;color:transparent;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all .2s ease}.person-checkbox:hover{border-color:var(--gold);background:var(--gold-alpha-10)}.person-checkbox.checked{background:linear-gradient(135deg,var(--gold-dark),var(--gold));border-color:var(--gold);color:var(--bg-dark)}.person-card.selected{border:2px solid var(--gold);box-shadow:0 0 15px var(--gold-alpha-20)}.person-card{padding-left:48px}.person-card.self{padding-left:20px}.selection-hint{text-align:center;padding:16px;color:var(--jade);font-size:14px;background:#4c7a6a1a;border-radius:var(--radius-sm);margin:16px;border:1px dashed rgba(76,122,106,.3)}.selection-count{color:var(--gold);font-weight:600}.relation-fortune-section{padding:0 16px 20px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-title{font-family:var(--font-serif);font-size:var(--text-h4);color:var(--gold);letter-spacing:.05em}.section-badge{background:var(--gold-alpha-15);color:var(--gold);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);font-size:var(--text-xs)}.relation-cards-scroll{display:flex;flex-direction:column;gap:12px}.relation-fortune-card{border-left:3px solid var(--gold)}.relation-fortune-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.relation-person-badge{display:flex;align-items:center;gap:12px}.relation-icon{font-size:28px;width:44px;height:44px;display:flex;align-items:center;justify-content:space-between;background:var(--gold-alpha-15);border-radius:50%}.relation-name{font-size:16px;font-weight:600;color:var(--white)}.relation-type{font-size:12px;color:var(--gold)}.relation-score-badge{text-align:center;background:linear-gradient(135deg,var(--gold-alpha-20),var(--gold-alpha-10));padding:8px 16px;border-radius:8px;border:1px solid var(--gold-alpha-30)}.relation-score{display:block;font-size:24px;font-weight:700;color:var(--gold);line-height:1}.relation-score-label{font-size:12px;color:var(--gray)}.relation-loading{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:12px;padding:24px;color:var(--gray);font-size:14px}.loading-spinner{width:24px;height:24px;border:2px solid var(--gold-alpha-20);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite}.relation-analyze-btn{padding:10px 20px;background:var(--muted);border:1px solid var(--border);border-radius:8px;color:var(--foreground);font-size:14px;cursor:pointer;transition:all .2s ease}.relation-analyze-btn:hover{background:var(--accent);border-color:var(--ring)}.relation-fortune-content{display:flex;flex-direction:column;gap:12px}.relation-advice-section{padding:12px;background:var(--muted);border-radius:8px}.relation-advice-label{font-size:12px;color:var(--gold);margin-bottom:8px;font-weight:500}.relation-advice-text{font-size:14px;color:var(--white);line-height:1.6;margin:0}.relation-advice-text.small{font-size:13px;color:var(--gray)}.relation-lucky-action{display:flex;align-items:center;gap:8px;padding:10px 12px;background:linear-gradient(135deg,#4c7a6a26,#4c7a6a0d);border-radius:8px;font-size:13px;color:var(--jade)}.lucky-icon{font-size:16px}.relation-manage-btn{width:100%;padding:12px;margin-top:12px;background:transparent;border:1px dashed var(--gold-alpha-40);border-radius:var(--radius-sm);color:var(--gold);font-size:14px;cursor:pointer;transition:all .2s ease}.relation-manage-btn:hover{background:var(--gold-alpha-10);border-style:solid}.relation-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.relation-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 4px;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted-foreground);font-size:13px;cursor:pointer;transition:all .2s}.relation-btn span:first-child{font-size:20px}.relation-btn.active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.relation-list{display:flex;flex-direction:column;gap:8px;padding:0 16px 16px}.relation-item-btn{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;padding-top:max(env(safe-area-inset-top,20px) + 16px,48px);background:var(--bg-card);border:1px solid var(--gold-alpha-10);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.relation-item-btn:active,.relation-item-btn.active{background:var(--gold-alpha-10);border-color:var(--gold)}.relation-item-left{display:flex;align-items:center;gap:12px}.relation-item-icon{font-size:24px}.relation-item-name{font-size:15px;color:var(--white);font-weight:500}.relation-item-type{font-size:12px;color:var(--gray)}.relation-item-arrow{color:var(--gold);font-size:18px}.relation-result{margin-top:16px}.relation-pair{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid rgba(148,163,184,.18);margin-bottom:20px}.relation-person{display:flex;flex-direction:column;align-items:center;gap:8px}.relation-person span:first-child{font-size:32px}.relation-person span:last-child{font-size:14px;color:var(--white)}.relation-vs{font-size:24px;color:var(--gold)}.compatibility-score{text-align:center;padding:24px 0;border-bottom:1px solid rgba(148,163,184,.18);margin-bottom:20px}.compat-number{font-family:var(--font-serif);font-size:56px;font-weight:700;color:var(--gold)}.compat-label{font-size:13px;color:var(--gray);margin-top:4px}.analysis-section{padding:16px 0;border-bottom:1px solid rgba(148,163,184,.18)}.analysis-section:last-child{border-bottom:none}.analysis-title{font-size:12px;color:var(--gold);letter-spacing:.05em;margin-bottom:8px}.analysis-text{font-size:14px;color:var(--white);line-height:1.7}.analysis-section.advice{background:var(--gold-alpha-8);margin:0 -24px;padding:16px 24px}.analysis-section.caution{background:#e5737314;margin:0 -24px;padding:16px 24px}.analysis-section.caution .analysis-title{color:#e57373}.fortune-tabs{display:flex;gap:8px;padding:0 16px 16px}.fortune-tab{flex:1;padding:12px;background:var(--bg-card);border:1px solid var(--gold-alpha-20);border-radius:var(--radius-sm);color:var(--gray);font-size:13px;cursor:pointer;transition:all .2s;min-height:44px}.fortune-tab.active{background:var(--gold-alpha-15);border-color:var(--gold);color:var(--gold)}.voice-input-container{margin-bottom:16px}.voice-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:16px;background:var(--gold-alpha-10);border:1px dashed var(--gold);border-radius:var(--radius-md);color:var(--gold);font-size:14px;cursor:pointer;transition:all .3s ease}.voice-btn:hover,.voice-btn:active{background:var(--gold-alpha-20)}.voice-btn.listening{background:#e5737326;border-color:#e57373;color:#e57373;animation:pulse 1.5s ease-in-out infinite}.voice-icon{font-size:20px}.voice-wave{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-top:16px;height:32px}.wave-bar{width:4px;height:100%;background:var(--gold);border-radius:2px;animation:waveAnimation .8s ease-in-out infinite}.wave-bar:nth-child(1){animation-delay:0s}.wave-bar:nth-child(2){animation-delay:.1s}.wave-bar:nth-child(3){animation-delay:.2s}.wave-bar:nth-child(4){animation-delay:.3s}.wave-bar:nth-child(5){animation-delay:.4s}@keyframes waveAnimation{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.voice-transcript{margin-top:12px;padding:12px;background:var(--gold-alpha-8);border-radius:var(--radius-sm);border-left:3px solid var(--gold)}.voice-transcript p{font-size:14px;color:var(--white);font-style:italic;line-height:1.6}.voice-error{font-size:12px;color:#e57373;margin-top:8px}.card-desc{font-size:13px;color:var(--gray);margin-bottom:16px;line-height:1.5;word-break:break-word;overflow-wrap:break-word}.about-me-input{width:100%;padding:14px 16px;background:var(--input-background);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--foreground);font-size:14px;font-family:inherit;resize:none;outline:none;line-height:1.6}.about-me-input:focus{border-color:var(--ring);box-shadow:var(--focus-ring)}.about-me-input::placeholder{color:var(--muted-foreground)}.app-header{display:flex;align-items:center;justify-content:space-between;min-height:var(--app-header-height);box-sizing:border-box;padding:var(--space-md) var(--space-xl);padding-top:max(var(--space-md),env(safe-area-inset-top,var(--space-md)));background:var(--bg-card);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);border-bottom:1px solid var(--border-light);box-shadow:0 1px 8px #0000000f;position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%;max-width:100%;z-index:var(--z-sticky-nav)!important;pointer-events:auto!important}@media(max-width:767px){.app-header,.mobile-frame .app-header{position:fixed!important;top:0!important;left:0!important;right:0!important;max-width:100%!important;margin:0!important;z-index:var(--z-sticky-nav)!important;border-radius:0!important}}@media(min-width:1024px){.mobile-frame .app-header{position:sticky!important;top:0!important;left:0!important;right:0!important;transform:none!important;max-width:100%;border-radius:40px 40px 0 0;margin-left:0!important;margin-right:0!important;width:100%!important}.mobile-frame .app-container{padding-top:0!important}}.app-container{padding-top:calc(var(--app-header-height) + var(--space-lg) + env(safe-area-inset-top,0px))}@media(min-width:1024px){.mobile-frame .app-container{padding-top:0!important}}.app-header-left{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.hamburger-btn{display:flex!important;justify-content:center;align-items:center;width:40px;height:40px;min-width:40px;min-height:40px;flex-shrink:0;background:transparent;border:none;cursor:pointer;padding:0;position:relative;z-index:var(--z-sticky);pointer-events:auto!important;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.hamburger-icon{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:22px;height:18px}.hamburger-bar{display:block;width:22px;height:2.5px;background:var(--primary, #ffaa99);border-radius:2px;transition:background .2s ease}.hamburger-btn:hover .hamburger-bar{background:var(--primary-hover, var(--ds-coral-signature-deep))}.app-header-logo{display:flex;align-items:center;gap:8px}.header-logo-img{width:32px;height:32px;object-fit:contain;object-position:center}.header-logo-text{font-family:var(--font-serif);font-size:20px;background:linear-gradient(135deg,var(--gold-dark) 0%,#E8D5A3 50%,var(--gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;letter-spacing:.15em;text-shadow:0 2px 10px var(--gold-alpha-30)}.app-header-actions{display:flex;align-items:center;gap:6px;flex-shrink:1;min-width:0;overflow:hidden}.notification-bell-btn{position:relative;transition:transform .2s ease}.notification-bell-btn:hover{transform:scale(1.1)}.notification-bell-btn:active{transform:scale(.95)}.notification-badge{animation:notificationPop .3s ease-out}@keyframes notificationPop{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}.notification-panel{animation:notifModalIn .25s ease-out}@keyframes notifModalIn{0%{opacity:0}to{opacity:1}}.notification-item{transition:background .2s ease}.notification-item:hover{background:var(--gold-alpha-8)!important}.notification-item.unread{border-left:3px solid var(--gold)}.notification-item.read{border-left:3px solid transparent}.notification-panel::-webkit-scrollbar{width:4px}.notification-panel::-webkit-scrollbar-track{background:transparent}.notification-panel::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.notification-panel>div:last-child::-webkit-scrollbar{width:4px}.notification-panel>div:last-child::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.header-btn{padding:6px 10px;border-radius:var(--radius-sm);font-size:12px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.login-btn{background:linear-gradient(135deg,var(--primary),var(--primary-hover, var(--ds-coral-signature-deep)));border:none;color:#fff;font-weight:700;border-radius:var(--radius-full, 9999px);padding:8px 18px;font-size:13px;box-shadow:0 2px 8px #f26a5a4d;letter-spacing:.01em}.login-btn:hover{background:linear-gradient(135deg,var(--primary-hover, var(--ds-coral-signature-deep)),var(--primary));box-shadow:0 4px 14px #f26a5a66;transform:translateY(-1px)}.logout-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:var(--text-muted);font-size:12px;padding:6px 10px;border-radius:16px}.logout-btn:hover{background:#ffffff1f;border-color:#ffffff40;color:var(--text-primary)}.admin-btn{background:var(--muted);border:1px solid var(--border);color:var(--muted-foreground);font-size:12px;padding:6px 10px;border-radius:6px;cursor:pointer;transition:background .15s,transform .1s,box-shadow .15s;user-select:none}.admin-btn:hover{background:var(--accent);color:var(--foreground);box-shadow:0 1px 4px #0000000f}.admin-btn:active{transform:scale(.96);background:var(--accent)}.admin-btn.primary{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.admin-btn.primary:hover{opacity:.9}.user-info{display:flex;align-items:center;gap:6px;padding:5px 10px;background:linear-gradient(135deg,var(--gold-alpha-15) 0%,var(--gold-alpha-8) 100%);border:1px solid var(--gold-alpha-30);border-radius:20px;transition:all .3s ease}.user-info:hover{background:linear-gradient(135deg,var(--gold-alpha-25) 0%,var(--gold-alpha-15) 100%);border-color:var(--gold-alpha-50);transform:translateY(-1px);box-shadow:0 4px 15px var(--gold-alpha-20)}.user-avatar{width:24px;height:24px;border-radius:50%;border:1px solid var(--gold-alpha-60);box-shadow:0 1px 4px var(--gold-alpha-30);background:linear-gradient(135deg,var(--bg-card),var(--bg-overlay))}.user-name{font-size:12px;color:var(--text-primary);font-weight:600;max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-dashboard{padding-bottom:40px}.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px;margin-bottom:20px}.admin-tab{flex-shrink:0;padding:10px 16px;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted-foreground);font-size:14px;cursor:pointer;transition:all .2s ease}.admin-tab.active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.admin-tab:hover:not(.active){background:var(--accent);color:var(--foreground)}.admin-category-tabs{display:flex;flex-wrap:wrap;row-gap:0;gap:0;padding:0 16px;margin-bottom:0;border-bottom:1px solid var(--border)}.admin-category-tab{padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--muted-foreground);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;position:relative}.admin-category-tab:hover{color:var(--foreground)}.admin-category-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.admin-sub-tabs{display:flex;flex-wrap:wrap;gap:6px;row-gap:10px;padding:12px 16px;margin-bottom:16px;overflow-x:hidden}.admin-sub-tab{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--muted);border:1px solid var(--border);border-radius:20px;color:var(--muted-foreground);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.admin-sub-tab:hover{background:var(--accent);border-color:var(--ring);color:var(--foreground)}.admin-sub-tab.active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground);font-weight:600}.admin-sub-tab-icon{font-size:14px;font-family:var(--font-serif);font-weight:600;line-height:1}.admin-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 16px}.stat-card{background:var(--card);border-radius:var(--radius-md);padding:20px;text-align:center;border:1px solid var(--border)}.stat-value{font-family:var(--font-serif);font-size:28px;font-weight:700;color:var(--foreground);margin-bottom:4px}.stat-label{font-size:13px;color:var(--muted-foreground)}.stat-sub{font-size:13px;color:var(--chart-1);margin-top:6px}.admin-users-list,.admin-banners{padding:0 16px}.users-table{max-height:400px;overflow-y:auto}.user-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(148,163,184,.18)}.user-row-info{display:flex;align-items:center;gap:10px}.user-row-avatar{width:36px;height:36px;border-radius:50%}.user-row-name{font-size:14px;color:var(--white)}.user-row-email,.user-row-date{font-size:12px;color:var(--gray)}.banner-name{font-size:14px;color:var(--white)}.banner-stats{font-size:12px;color:var(--gray)}.banner-status{font-size:12px;padding:4px 8px;border-radius:8px}.banner-status.active{background:#4c7a6a33;color:var(--jade)}.banner-status.inactive{background:#94a3b81a;color:var(--gray)}.banners-list{display:flex;flex-direction:column;gap:0}.banner-item{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid rgba(148,163,184,.18);gap:16px;flex-wrap:wrap}.banner-preview{flex-shrink:0;width:120px;height:80px;background:var(--muted);border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center}.banner-preview img{width:100%;height:100%;object-fit:cover}.banner-info{flex:1;min-width:150px;display:flex;flex-direction:column;gap:4px}.banner-position{font-size:12px;color:var(--jade)}.banner-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap}.banner-actions .toggle-btn,.banner-actions .delete-btn{padding:6px 12px;border-radius:6px;font-size:12px;cursor:pointer;border:none;transition:all .2s}.banner-actions .toggle-btn{background:var(--gold-alpha-20);color:var(--gold)}.banner-actions .toggle-btn:hover{background:var(--gold-alpha-30)}.banner-actions .delete-btn{background:#ef444433;color:var(--error)}.banner-actions .delete-btn:hover{background:#ef44444d}.empty-text{text-align:center;color:var(--gray);padding:24px;font-size:14px}.yearly-keyword-card{text-align:center;padding:32px 24px}.yearly-keyword{font-family:var(--font-serif);font-size:28px;font-weight:700;color:var(--gold);margin-bottom:8px}.yearly-subtitle{font-size:14px;color:var(--gray)}.yearly-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 16px;margin-bottom:16px}.yearly-stat{background:var(--bg-card);border-radius:var(--radius-md);padding:20px;text-align:center;border:1px solid var(--gold-alpha-10)}.yearly-stat-icon{font-size:24px;margin-bottom:8px}.yearly-stat-label{font-size:12px;color:var(--gray);margin-bottom:4px}.yearly-stat-value{font-size:16px;color:var(--white);font-weight:600}.quarterly-chart{display:flex;justify-content:space-around;align-items:flex-end;height:150px;padding:20px 0}.quarter-bar-container{display:flex;flex-direction:column;align-items:center;gap:8px}.quarter-bar{width:40px;background:linear-gradient(180deg,var(--gold),var(--gold-dark));border-radius:4px 4px 0 0;display:flex;align-items:center;justify-content:space-between;padding-top:8px;min-height:20px;transition:height .5s ease}.quarter-value{font-size:12px;font-weight:600;color:var(--bg-dark)}.quarter-label{font-size:12px;color:var(--gray)}.yearly-link-card{cursor:pointer;transition:transform .2s ease;margin-top:16px}.yearly-link-card:hover{transform:translateY(-2px)}.yearly-link-content{display:flex;align-items:center;gap:12px}.yearly-link-icon{font-size:24px}.yearly-link-text{flex:1}.yearly-link-title{font-size:15px;font-weight:600;color:var(--white);margin-bottom:2px}.yearly-link-desc{font-size:12px;color:var(--gray)}.yearly-link-arrow{font-size:18px;color:var(--gold)}.hourly-fortune-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.hourly-item{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:14px;transition:all .3s ease;box-shadow:var(--ds-shadow-sm)}.hourly-item.current{background:var(--muted);border-color:var(--ring);box-shadow:var(--ds-shadow)}.hourly-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.hourly-icon{font-size:20px}.hourly-time{font-size:14px;font-weight:600;color:var(--white)}.hourly-label{font-size:12px;color:var(--gray)}.current-badge{background:var(--gold);color:var(--bg-dark);font-size:12px;font-weight:600;padding:3px 8px;border-radius:10px;margin-left:auto}.hourly-content{display:flex;flex-direction:column;gap:8px}.hourly-score-bar{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.hourly-score-fill{height:100%;border-radius:3px;transition:width .5s ease}.hourly-details{display:flex;justify-content:space-between;align-items:center}.hourly-score{font-size:14px;font-weight:600}.hourly-advice{font-size:13px;color:var(--gray)}.daily-fortune-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.daily-item{display:flex;align-items:center;gap:12px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:12px 14px;transition:all .3s ease;box-shadow:var(--ds-shadow-sm)}.daily-item.today{background:var(--muted);border-color:var(--ring)}.daily-date-section{display:flex;align-items:center;gap:8px;min-width:90px}.daily-date{font-size:14px;font-weight:600;color:var(--white)}.daily-day{font-size:12px;color:var(--gray);background:#ffffff1a;padding:2px 6px;border-radius:8px}.daily-day.sunday{color:var(--element-fire);background:#f8717126}.daily-day.saturday{color:var(--element-water);background:#60a5fa26}.today-badge{background:var(--gold);color:var(--bg-dark);font-size:12px;font-weight:600;padding:2px 6px;border-radius:8px}.daily-score-section{display:flex;align-items:center;justify-content:space-between}.daily-score-circle{width:40px;height:40px;border:2px solid;border-radius:50%;display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:700}.daily-advice-section{flex:1}.daily-advice{font-size:13px;color:var(--gray);line-height:1.4}.fortune-summary{display:flex;flex-direction:column;gap:14px;margin-top:12px}.summary-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--gold-alpha-10)}.summary-item:last-child{border-bottom:none}.summary-label{min-width:60px;font-size:14px;font-weight:500;color:var(--white)}.summary-stars{color:var(--gold);font-size:14px;letter-spacing:2px}.summary-text{flex:1;font-size:13px;color:var(--gray);text-align:right}.card-desc{font-size:13px;color:var(--gray);margin-top:-4px;margin-bottom:8px;word-break:break-word;overflow-wrap:break-word}.white-flash-overlay{position:fixed;inset:0;background:radial-gradient(ellipse at center,#fff,#fffffffa 40%,#f8fafcf2);z-index:var(--z-dropdown);overflow:hidden;animation:flashReveal 1.5s ease-in-out forwards}.white-flash-overlay:before,.white-flash-overlay:after{content:"";position:absolute;top:0;width:52%;height:100%;background:linear-gradient(135deg,rgba(255,255,255,1) 0%,rgba(248,250,252,.98) 50%,var(--gold-alpha-10) 100%);box-shadow:0 0 80px 40px #ffffffe6,inset 0 0 60px var(--gold-alpha-15)}.white-flash-overlay:before{left:0;transform-origin:left center;animation:doorLeftSlide 1.3s cubic-bezier(.4,0,.2,1) forwards;animation-delay:.2s}.white-flash-overlay:after{right:0;transform-origin:right center;animation:doorRightSlide 1.3s cubic-bezier(.4,0,.2,1) forwards;animation-delay:.2s}@keyframes flashReveal{0%{opacity:0}15%{opacity:1}85%{opacity:1}to{opacity:0;pointer-events:none}}@keyframes doorLeftSlide{0%{transform:translate(0) perspective(800px) rotateY(0)}to{transform:translate(-100%) perspective(800px) rotateY(-15deg)}}@keyframes doorRightSlide{0%{transform:translate(0) perspective(800px) rotateY(0)}to{transform:translate(100%) perspective(800px) rotateY(15deg)}}.scratch-reveal-content.reveal-active{animation:contentReveal .8s ease-out forwards}@keyframes contentReveal{0%{opacity:1;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}to{opacity:0;transform:scale(1.1)}}.saju-card{background:linear-gradient(135deg,var(--bg-card) 0%,var(--gold-alpha-8) 100%)}.four-pillars-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}.pillar{text-align:center;background:var(--bg-card);border-radius:var(--radius-sm);padding:16px 8px;border:1px solid var(--border-subtle);box-shadow:var(--ds-shadow-sm)}.pillar-label{font-size:12px;color:var(--gray);margin-bottom:10px}.pillar-value{display:flex;flex-direction:column;gap:8px}.pillar-value .stem{font-size:24px;font-family:var(--font-serif);color:var(--gold);font-weight:600}.pillar-value .branch{font-size:20px;font-family:var(--font-serif);color:var(--white)}.five-elements-chart{display:flex;flex-direction:column;gap:12px;margin-top:16px}.element-bar-container{display:flex;flex-direction:column;gap:6px}.element-info{display:flex;justify-content:space-between;align-items:center}.element-name{font-size:14px;font-weight:500}.element-name.wood{color:var(--success-light)}.element-name.fire{color:var(--error)}.element-name.earth{color:#eab308}.element-name.metal{color:var(--white)}.element-name.water{color:var(--info)}.element-percent{font-size:13px;color:var(--gray)}.element-bar{height:8px;background:#94a3b833;border-radius:8px;overflow:hidden}.element-fill{height:100%;border-radius:8px;transition:width 1s ease-out}.element-fill.wood{background:linear-gradient(90deg,var(--success-light),#16a34a)}.element-fill.fire{background:linear-gradient(90deg,var(--error),var(--error-dark))}.element-fill.earth{background:linear-gradient(90deg,#eab308,#ca8a04)}.element-fill.metal{background:linear-gradient(90deg,var(--white),var(--text-secondary))}.element-fill.water{background:linear-gradient(90deg,var(--info),#2563eb)}.element-summary{display:flex;gap:12px;margin-top:16px;justify-content:space-between}.element-tag{padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500}.element-tag.dominant{background:#22c55e26;color:var(--element-wood);border:1px solid rgba(34,197,94,.3)}.element-tag.lacking{background:#ef444426;color:var(--element-fire);border:1px solid rgba(239,68,68,.3)}.yin-yang-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--gold-alpha-10)}.yin-yang-bar{display:flex;height:40px;border-radius:20px;overflow:hidden;margin-top:12px}.yin-section{background:linear-gradient(90deg,var(--bg-card),var(--bg-overlay));display:flex;align-items:center;justify-content:space-between;color:var(--white);font-size:13px;font-weight:500;transition:width 1s ease-out}.yang-section{background:linear-gradient(90deg,#fef3c7,#fcd34d);display:flex;align-items:center;justify-content:space-between;color:var(--bg-card);font-size:13px;font-weight:500;transition:width 1s ease-out}.balance-text{margin-top:12px;font-size:14px;color:var(--gray);text-align:center}.name-analysis-card{background:linear-gradient(135deg,var(--bg-card) 0%,rgba(76,122,106,.08) 100%)}.name-display{display:flex;justify-content:space-between;gap:16px;margin:20px 0}.name-char{font-family:var(--font-serif);font-size:36px;font-weight:600;color:var(--foreground);width:60px;height:60px;display:flex;align-items:center;justify-content:space-between;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm)}.name-details{display:flex;flex-direction:column;gap:16px}.name-item{padding:12px;background:var(--muted);border-radius:var(--radius-sm)}.name-label{display:block;font-size:12px;color:var(--gold);margin-bottom:6px;font-weight:500}.name-value{font-size:14px;color:var(--white);line-height:1.6;margin:0}.lucky-card{background:linear-gradient(135deg,var(--bg-card) 0%,var(--gold-subtle) 100%)}.lucky-items{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.lucky-item{text-align:center;padding:16px 8px;background:var(--muted);border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.lucky-icon{display:block;font-size:24px;margin-bottom:8px}.lucky-value{display:block;font-size:14px;color:var(--gold);font-weight:500}.today-advice{margin-top:16px;padding:16px;background:var(--gold-alpha-8);border-radius:var(--radius-sm);border-left:3px solid var(--gold);font-size:14px;line-height:1.7;color:var(--white)}.analysis-menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 16px;margin-bottom:16px}.analysis-menu-btn{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:4px;padding:20px 12px 16px;background:#fff;border:1px solid var(--text-primary);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;text-align:center;position:relative;min-height:120px}.analysis-menu-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #00000014;border-color:var(--gold-dark)}.analysis-menu-btn:active{transform:translateY(0)}.analysis-menu-icon{font-size:28px;flex-shrink:0}.analysis-menu-icon-wrapper{display:flex;align-items:center;justify-content:center;width:56px;height:56px}.analysis-menu-text{display:flex;flex-direction:column;align-items:center;gap:2px}.analysis-menu-title{font-size:14px;font-weight:600;color:var(--bg-main);line-height:1.3;white-space:nowrap}.analysis-menu-subtitle{font-size:12px;color:var(--text-muted);line-height:1.3;white-space:nowrap;display:none}.analysis-menu-arrow{font-size:18px;color:var(--gold);opacity:.5;margin-left:auto}.menu-badge{position:absolute;top:6px;right:6px;padding:2px 6px;border-radius:8px;font-size:12px;font-weight:700}.menu-badge.free{background:var(--success-light);color:#fff;padding:3px 8px;border-radius:10px;font-size:12px}.menu-badge.highlight{background:var(--gold-dark);color:#fff;padding:3px 8px;border-radius:10px;font-size:12px}.analysis-menu-btn.highlight{background:#fff;border:1px solid var(--gold-dark)!important}.analysis-menu-btn.free{background:#fff;border:1px solid var(--text-primary)!important}.pillar-element{margin-top:8px;font-size:13px;color:var(--gold);opacity:.7}.traits-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.trait-section{padding:12px;background:var(--muted);border-radius:var(--radius-sm)}.trait-label{font-size:12px;font-weight:600;margin-bottom:8px;padding:4px 10px;border-radius:12px;display:inline-block}.trait-label.positive{background:#22c55e26;color:var(--element-wood)}.trait-label.negative{background:#ef444426;color:var(--element-fire)}.trait-list{list-style:none;padding:0;margin:0}.trait-list li{font-size:13px;color:var(--white);padding:4px 0 4px 16px;position:relative}.trait-list li:before{content:"•";position:absolute;left:0;color:var(--gold)}.advice-card{background:linear-gradient(135deg,var(--bg-card) 0%,var(--gold-alpha-8) 100%)}.element-summary-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 16px;margin-bottom:16px}.element-card{text-align:center;padding:20px 16px}.element-card-title{font-size:12px;color:var(--gray);margin-bottom:8px}.element-card-value{font-size:24px;font-weight:600;font-family:var(--font-serif);margin-bottom:8px}.element-card.dominant .element-card-value{color:var(--element-wood)}.element-card.lacking .element-card-value{color:var(--element-fire)}.element-card-desc{font-size:12px;color:var(--gray);line-height:1.5;margin:0}.element-desc{font-size:12px;color:var(--gray);margin-top:4px;line-height:1.4}.name-score-circle{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-dark));display:flex;flex-direction:column;align-items:center;justify-content:space-between;margin:20px auto}.name-score-value{font-size:36px;font-weight:700;color:var(--bg-dark)}.name-score-label{font-size:14px;color:var(--bg-dark);opacity:.8}.char-analysis-list{display:flex;flex-direction:column;gap:12px}.char-analysis-item{display:flex;gap:16px;padding:16px;background:var(--muted);border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.char-main{display:flex;flex-direction:column;align-items:center;min-width:60px}.char-hangul{font-size:32px;font-family:var(--font-serif);color:var(--gold);font-weight:600}.char-hanja{font-size:14px;color:var(--gray);margin-top:4px}.char-details{flex:1}.char-meaning{font-size:14px;color:var(--white);margin-bottom:8px;line-height:1.5}.char-meta{display:flex;gap:12px}.char-strokes,.char-element{font-size:12px;padding:4px 10px;border-radius:12px;background:var(--gold-alpha-10);color:var(--gold)}.stroke-total{font-size:28px;font-weight:600;color:var(--gold);text-align:center;margin-bottom:12px}.clickable-card .card-title{display:flex;justify-content:space-between;align-items:center}.card-arrow{font-size:14px;color:var(--gold);opacity:.7;transition:opacity .3s ease}.clickable-card:hover .card-arrow{opacity:1}.name-popup-overlay{position:fixed;inset:0;background:#020617e6;z-index:var(--z-modal);display:flex;align-items:center;justify-content:space-between;padding:20px;animation:fadeIn .3s ease}.name-popup-content{background:linear-gradient(145deg,var(--bg-card),var(--bg-dark));border:1px solid var(--gold-alpha-30);border-radius:var(--radius-lg);width:100%;max-width:500px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease;box-shadow:0 20px 60px #00000080}@media(max-width:479px){.name-popup-content{max-width:calc(100% - 32px)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.name-popup-header{display:flex;align-items:center;gap:12px;padding:20px 24px;background:var(--gold-alpha-10);border-bottom:1px solid var(--gold-alpha-20)}.name-popup-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--gold),#A67C00);border-radius:12px;font-size:24px;color:var(--bg-dark);font-weight:700}.name-popup-title{flex:1;font-size:18px;font-weight:600;color:var(--white);margin:0}.name-popup-close{width:44px;height:44px;display:flex;align-items:center;justify-content:space-between;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--gray);cursor:pointer;transition:all .3s ease;font-size:16px}.name-popup-close:hover{background:#fff3;color:var(--white)}.name-popup-body{padding:24px;overflow-y:auto;flex:1}.name-popup-section{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--gold-alpha-10)}.name-popup-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.name-popup-section-title{font-size:15px;font-weight:600;color:var(--gold);margin:0 0 10px;display:flex;align-items:center;gap:8px}.name-popup-section-title:before{content:"";width:4px;height:16px;background:var(--gold);border-radius:2px}.name-popup-section-content{font-size:14px;line-height:1.8;color:var(--white);margin:0;opacity:.9}.talisman-infographic{position:relative;padding:16px 8px 16px 24px}.talisman-connector{position:absolute;left:8px;top:40px;width:16px;height:calc(100% - 80px);opacity:.6}.talisman-category{margin-bottom:20px;position:relative}.category-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-left:4px}.category-icon{font-size:18px;width:32px;height:32px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--cat-color) 0%,rgba(0,0,0,.3) 100%);border-radius:50%;box-shadow:0 2px 8px #0000004d}.category-header span{font-size:14px;font-weight:700;color:var(--cat-color);letter-spacing:.5px}.category-line{flex:1;height:1px;background:linear-gradient(90deg,var(--cat-color) 0%,transparent 100%);margin-left:8px}.category-items{display:flex;flex-direction:column;gap:8px}.talisman-infographic-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-left:3px solid var(--talisman-color, var(--primary));border-radius:8px;cursor:pointer;transition:all .3s ease;text-align:left;position:relative;overflow:hidden;box-shadow:var(--ds-shadow-sm)}.talisman-infographic-card:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--talisman-color) 0%,transparent 50%);opacity:0;transition:opacity .3s ease}.talisman-infographic-card:hover:before{opacity:.1}.talisman-infographic-card:hover{transform:translate(4px);border-color:var(--talisman-color, var(--gold));box-shadow:0 4px 16px #0006}.talisman-infographic-card.selected{border-color:var(--talisman-color, var(--primary));background:var(--muted);box-shadow:var(--ds-shadow)}.talisman-infographic-card.selected:after{content:"✓";position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--talisman-color, var(--gold));font-size:16px;font-weight:700}.infographic-icon-wrap{position:relative;width:44px;height:44px;flex-shrink:0}.infographic-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:24px;color:var(--talisman-color, var(--gold));z-index:var(--z-content)}.infographic-ring{width:100%;height:100%;fill:none;stroke:var(--talisman-color, var(--gold));stroke-width:2;opacity:.4}.talisman-infographic-card:hover .infographic-ring{opacity:.8;animation:ringPulse 1.5s ease infinite}@keyframes ringPulse{0%,to{stroke-width:2}50%{stroke-width:4}}.infographic-text{flex:1;display:flex;flex-direction:column;gap:2px;position:relative;z-index:var(--z-content)}.infographic-name{font-size:14px;font-weight:600;color:var(--white)}.infographic-desc{font-size:12px;color:var(--gray);line-height:1.3}.infographic-arrow{font-size:18px;color:var(--talisman-color, var(--gold));opacity:0;transform:translate(-8px);transition:all .3s ease}.talisman-infographic-card:hover .infographic-arrow{opacity:1;transform:translate(0)}.talisman-container{padding:16px;display:flex;justify-content:space-between}.talisman-paper{background:#d4a82a;background-image:radial-gradient(ellipse at 20% 30%,rgba(232,197,71,.8) 0%,transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(191,138,21,.6) 0%,transparent 50%),linear-gradient(180deg,#e8c547,#d4a82a,#c9941d,#bf8a15,#b07d10);border-radius:2px;padding:0;box-shadow:0 8px 32px #00000080,0 2px 8px #8b45134d,inset 0 0 60px #8b451326;width:200px;min-height:380px;position:relative;overflow:hidden}.talisman-paper:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.12'/%3E%3C/svg%3E");pointer-events:none;mix-blend-mode:multiply}.talisman-paper:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(139,69,19,.08) 0%,transparent 10%,transparent 90%,rgba(139,69,19,.08) 100%),linear-gradient(180deg,rgba(255,255,255,.1) 0%,transparent 20%,transparent 80%,rgba(0,0,0,.1) 100%);pointer-events:none}.talisman-border{position:relative;padding:12px 8px;min-height:380px;display:flex;flex-direction:column}.talisman-border:before{display:none}.talisman-inner{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;position:relative;z-index:var(--z-content)}.talisman-header{display:flex;flex-direction:column;align-items:center;margin-bottom:8px}.talisman-icon{display:none}.talisman-title{font-family:var(--font-serif);font-size:18px;font-weight:900;color:var(--element-crimson);letter-spacing:.3em;text-shadow:.5px .5px 0 rgba(139,0,0,.3)}.talisman-top-symbol{font-family:var(--font-serif);font-size:20px;font-weight:900;color:var(--element-crimson);margin-bottom:4px;display:flex;gap:2px;text-shadow:.5px .5px 0 rgba(139,0,0,.2)}.talisman-main-symbol{font-family:var(--font-serif);font-size:80px;font-weight:900;color:var(--element-crimson);line-height:1;margin:4px 0;text-shadow:2px 2px 0 rgba(139,0,0,.15),-1px -1px 0 rgba(139,0,0,.1);filter:url(#brush-stroke)}.talisman-middle-row{display:flex;justify-content:space-between;align-items:stretch;width:100%;padding:0 8px;margin:4px 0;flex:1}.talisman-side-symbol{font-family:var(--font-serif);font-size:20px;font-weight:700;color:var(--element-crimson);writing-mode:vertical-rl;text-orientation:upright;letter-spacing:.2em;line-height:1.4;text-shadow:.5px .5px 0 rgba(139,0,0,.2)}.talisman-sub-symbols{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:4px}.talisman-sub-symbol{font-family:var(--font-serif);font-size:32px;font-weight:900;color:var(--element-crimson);text-shadow:1px 1px 0 rgba(139,0,0,.2)}.talisman-decorative-line{width:60%;height:2px;background:var(--element-crimson);margin:6px 0;opacity:.6}.talisman-element{display:flex;flex-direction:column;align-items:center;margin:4px 0;padding:4px 12px;background:transparent;border-radius:0;border:none}.element-label{font-size:12px;color:var(--element-crimson);opacity:.7;margin-bottom:2px}.element-symbol{font-family:var(--font-serif);font-size:24px;font-weight:900;color:var(--element-crimson);text-shadow:.5px .5px 0 rgba(139,0,0,.2)}.talisman-blessing{font-size:14px;color:var(--element-crimson);line-height:1.4;margin:4px 0;padding:0 12px;opacity:.85;font-weight:500}.talisman-footer{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:auto;padding-top:4px}.talisman-name{font-size:16px;color:var(--element-crimson);font-weight:700;font-family:var(--font-serif)}.talisman-date{font-size:12px;color:var(--element-crimson);opacity:.7}.talisman-seal{font-family:var(--font-serif);font-size:20px;font-weight:900;color:var(--element-crimson);width:42px;height:42px;display:flex;align-items:center;justify-content:space-between;border:2px solid var(--element-crimson);border-radius:50%;margin-top:6px;text-shadow:.5px .5px 0 rgba(139,0,0,.3)}.talisman-corner{position:absolute;font-family:var(--font-serif);font-size:22px;color:var(--element-crimson);font-weight:900;text-shadow:.5px .5px 0 rgba(139,0,0,.2)}.talisman-corner.top-left{top:8px;left:8px}.talisman-corner.top-right{top:8px;right:8px}.talisman-corner.bottom-left{bottom:8px;left:8px;font-size:16px}.talisman-corner.bottom-right{bottom:8px;right:8px;font-size:14px;writing-mode:vertical-rl;text-orientation:upright}.talisman-vertical-text{font-family:var(--font-serif);writing-mode:vertical-rl;text-orientation:upright;color:var(--element-crimson);font-weight:700;letter-spacing:.15em;font-size:18px;line-height:1.6}.talisman-center-column{display:flex;flex-direction:column;align-items:center;justify-content:space-between;flex:1}.talisman-brush-char{font-family:var(--font-serif);font-weight:900;color:var(--element-crimson);text-shadow:1px 1px 0 rgba(139,0,0,.2),-.5px -.5px 0 rgba(139,0,0,.1)}.talisman-explanation{background:var(--bg-card);border:1px solid var(--gold-alpha-20);border-radius:var(--radius-md);padding:20px;margin-top:16px}.talisman-explanation-title{font-family:var(--font-serif);font-size:16px;font-weight:600;color:var(--gold);margin-bottom:16px;display:flex;align-items:center;gap:8px}.talisman-explanation-section{margin-bottom:16px}.talisman-explanation-label{font-size:12px;color:var(--jade);margin-bottom:6px;display:block}.talisman-explanation-value{font-size:14px;color:var(--white);line-height:1.7}.talisman-explanation-highlight{color:var(--gold);font-weight:500}.talisman-meaning-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.talisman-meaning-item{background:#8b1a1a1a;border:1px solid rgba(139,26,26,.2);border-radius:8px;padding:10px;text-align:center}.talisman-meaning-char{font-family:var(--font-serif);font-size:28px;font-weight:700;color:#8b1a1a;display:block;margin-bottom:4px}.talisman-meaning-text{font-size:13px;color:var(--white);opacity:.8}.loading-spinner{width:40px;height:40px;border:3px solid var(--gold-alpha-20);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}@keyframes loadingBar{0%{transform:translate(-100%)}50%{transform:translate(0)}to{transform:translate(100%)}}.counselors-list{display:flex;flex-direction:column;gap:12px}.counselor-admin-item{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px}.counselor-admin-info{margin-bottom:12px}.counselor-admin-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.counselor-admin-name{font-size:16px;font-weight:600;color:var(--gold)}.counselor-status-badge{font-size:12px;padding:4px 10px;border-radius:12px;font-weight:500}.counselor-status-badge.pending{background:#fbbf2433;color:var(--element-earth)}.counselor-status-badge.approved{background:#4ade8033;color:var(--element-wood)}.counselor-status-badge.rejected{background:#f8717133;color:var(--element-fire)}.counselor-admin-specialty{font-size:14px;color:var(--jade);margin-bottom:4px}.counselor-admin-meta{font-size:12px;color:var(--gray);margin-bottom:8px}.counselor-admin-intro{font-size:13px;color:var(--white);opacity:.8;line-height:1.5;background:#0003;padding:10px;border-radius:8px}.counselor-admin-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.approve-btn,.reject-btn{flex:1;padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.approve-btn{background:linear-gradient(135deg,var(--element-wood) 0%,var(--success-light) 100%);color:var(--bg-main)}.approve-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4ade804d}.reject-btn{background:linear-gradient(135deg,var(--element-fire) 0%,var(--error) 100%);color:#fff}.reject-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f871714d}.counselor-actions{padding:0 16px;margin-bottom:16px}.counselor-list{padding:0 16px}.counselor-card{transition:transform .2s ease}.counselor-card:hover{transform:translateY(-2px)}.admin-locations{padding:0 16px}.card-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.add-btn{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-dark) 100%);color:var(--bg-dark);border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.add-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f5d6734d}.location-form{background:#0003;border-radius:12px;padding:20px;margin-bottom:20px;border:1px solid rgba(255,255,255,.1)}.location-form .form-title{font-size:16px;font-weight:600;color:var(--gold);margin-bottom:16px}.location-form .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.location-form .form-group{display:flex;flex-direction:column;gap:6px}.location-form .form-group.full-width{grid-column:span 2}.location-form label{font-size:13px;color:var(--gray)}.location-form input,.location-form select,.location-form textarea{padding:10px 12px;background:#00000026;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:var(--white);font-size:14px}.location-form input:focus,.location-form select:focus,.location-form textarea:focus{outline:none;border-color:var(--ring)}.location-form textarea{resize:vertical;min-height:80px}.location-form .form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.location-form .cancel-btn{padding:10px 24px;background:transparent;border:1px solid var(--gray);color:var(--gray);border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s ease}.location-form .cancel-btn:hover{border-color:var(--white);color:var(--white)}.location-form .submit-btn{padding:10px 24px;background:linear-gradient(135deg,var(--gold) 0%,var(--gold-dark) 100%);color:var(--bg-dark);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.location-form .submit-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f5d6734d}.locations-list{display:flex;flex-direction:column;gap:12px}.location-admin-item{background:#ffffff0d;border-radius:12px;padding:16px;transition:all .2s ease}.location-admin-item:hover{background:#ffffff14}.location-admin-item.inactive{opacity:.6}.location-admin-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.location-admin-name{font-size:16px;font-weight:600;color:var(--white)}.location-region-badge{font-size:12px;padding:4px 10px;border-radius:12px;background:#4c7a6a4d;color:var(--jade)}.location-status-badge{font-size:12px;padding:4px 10px;border-radius:12px;font-weight:500}.location-status-badge.active{background:#4ade8033;color:var(--element-wood)}.location-status-badge.inactive{background:#94a3b833;color:var(--gray)}.location-admin-address{font-size:14px;color:var(--white);opacity:.9;margin-bottom:6px}.location-admin-meta{display:flex;gap:16px;font-size:13px;color:var(--gray);margin-bottom:6px}.location-admin-specialties{font-size:13px;color:var(--jade)}.location-admin-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.edit-btn,.toggle-btn,.delete-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.edit-btn{background:#3b82f633;color:var(--element-water)}.edit-btn:hover{background:#3b82f64d}.toggle-btn{background:#fbbf2433;color:var(--element-earth)}.toggle-btn:hover{background:#fbbf244d}.delete-btn{background:#f8717133;color:var(--element-fire)}.delete-btn:hover{background:#f871714d}@media(max-width:600px){.location-form .form-grid{grid-template-columns:1fr}.location-form .form-group.full-width{grid-column:span 1}.location-admin-actions{flex-wrap:wrap}}.sms-list{display:flex;flex-direction:column;gap:12px}.sms-item{background:#ffffff0d;border-radius:12px;padding:16px;transition:all .2s ease}.sms-item:hover{background:#ffffff14}.sms-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.sms-title{font-size:16px;font-weight:600;color:var(--white)}.sms-status{font-size:12px;padding:4px 10px;border-radius:12px;font-weight:500;color:var(--text-white)}.sms-content{font-size:14px;color:var(--white);background:#0003;padding:12px;border-radius:8px;margin-bottom:10px;white-space:pre-wrap;word-break:break-word}.sms-meta{display:flex;gap:16px;font-size:13px;color:var(--gray);margin-bottom:12px;flex-wrap:wrap}.sms-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.send-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;background:#4ade8033;color:var(--element-wood)}.send-btn:hover{background:#4ade804d}.char-count{font-size:12px;color:var(--gray);text-align:right;margin-top:4px}.recipient-select-header{margin-bottom:10px}.recipient-list{max-height:200px;overflow-y:auto;background:#0003;border-radius:8px;padding:12px}.recipient-item{padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05)}.recipient-item:last-child{border-bottom:none}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--white);font-size:14px}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--gold)}.locations-page{padding-bottom:var(--bottom-nav-height)}.region-filter{padding:0 16px;margin-bottom:16px}.filter-scroll{display:flex;gap:8px;overflow-x:auto;padding:4px 0;scrollbar-width:none;-ms-overflow-style:none}.filter-scroll::-webkit-scrollbar{display:none}.region-btn{flex-shrink:0;padding:8px 16px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:20px;color:var(--gray);font-size:13px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.region-btn:hover{background:#ffffff1f}.region-btn.active{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-dark) 100%);color:var(--bg-dark);border-color:var(--gold);font-weight:600}.locations-content{padding:0 16px}.region-group{margin-bottom:24px}.region-title{font-size:16px;font-weight:600;color:var(--jade);margin-bottom:12px;border-left:3px solid var(--jade);padding-left:12px}.location-cards{display:flex;flex-direction:column;gap:12px}.location-card{background:var(--bg-card);border-radius:12px;padding:16px;border:1px solid rgba(255,255,255,.08);transition:all .2s ease}.location-card:hover{border-color:#ffffff26;transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.location-card-header{margin-bottom:10px}.location-name{font-size:16px;font-weight:600;color:var(--white);margin:0 0 6px}.location-specialties{font-size:13px;color:var(--gold);background:#f5d6731a;padding:4px 10px;border-radius:12px;display:inline-block}.location-address{font-size:14px;color:var(--white);opacity:.9;margin-bottom:8px;display:flex;align-items:center;gap:6px}.loc-icon{font-size:14px;flex-shrink:0}.location-details{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.location-phone{font-size:14px;color:var(--element-water);text-decoration:none;display:flex;align-items:center;gap:6px}.location-phone:hover{text-decoration:underline}.location-hours{font-size:14px;color:var(--gray);display:flex;align-items:center;gap:6px}.location-description{font-size:13px;color:var(--white);opacity:.75;line-height:1.6;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.1)}.map-controls{padding:0 16px;margin-bottom:12px}.view-toggle{display:flex;background:#ffffff14;border-radius:12px;padding:4px;width:fit-content}.toggle-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;background:transparent;color:var(--gray);font-size:13px;cursor:pointer;border-radius:8px;transition:all .2s ease}.toggle-btn:hover{color:var(--white)}.toggle-btn.active{background:var(--gold);color:var(--bg-dark);font-weight:600}.toggle-btn svg{width:16px;height:16px}.map-container-wrapper{padding:0 16px}.map-container-wrapper .leaflet-container{background:var(--bg-card);border:1px solid rgba(255,255,255,.1)}.map-location-count{display:flex;align-items:center;gap:8px;padding:12px 0;font-size:14px;color:var(--gray)}.count-badge{background:var(--gold);color:var(--bg-dark);font-weight:700;padding:2px 8px;border-radius:12px;font-size:13px}.no-coords-note{font-size:12px;opacity:.7}.map-hint{display:flex;align-items:center;gap:8px;padding:16px;background:#ffffff0d;border-radius:12px;font-size:14px;color:var(--gray);margin-top:8px}.map-hint svg{flex-shrink:0;color:var(--gold)}.selected-location-card{position:relative;background:var(--bg-card);border:1px solid var(--gold);border-radius:12px;padding:16px;margin-top:12px;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.selected-location-card .close-btn{position:absolute;top:12px;right:12px;background:#ffffff1a;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:var(--gray);transition:all .2s ease}.selected-location-card .close-btn:hover{background:#fff3;color:var(--white)}.locations-list{padding:0 16px;display:flex;flex-direction:column;gap:12px}.locations-list .location-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.region-tag{flex-shrink:0;background:#4c7a6a33;color:var(--jade);font-size:12px;padding:4px 10px;border-radius:12px;font-weight:500}.location-address svg,.location-phone svg,.location-hours svg{flex-shrink:0;opacity:.7}.map-popup{text-align:center;padding:4px}.map-popup strong{display:block;color:var(--bg-main);font-size:14px}.lottery-page{padding-bottom:var(--bottom-nav-height)}.lottery-sets{display:flex;flex-direction:column;gap:16px}.lottery-set{background:#ffffff0d;border-radius:var(--radius-sm);padding:12px}.set-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.set-label{font-size:13px;color:var(--gold);font-weight:500}.ai-analyze-btn{background:linear-gradient(135deg,#4c7a6a4d,#4c7a6a26);border:1px solid rgba(76,122,106,.5);color:var(--jade);font-size:12px;padding:6px 12px;border-radius:12px;cursor:pointer;transition:all .2s ease}.ai-analyze-btn:hover{background:linear-gradient(135deg,#4c7a6a80,#4c7a6a4d);border-color:var(--jade)}.ai-analyze-btn:disabled{opacity:.6;cursor:not-allowed}.lottery-analysis{margin-top:12px;padding:12px;background:#4c7a6a1a;border:1px solid rgba(76,122,106,.2);border-radius:var(--radius-sm)}.lottery-analysis p{font-size:13px;color:var(--white);line-height:1.7;margin:0}.lottery-balls{display:flex;gap:8px;flex-wrap:wrap}.lottery-ball{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:700;color:var(--bg-card);box-shadow:0 2px 8px #0000004d,inset 0 2px 4px #ffffff4d}.lucky-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.lucky-item{background:#ffffff0d;padding:10px 12px;border-radius:var(--radius-sm)}.lucky-label{display:block;font-size:13px;color:var(--gray);margin-bottom:4px}.lucky-value{display:block;font-size:15px;color:var(--white);font-weight:500}.lucky-advice{font-size:14px;color:var(--jade);line-height:1.6;padding:12px;background:#4c7a6a26;border-radius:var(--radius-sm);border-left:3px solid var(--jade)}.lottery-locations{display:flex;flex-direction:column;gap:12px}.lottery-location-card{background:#ffffff0d;border-radius:var(--radius-sm);padding:14px;border:1px solid rgba(255,255,255,.08)}.loc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.loc-name{font-size:15px;font-weight:600;color:var(--white);margin:0}.lucky-rank{font-size:12px}.winning-history{font-size:13px;color:var(--element-earth);background:#fbbf241a;padding:6px 10px;border-radius:6px;margin-bottom:10px}.loc-info{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.loc-address{font-size:13px;color:var(--white);opacity:.85}.loc-phone{font-size:13px;color:var(--element-water);text-decoration:none}.loc-phone:hover{text-decoration:underline}.loc-desc{font-size:12px;color:var(--gray);line-height:1.5;padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}.winning-history-admin{font-size:12px;color:var(--element-earth);background:#fbbf241a;padding:4px 8px;border-radius:8px;margin-top:4px;display:inline-block}.lucky-rank-badge{font-size:13px;margin-left:4px}.saju-inline-form{padding:8px 0}.inline-form-row{display:flex;gap:8px}.inline-form-group{flex:1;display:flex;flex-direction:column;gap:4px}.inline-form-group label{font-size:12px;color:var(--gray)}.inline-input,.inline-select{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:10px 12px;color:var(--white);font-size:14px;width:100%}.inline-input:focus,.inline-select:focus{outline:none;border-color:var(--ring)}.inline-select{cursor:pointer}.ad-banner{position:relative;width:100%;margin:16px 0;border-radius:var(--radius-md);overflow:hidden;cursor:pointer;background:#00000026}.ad-banner-image{width:100%;height:auto;display:block;object-fit:cover;max-height:120px}.ad-banner-label{position:absolute;top:8px;right:8px;background:#0009;color:var(--gray);font-size:12px;padding:2px 6px;border-radius:8px}.ad-banner-dots{position:absolute;bottom:8px;left:50%;transform:translate(-50%);display:flex;gap:3px}.ad-dot{width:2px;height:2px;border-radius:50%;background:#ffffff4d;transition:background .3s ease}.ad-dot.active{background:var(--gold)}.toast-container{position:fixed;top:env(safe-area-inset-top,16px);left:50%;transform:translate(-50%);z-index:var(--z-toast);display:flex;flex-direction:column;gap:10px;max-width:90%;width:400px;pointer-events:none;padding-top:16px}.toast{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius-md);background:var(--bg-dark);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0006;animation:toast-slide-in .3s ease-out;pointer-events:auto;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.toast-error{border-color:#f8717166;background:#f871711a}.toast-error .toast-icon{color:var(--element-fire)}.toast-success{border-color:#4c7a6a80;background:#4c7a6a26}.toast-success .toast-icon{color:var(--jade)}.toast-info{border-color:var(--gold-alpha-40);background:var(--gold-alpha-10)}.toast-info .toast-icon{color:var(--gold)}.toast-icon{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.toast-message{flex:1;font-size:14px;color:var(--white);line-height:1.4}.toast-close{background:none;border:none;color:var(--gray);font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:space-between;opacity:.6;transition:opacity .2s}.toast-close:hover{opacity:1}.app-footer{background:#020617f2;border-top:1px solid var(--gold-alpha-10);padding:24px 20px 90px;margin-top:auto}.footer-content{max-width:600px;margin:0 auto;text-align:center}.footer-company{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.footer-company strong{font-size:14px;color:var(--white)}.footer-company span{font-size:13px;color:var(--gray)}.footer-info{margin-bottom:12px}.footer-info p{font-size:12px;color:var(--gray);margin:4px 0;line-height:1.5}.footer-privacy{margin-bottom:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.05)}.footer-privacy p{font-size:12px;color:var(--gray);margin-bottom:4px}.footer-privacy a{font-size:12px;color:var(--gold);text-decoration:none}.footer-privacy a:hover{text-decoration:underline}.footer-copyright{padding-top:12px;border-top:1px solid rgba(255,255,255,.05)}.footer-copyright p{font-size:12px;color:#94a3b8}.sidebar-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:var(--z-overlay);opacity:0;visibility:hidden;pointer-events:none;transition:all .3s ease}.sidebar-overlay.open{opacity:1;visibility:visible;pointer-events:auto}.sidebar{position:fixed;top:0;left:0;width:280px;height:100%;height:100dvh;background:var(--bg-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--border-light);z-index:var(--z-modal);transform:translate(-100%);transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0);box-shadow:var(--ds-shadow-lg)}.sidebar.open{transform:translate(0)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;padding-top:max(env(safe-area-inset-top,20px) + 16px,48px);padding-top:calc(16px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--gold-alpha-15)}.sidebar-logo{display:flex;align-items:center;gap:10px}.sidebar-logo img{width:36px;height:36px}.sidebar-logo span{font-family:var(--font-serif);font-size:20px;color:var(--gold);letter-spacing:.1em}.sidebar-close{width:36px;height:36px;background:transparent;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--gray);font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.sidebar-close:hover{background:#ffffff0d;color:var(--white);border-color:#fff3}.sidebar-user{display:flex;align-items:center;gap:12px;padding:16px 20px;padding-top:max(env(safe-area-inset-top,20px) + 16px,48px);border-bottom:1px solid var(--gold-alpha-10);background:var(--gold-alpha-5)}.sidebar-user-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--gold-dark),var(--gold));display:flex;align-items:center;justify-content:space-between;overflow:hidden}.sidebar-user-avatar img{width:100%;height:100%;object-fit:cover}.sidebar-user-avatar span{font-size:18px;font-weight:600;color:var(--bg-dark)}.sidebar-user-info{flex:1}.sidebar-user-name{font-size:15px;font-weight:600;color:var(--white)}.sidebar-user-status{font-size:12px;color:var(--gold);margin-top:2px}.sidebar-scrollable{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.sidebar-nav{padding:12px 0}.sidebar-category{margin-bottom:4px}.sidebar-category-title{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 20px 10px;font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;background:none;border:none;cursor:pointer;transition:color .2s ease;text-align:left}.sidebar-category-title:hover{color:var(--gold)}.sidebar-category-chevron{transition:transform .25s cubic-bezier(.4,0,.2,1);opacity:.5;flex-shrink:0}.sidebar-category-title.expanded .sidebar-category-chevron{transform:rotate(0)}.sidebar-category-title:not(.expanded) .sidebar-category-chevron{transform:rotate(-90deg)}.sidebar-category-items{overflow:hidden;max-height:2000px;transition:max-height .3s cubic-bezier(.4,0,.2,1),opacity .25s ease;opacity:1}.sidebar-category-items.collapsed{max-height:0;opacity:0}.sidebar-item{display:flex;align-items:center;gap:14px;width:100%;padding:13px 20px;margin:2px 0;background:transparent;border:none;border-radius:0 8px 8px 0;cursor:pointer;transition:all .2s ease;text-align:left;color:var(--text-primary)}.sidebar-item:hover{background:var(--gold-alpha-10);transform:translate(4px)}.sidebar-item.active{background:linear-gradient(90deg,var(--gold-alpha-20) 0%,var(--gold-alpha-5) 100%);border-left:3px solid var(--gold);border-radius:0}.sidebar-item-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:15px;color:var(--gold);background:var(--gold-alpha-15);border-radius:8px;transition:all .2s ease;overflow:hidden}.sidebar-item:hover .sidebar-item-icon{background:var(--gold-alpha-25);transform:scale(1.05)}.sidebar-item-label{font-size:14px;color:var(--text-primary);font-weight:400;letter-spacing:.01em}.sidebar-item.active .sidebar-item-label{color:var(--gold);font-weight:600}.sidebar-badge{margin-left:auto;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:700;letter-spacing:.02em}.sidebar-badge.free{background:#4ade8033;color:var(--element-wood)}.sidebar-badge.premium{background:var(--gold-alpha-20);color:var(--gold)}.sidebar-item.highlight{background:linear-gradient(135deg,var(--gold-alpha-15),var(--gold-alpha-5));border:1px solid var(--gold-alpha-30)}.sidebar-item.highlight:hover{background:linear-gradient(135deg,var(--gold-alpha-25),var(--gold-alpha-10))}.sidebar-footer{padding:16px 20px 24px;border-top:1px solid var(--gold-alpha-10);text-align:center}.sidebar-footer p{font-size:12px;color:var(--gray);margin:2px 0}.footer-links{margin-top:12px;padding-top:12px;border-top:1px solid var(--gold-alpha-10)}.footer-link-btn{background:transparent;border:none;color:var(--gold);font-size:12px;cursor:pointer;padding:6px 12px;border-radius:8px;transition:all .2s ease;text-decoration:underline}.footer-link-btn:hover{background:var(--gold-alpha-10);text-decoration:none}.privacy-policy-page{padding-bottom:40px}.privacy-policy-content{padding:0 16px;max-width:800px;margin:0 auto}.policy-section{background:var(--bg-card);border-radius:8px;padding:20px;margin-bottom:16px;border:1px solid var(--border-subtle);box-shadow:var(--ds-shadow-sm)}.policy-intro{font-size:15px;line-height:1.8;color:var(--white);margin-bottom:12px}.policy-effective{font-size:13px;color:var(--gold);font-weight:500}.policy-title{font-family:var(--font-serif);font-size:16px;font-weight:600;color:var(--gold);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--gold-alpha-20)}.policy-content{font-size:14px;line-height:1.8;color:var(--gray)}.policy-content h3{font-size:14px;font-weight:600;color:var(--white);margin:16px 0 8px}.policy-content h3:first-child{margin-top:0}.policy-content p{margin-bottom:12px}.policy-content strong{color:var(--white);font-weight:500}.policy-content ul{list-style:none;padding:0;margin:8px 0 16px}.policy-content ul li{position:relative;padding-left:16px;margin-bottom:8px}.policy-content ul li:before{content:"•";position:absolute;left:0;color:var(--gold)}.contact-info{background:var(--gold-alpha-8);border-radius:6px;padding:16px;margin-top:12px}.contact-info p{margin-bottom:8px}.contact-info ul{margin:0}.contact-info ul li{margin-bottom:4px}.company-info-section{background:var(--bg-card);border:1px solid var(--border)}.company-info-list{list-style:none;padding:0;margin:0}.company-info-list li{display:flex;gap:8px;padding:8px 0;border-bottom:1px solid var(--gold-alpha-10)}.company-info-list li:last-child{border-bottom:none}.company-info-list li strong{color:var(--gold);min-width:120px;flex-shrink:0}@media(max-width:480px){.policy-section{padding:16px;margin-bottom:12px}.policy-title{font-size:15px}.policy-content{font-size:13px}.company-info-list li{flex-direction:column;gap:4px}.company-info-list li strong{min-width:auto}}.signup-wizard{min-height:calc(var(--vh, 1vh) * 100);min-height:100dvh;padding:20px 16px 40px;background:linear-gradient(180deg,var(--bg-main) 0%,var(--bg-dark) 100%)}.wizard-progress-bar{position:relative;padding:20px 24px 12px}.wizard-progress-track{position:absolute;top:29px;left:40px;right:40px;height:3px;background:var(--gold-alpha-15);border-radius:3px;z-index:var(--z-base)}.wizard-progress-track-fill{height:100%;background:linear-gradient(90deg,var(--gold-dark),var(--gold));border-radius:3px;transition:width .5s cubic-bezier(.4,0,.2,1)}.wizard-progress-dots{display:flex;justify-content:space-between;position:relative;z-index:var(--z-content)}.wizard-dot-group{display:flex;flex-direction:column;align-items:center;gap:6px}.wizard-dot{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:2px solid var(--gold-alpha-25);transition:all .3s ease}.wizard-dot-group.active .wizard-dot{background:var(--gold);border-color:var(--gold)}.wizard-dot-group.active .wizard-dot svg{stroke:var(--bg-primary)}.wizard-dot-group.current .wizard-dot{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 4px var(--gold-alpha-20),0 0 12px var(--gold-alpha-30);transform:scale(1.15)}.wizard-dot-label{font-size:11px;color:var(--gray);font-weight:500;letter-spacing:.02em;transition:color .3s ease}.wizard-dot-group.active .wizard-dot-label{color:var(--gold)}.wizard-dot-group.current .wizard-dot-label{color:var(--gold-light);font-weight:700}.wizard-step{animation:fadeIn .4s ease}.consent-item-wrapper{display:flex;align-items:center;margin-bottom:8px}.consent-item{flex:1;display:flex;align-items:center;gap:12px;padding:14px 0;cursor:pointer;transition:all .2s ease}.consent-item.consent-all{padding:16px;margin:-20px -20px 0;background:var(--muted);border-radius:8px 8px 0 0}.consent-checkbox{width:22px;height:22px;border-radius:6px;border:2px solid var(--border);background:var(--input-background);display:flex;align-items:center;justify-content:space-between;transition:all .2s ease;flex-shrink:0}.consent-checkbox.checked{background:var(--primary);border-color:var(--primary)}.consent-checkbox svg{stroke:var(--primary-foreground)}.consent-label{font-size:14px;color:var(--foreground);flex:1}.consent-all .consent-label{font-size:15px;font-weight:600;color:var(--foreground)}.consent-required{color:var(--foreground);font-weight:500;margin-right:4px}.consent-optional{color:var(--muted-foreground);font-weight:400;margin-right:4px}.consent-expand-btn{width:32px;height:32px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--muted-foreground);cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all .2s ease}.consent-expand-btn:hover{background:var(--accent);border-color:var(--ring);color:var(--foreground)}.consent-divider{height:1px;background:var(--border);margin:8px 0 16px}.consent-text-box{background:var(--muted);border:1px solid var(--border);border-radius:8px;padding:16px;margin:8px 0 16px;font-size:12px;line-height:1.7;color:var(--muted-foreground);max-height:200px;overflow-y:auto;white-space:pre-wrap}.consent-text-box::-webkit-scrollbar{width:4px}.consent-text-box::-webkit-scrollbar-track{background:var(--muted);border-radius:4px}.consent-text-box::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.wizard-actions{padding:24px 16px;display:flex;flex-direction:column;gap:12px}.wizard-btn{width:100%;padding:16px 24px;font-size:16px}.wizard-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.wizard-back-btn,.wizard-cancel-btn{width:100%;padding:14px 24px;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:var(--gray);font-size:14px;cursor:pointer;transition:all .2s ease}.wizard-back-btn:hover,.wizard-cancel-btn:hover{background:#ffffff0d;border-color:#ffffff4d;color:var(--white)}.wizard-back-btn:disabled,.wizard-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.country-code-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23717182' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px!important}.verification-input{font-size:24px!important;letter-spacing:8px;text-align:center;font-weight:600}.verification-timer{float:right;font-family:var(--font-sans);font-size:14px;font-weight:600;color:var(--gold)}.verification-timer.warning{color:var(--error);animation:timerPulse 1s ease-in-out infinite}@keyframes timerPulse{0%,to{opacity:1}50%{opacity:.5}}.verification-expired{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:12px 16px;font-size:13px;color:var(--error);text-align:center;margin-top:16px}.verification-actions{display:flex;gap:12px}.resend-btn,.change-phone-btn{flex:1;padding:12px 16px;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:var(--gray);font-size:13px;cursor:pointer;transition:all .2s ease}.resend-btn:disabled,.change-phone-btn:disabled{opacity:.5;cursor:not-allowed}.resend-btn.active{border-color:var(--gold);color:var(--gold)}.resend-btn.active:hover{background:var(--gold-alpha-10)}.change-phone-btn:hover:not(:disabled){background:#ffffff0d;border-color:#ffffff4d}.loading-spinner-small{display:inline-block;width:16px;height:16px;border:2px solid rgba(2,6,23,.3);border-radius:50%;border-top-color:var(--bg-dark);animation:spin .8s linear infinite;margin-right:8px}.wizard-complete{text-align:center}.completion-animation{margin:40px 0 32px}.completion-check{width:100px;height:100px;margin:0 auto;background:linear-gradient(135deg,var(--gold-dark),var(--gold));border-radius:50%;display:flex;align-items:center;justify-content:space-between;animation:checkBounce .6s ease;box-shadow:0 0 40px var(--gold-alpha-50)}.completion-check svg{stroke:var(--bg-dark);animation:checkDraw .4s ease .3s both}@keyframes checkBounce{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@keyframes checkDraw{0%{stroke-dasharray:100;stroke-dashoffset:100}to{stroke-dashoffset:0}}.completion-card{text-align:left}.completion-info{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--gold-alpha-10)}.completion-info:last-child{border-bottom:none}.completion-label{font-size:13px;color:var(--gray)}.completion-value{font-size:14px;color:var(--gold);font-weight:500}.completion-btn{margin-top:8px;animation:completeBtnPulse 2s ease-in-out infinite}@keyframes completeBtnPulse{0%,to{box-shadow:0 4px 12px #8b45134d}50%{box-shadow:0 4px 24px var(--gold-alpha-50)}}@media(max-width:480px){.signup-wizard{padding:16px 12px 32px}.wizard-progress-bar{padding:16px 16px 8px}.wizard-progress-track{left:28px;right:28px;top:25px}.wizard-dot{width:18px;height:18px}.wizard-dot svg{width:10px;height:10px}.wizard-dot-label{font-size:10px}.consent-item.consent-all{margin:-16px -16px 0;padding:14px}.consent-text-box{max-height:160px;font-size:12px}.verification-input{font-size:20px!important;letter-spacing:6px}.verification-actions{flex-direction:column;gap:8px}.completion-check{width:80px;height:80px}.completion-check svg{width:40px;height:40px}}.skeleton{background:linear-gradient(90deg,var(--muted) 25%,var(--accent) 50%,var(--muted) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-text{height:16px;margin-bottom:8px;width:100%}.skeleton-circle{width:48px;height:48px;border-radius:50%}.skeleton-card{height:120px;margin-bottom:16px}.toast.success{border-color:var(--jade)}.toast.error{border-color:var(--error-dark)}.toast.info{border-color:var(--gold)}.toast.success .toast-icon{color:var(--jade)}.toast.error .toast-icon{color:var(--error-dark)}.toast.info .toast-icon{color:var(--gold)}.toast.exiting{animation:toast-slide-out .3s ease forwards}@keyframes toast-slide-out{to{opacity:0;transform:translateY(-10px)}}.loading-overlay{position:fixed;inset:0;background:#020617d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:16px;z-index:var(--z-overlay);animation:fadeIn .25s ease}.loading-overlay .loading-spinner{width:40px;height:40px;border-width:3px}.loading-overlay .loading-text{color:var(--gold);font-size:15px;font-family:var(--font-serif)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:48px 24px;text-align:center;color:var(--gray)}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.6}.empty-state-title{font-size:18px;font-weight:600;color:var(--white);margin-bottom:8px}.empty-state-description{font-size:14px;line-height:1.6;color:var(--gray);margin-bottom:24px}.progress-bar{width:100%;height:6px;background:var(--gold-alpha-20);border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--gold-dark),var(--gold),var(--gold-light));border-radius:3px;transition:width .3s ease}.error-state{display:flex;flex-direction:column;align-items:center;padding:32px 24px;text-align:center;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:var(--radius-md);margin:16px}.error-state-icon{font-size:36px;margin-bottom:12px;color:var(--error-dark)}.error-state-title{font-size:16px;font-weight:600;color:var(--white);margin-bottom:8px}.error-state-message{font-size:14px;color:var(--gray);line-height:1.6;margin-bottom:16px}.error-state-btn{padding:12px 24px;background:#dc262633;border:1px solid var(--error-dark);border-radius:8px;color:#fca5a5;font-size:14px;cursor:pointer;transition:all .2s ease}.error-state-btn:hover{background:#dc26264d}.pulse-indicator{width:8px;height:8px;background:var(--jade);border-radius:50%;position:relative}.pulse-indicator:after{content:"";position:absolute;inset:-3px;border:2px solid var(--jade);border-radius:50%;animation:pulse-ring 1.5s ease-out infinite;opacity:.6}@keyframes pulse-ring{0%{transform:scale(1);opacity:.6}to{transform:scale(1.5);opacity:0}}.success-checkmark{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--jade),#3D8B6E);display:flex;align-items:center;justify-content:space-between;animation:success-pop .4s ease}.success-checkmark svg{width:30px;height:30px;stroke:#fff;stroke-width:3;fill:none;stroke-dasharray:50;stroke-dashoffset:50;animation:checkmark-draw .5s ease .2s forwards}@keyframes success-pop{0%{transform:scale(0)}70%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes checkmark-draw{to{stroke-dashoffset:0}}.sidebar-user:hover{background:var(--gold-alpha-10);border-radius:var(--radius-sm)}.sidebar-user{transition:background .2s ease}.skeleton{background:linear-gradient(90deg,var(--gold-alpha-10) 25%,var(--gold-alpha-20) 50%,var(--gold-alpha-10) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:var(--radius-sm)}.skeleton-text-sm{height:12px;width:60%}.skeleton-card{height:120px;margin-bottom:16px;border-radius:var(--radius-md)}.skeleton-button{height:44px;width:100%;border-radius:var(--radius-md)}button,.btn,.nav-btn,.sidebar-item,.card,.fortune-card{-webkit-tap-highlight-color:transparent;transition:transform .1s ease,opacity .1s ease,background .2s ease;-webkit-user-select:none;user-select:none}button:active,.btn:active,.nav-btn:active,.sidebar-item:active{transform:scale(.97);opacity:.9}.card:active,.fortune-card:active{transform:scale(.98)}button:not(.modal-close):not(.nav-btn):not([disabled]){transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease}button:not(.modal-close):not(.nav-btn):not([disabled]):active{transform:scale(.97);opacity:.9}button[disabled]{opacity:.5!important;cursor:not-allowed!important}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:var(--gold-alpha-30);border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:width .4s ease,height .4s ease,opacity .4s ease}.ripple-effect:active:after{width:200%;height:200%;opacity:1}.onboarding-overlay{position:fixed;inset:0;background:#000000e6;z-index:var(--z-toast);display:flex;align-items:center;justify-content:space-between;padding:20px}.onboarding-content{max-width:360px;width:100%;text-align:center}.onboarding-image{width:200px;height:200px;margin:0 auto 24px;border-radius:50%;background:linear-gradient(135deg,var(--gold-alpha-30),rgba(76,122,106,.3));display:flex;align-items:center;justify-content:space-between;font-size:80px}.onboarding-title{font-family:var(--font-serif);font-size:24px;color:var(--gold);margin-bottom:12px}.onboarding-description{color:var(--text-muted);font-size:15px;line-height:1.6;margin-bottom:32px}.onboarding-dots{display:flex;justify-content:space-between;gap:8px;margin-bottom:24px}.onboarding-dot{width:2px;height:2px;border-radius:50%;background:var(--gold-alpha-30);transition:all .3s ease}.onboarding-dot.active{width:2px;border-radius:50%;background:var(--gold)}.onboarding-actions{display:flex;gap:12px}.onboarding-skip{flex:1;padding:14px;background:transparent;border:1px solid var(--gold-alpha-30);color:var(--text-muted);border-radius:var(--radius-md);font-size:15px;cursor:pointer}.onboarding-next{flex:2;padding:14px;background:var(--gold);border:none;color:var(--ink);border-radius:var(--radius-md);font-size:15px;font-weight:600;cursor:pointer}.recent-readings-section{margin-bottom:24px}.recent-readings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.recent-readings-title{font-family:var(--font-serif);font-size:16px;color:var(--gold)}.recent-readings-more{font-size:13px;color:var(--text-muted);background:none;border:none;cursor:pointer}.recent-readings-list{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch}.recent-reading-card{flex:0 0 140px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px;cursor:pointer;box-shadow:var(--ds-shadow-sm);transition:all .2s ease}.recent-reading-card:hover{border-color:var(--gold);transform:translateY(-2px)}.recent-reading-icon{font-size:24px;margin-bottom:8px}.recent-reading-type{font-size:13px;color:var(--white);margin-bottom:4px}.recent-reading-date{font-size:12px;color:var(--text-muted)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000002e;border-radius:4px}.page-content{padding:20px 8px}.app-header,.app-header-logo,.header-logo-text,.hamburger-line{transition:background .6s cubic-bezier(.4,0,.2,1),color .5s cubic-bezier(.4,0,.2,1)!important}.app-header-logo,.header-logo-text{font-family:var(--font-serif);font-size:20px;background:linear-gradient(135deg,var(--gold-dark) 0%,#E8D5A3 50%,var(--gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;letter-spacing:.15em;text-shadow:0 2px 10px rgba(0,0,0,.12)}.header-btn{color:var(--white)!important}.logout-btn{background:#00000014!important;border:1px solid rgba(0,0,0,.12)!important;color:var(--gold-dark)!important}.desktop-banner.has-custom-bg .banner-content{background-color:#0a0e1759!important}.petals-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:var(--z-base)}@media(max-width:1023px){.petals-container{display:block;position:fixed;top:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;height:100%;z-index:var(--z-behind);pointer-events:none}.petal:nth-child(n+9){display:none}.petal{width:10px!important;height:10px!important;opacity:.5}}.petal{position:absolute;width:15px;height:15px;background:linear-gradient(135deg,#ffb6c8,#ff8fab,#ffc2d1);border-radius:50% 0 50% 50%;opacity:.7;animation:petal-fall linear infinite;transform-origin:center;box-shadow:0 2px 4px #ff8fab4d}.petal:nth-child(odd){background:linear-gradient(135deg,#ffa5ba,#ff7fa3,#ffb8cb);animation-name:petal-fall-alt}.petal:nth-child(3n){background:linear-gradient(135deg,#ffc2d1,#ff9bb5,#ffdae3);border-radius:50% 50% 0}@keyframes petal-fall-alt{0%{transform:translateY(-5%) translate(0) rotate(0) scale(1);opacity:0}5%{opacity:.7}25%{transform:translateY(25vh) translate(-25px) rotate(-180deg) scale(.95)}50%{transform:translateY(50vh) translate(35px) rotate(-360deg) scale(.9)}75%{transform:translateY(75vh) translate(-15px) rotate(-540deg) scale(.8)}95%{opacity:.7}to{transform:translateY(105vh) translate(20px) rotate(-720deg) scale(.6);opacity:0}}@keyframes petal-fall{0%{transform:translateY(-5%) translate(0) rotate(0) scale(1);opacity:0}5%{opacity:.7}25%{transform:translateY(25vh) translate(30px) rotate(180deg) scale(.95)}50%{transform:translateY(50vh) translate(-20px) rotate(360deg) scale(.9)}75%{transform:translateY(75vh) translate(40px) rotate(540deg) scale(.8)}95%{opacity:.7}to{transform:translateY(105vh) translate(10px) rotate(720deg) scale(.6);opacity:0}}.petal:nth-child(1){left:5%;animation-duration:12s;animation-delay:0s;width:12px;height:12px}.petal:nth-child(2){left:15%;animation-duration:15s;animation-delay:1s;width:18px;height:18px}.petal:nth-child(3){left:25%;animation-duration:11s;animation-delay:2s;width:14px;height:14px}.petal:nth-child(4){left:35%;animation-duration:14s;animation-delay:.5s;width:16px;height:16px}.petal:nth-child(5){left:45%;animation-duration:13s;animation-delay:3s;width:13px;height:13px}.petal:nth-child(6){left:55%;animation-duration:16s;animation-delay:1.5s;width:17px;height:17px}.petal:nth-child(7){left:65%;animation-duration:10s;animation-delay:2.5s;width:11px;height:11px}.petal:nth-child(8){left:75%;animation-duration:14s;animation-delay:.8s;width:15px;height:15px}.petal:nth-child(9){left:85%;animation-duration:12s;animation-delay:4s;width:14px;height:14px}.petal:nth-child(10){left:95%;animation-duration:15s;animation-delay:1.2s;width:16px;height:16px}.petal:nth-child(11){left:10%;animation-duration:13s;animation-delay:5s;width:12px;height:12px}.petal:nth-child(12){left:30%;animation-duration:11s;animation-delay:3.5s;width:15px;height:15px}.petal:nth-child(13){left:50%;animation-duration:14s;animation-delay:6s;width:13px;height:13px}.petal:nth-child(14){left:70%;animation-duration:16s;animation-delay:2s;width:18px;height:18px}.petal:nth-child(15){left:90%;animation-duration:12s;animation-delay:4.5s;width:14px;height:14px}.butterfly-hover{animation:butterfly-float 3s ease-in-out infinite}.butterfly-hover:hover{animation:butterfly-fly-away 1.5s ease-in-out forwards}@keyframes butterfly-float{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-5px) rotate(-3deg)}50%{transform:translateY(-2px) rotate(0)}75%{transform:translateY(-8px) rotate(3deg)}}@keyframes butterfly-fly-away{0%{transform:translateY(0) rotate(0) scale(1);opacity:1}20%{transform:translateY(-15px) translate(10px) rotate(-10deg) scale(1.1)}40%{transform:translateY(-40px) translate(-15px) rotate(15deg) scale(1.05)}60%{transform:translateY(-80px) translate(30px) rotate(-20deg) scale(.9);opacity:.8}80%{transform:translateY(-120px) translate(-20px) rotate(25deg) scale(.7);opacity:.4}to{transform:translateY(-180px) translate(50px) rotate(-30deg) scale(.5);opacity:0}}.butterfly-hover:not(:hover){animation:butterfly-return .8s ease-out forwards,butterfly-float 3s ease-in-out infinite .8s}@keyframes butterfly-return{0%{opacity:0;transform:translateY(-30px) scale(.7)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.counter-animate{transition:all .3s ease-out}.energy-aura{position:relative}.energy-aura:before,.energy-aura:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none}.energy-aura:before{width:120px;height:120px;background:radial-gradient(circle,var(--gold-alpha-30) 0%,transparent 70%);animation:energy-pulse 3s ease-in-out infinite}.energy-aura:after{width:180px;height:180px;background:radial-gradient(circle,var(--gold-alpha-15) 0%,transparent 60%);animation:energy-pulse 3s ease-in-out infinite .5s}@keyframes energy-pulse{0%,to{transform:translate(-50%,-50%) scale(.8);opacity:.3}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.8}}.energy-particles{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.energy-particle{position:absolute;width:4px;height:4px;background:var(--gold);border-radius:50%;opacity:0;animation:float-up 4s ease-in-out infinite}.energy-particle:nth-child(1){left:20%;animation-delay:0s}.energy-particle:nth-child(2){left:40%;animation-delay:.8s}.energy-particle:nth-child(3){left:60%;animation-delay:1.6s}.energy-particle:nth-child(4){left:80%;animation-delay:2.4s}.energy-particle:nth-child(5){left:30%;animation-delay:.4s}.energy-particle:nth-child(6){left:70%;animation-delay:1.2s}@keyframes float-up{0%{transform:translateY(100px) scale(0);opacity:0}20%{opacity:1;transform:translateY(60px) scale(1)}80%{opacity:.8;transform:translateY(-20px) scale(.8)}to{transform:translateY(-60px) scale(0);opacity:0}}.glow-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100px;height:100px;border:2px solid var(--gold-alpha-40);border-radius:50%;animation:glow-rotate 8s linear infinite;pointer-events:none}.glow-ring:before{content:"";position:absolute;top:-5px;left:50%;width:10px;height:10px;background:var(--gold);border-radius:50%;box-shadow:0 0 15px var(--gold),0 0 30px var(--gold)}@keyframes glow-rotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.energy-wave{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;border:1px solid var(--gold-alpha-50);animation:wave-expand 2s ease-out infinite;pointer-events:none}.energy-wave:nth-child(2){animation-delay:.5s}.energy-wave:nth-child(3){animation-delay:1s}@keyframes wave-expand{0%{width:60px;height:60px;opacity:.8}to{width:200px;height:200px;opacity:0}}.graph-peak-pulse{animation:graph-peak-pulse 2s ease-in-out infinite}.graph-low-pulse{animation:graph-low-pulse 2s ease-in-out infinite}@keyframes graph-peak-pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.3);opacity:.6}}@keyframes graph-low-pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.3);opacity:.6}}@keyframes numberPulse{0%{transform:scale(1)}to{transform:scale(1.1)}}@keyframes elementGlow{0%{opacity:.5;box-shadow:0 0 5px currentColor}to{opacity:1;box-shadow:0 0 15px currentColor,0 0 30px currentColor}}@keyframes detection-scan{0%{background-position:0% 0%}to{background-position:0% 100%}}@keyframes corner-bracket-pulse{0%,to{opacity:.8;filter:drop-shadow(0 0 5px currentColor)}50%{opacity:1;filter:drop-shadow(0 0 15px currentColor)}}@keyframes feature-point-pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.3);opacity:1}}.detection-ready-glow{animation:detection-ready-glow 1.5s ease-in-out infinite}@keyframes detection-ready-glow{0%,to{box-shadow:0 0 20px #4ade804d,inset 0 0 10px #4ade801a}50%{box-shadow:0 0 40px #4ade8080,inset 0 0 20px #4ade8033}}.detection-progress-glow{animation:detection-progress-glow 1s ease-in-out infinite}@keyframes detection-progress-glow{0%,to{box-shadow:0 0 15px #facc154d}50%{box-shadow:0 0 30px #facc1580}}.face-mesh-animated line,.palm-mesh-animated line{stroke-dasharray:100;stroke-dashoffset:100;animation:mesh-draw 1.5s ease forwards}@keyframes mesh-draw{to{stroke-dashoffset:0}}.scan-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,transparent 0%,rgba(74,222,128,.1) 50%,transparent 100%);background-size:100% 200%;animation:detection-scan 2s linear infinite;pointer-events:none}.feature-point{animation:feature-point-pulse 1.5s ease-in-out infinite}.corner-bracket{animation:corner-bracket-pulse 1.2s ease-in-out infinite}.sinsal-card{background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--ds-shadow-sm)}.sinsal-card .card-title{margin-bottom:12px}.sinsal-card .card-title:before{content:"煞"}.sinsal-item{padding:16px;background:var(--muted);border-radius:12px;border:1px solid var(--border-subtle);transition:all .3s ease}.sinsal-item:hover{border-color:var(--ring);background:var(--accent)}.sinsal-name{font-size:15px;font-family:var(--font-serif);color:var(--gold);font-weight:600}.sinsal-strength{font-size:12px;padding:4px 10px;background:#4c7a6a4d;color:var(--jade);border-radius:12px}.sinsal-interpretation{font-size:13px;color:var(--white);line-height:1.7;margin-bottom:12px}.sinsal-tag{font-size:12px;padding:4px 10px;background:var(--gold-alpha-15);color:var(--gold);border-radius:10px}.sinsal-advice{font-size:12px;color:var(--jade);margin-top:10px;font-style:italic}.sinsal-life-theme{margin-top:16px;padding:16px;background:linear-gradient(135deg,rgba(76,122,106,.2),var(--gold-alpha-10));border-radius:12px;border-left:3px solid var(--gold)}.app-header-actions{position:relative;z-index:var(--z-content)}.header-btn{position:relative;z-index:var(--z-raised)}.login-btn:active,.logout-btn:active{transform:scale(.98)}.app-header{min-height:56px;touch-action:manipulation}.app-header *{pointer-events:auto!important}.app-header-actions .header-btn{min-height:44px;min-width:70px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;cursor:pointer!important}.login-btn{font-weight:700!important;border-radius:var(--radius-full, 9999px)!important;background:linear-gradient(135deg,var(--primary),var(--primary-hover, var(--ds-coral-signature-deep)))!important;color:#fff!important;border:none!important;box-shadow:0 2px 8px #f26a5a4d!important}.login-btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px #f26a5a6b!important}.consent-card-wrapper{display:flex;align-items:stretch;gap:10px;margin-bottom:12px}.consent-card{flex:1;background:var(--muted);border:1px solid var(--border);border-radius:12px;padding:14px;cursor:pointer;transition:all .3s ease}.consent-card:hover{border-color:var(--ring);background:var(--accent)}.consent-card.checked{border-color:var(--gold);background:var(--gold-alpha-8)}.consent-card-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.consent-card-icon{font-size:24px;line-height:1}.consent-card-title-area{flex:1;min-width:0}.consent-card-title{font-size:14px;font-weight:600;color:var(--white);margin-bottom:4px}.consent-card-summary{font-size:12px;color:var(--gray);line-height:1.4}.consent-card-highlights{display:flex;gap:8px;flex-wrap:wrap}.consent-highlight-item{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--gold-alpha-10);border-radius:20px;font-size:12px;color:var(--gold)}.highlight-icon{font-size:12px}.highlight-text{white-space:nowrap}.consent-detail-btn{padding:8px 12px;background:transparent;border:1px solid var(--gold-alpha-40);border-radius:8px;color:var(--gold);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;align-self:center}.consent-detail-btn:hover{background:var(--gold-alpha-15);border-color:var(--gold)}.consent-popup-overlay{position:fixed;inset:0;background:#000000f2;z-index:var(--z-toast);display:flex;align-items:stretch;justify-content:center;padding:0;animation:fadeIn .2s ease}.consent-popup-modal{background:linear-gradient(135deg,var(--bg-dark) 0%,#1a1f35 100%);border:none;border-radius:0;width:100%;max-width:100%;max-height:100vh;height:100%;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.consent-popup-header{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid var(--gold-alpha-20);background:var(--gold-alpha-5)}.consent-popup-icon{font-size:32px}.consent-popup-title{flex:1;font-size:18px;font-weight:600;color:var(--gold);margin:0}.consent-popup-close{width:36px;height:36px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50%;color:var(--gray);cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all .2s ease}.consent-popup-close:hover{background:#ffffff1a;color:var(--white)}.consent-popup-infographic{padding:20px}.consent-popup-summary{font-size:14px;color:var(--gray);text-align:center;margin:0 0 20px}.consent-popup-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.consent-popup-card{display:flex;align-items:center;gap:10px;padding:14px;background:var(--muted);border:1px solid var(--border);border-radius:12px;transition:all .2s ease}.consent-popup-card:hover{border-color:var(--ring);background:var(--accent)}.popup-card-icon{font-size:24px;line-height:1}.popup-card-content{flex:1;min-width:0}.popup-card-title{font-size:13px;font-weight:600;color:var(--gold);margin-bottom:4px}.popup-card-desc{font-size:12px;color:var(--gray);line-height:1.4}.consent-popup-fulltext{flex:1;overflow:hidden;display:flex;flex-direction:column;padding:0 20px;min-height:0}.consent-popup-fulltext-label{font-size:12px;font-weight:500;color:var(--gold);margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--gold-alpha-20)}.consent-popup-fulltext-content{flex:1;overflow-y:auto;font-size:12px;line-height:1.7;color:var(--gray);white-space:pre-wrap;background:#0003;padding:16px;border-radius:8px;max-height:200px}.consent-popup-actions{padding:16px 20px;padding-top:max(env(safe-area-inset-top,20px) + 16px,48px);border-top:1px solid var(--gold-alpha-20);background:#0003}.consent-popup-agree-btn{width:100%;padding:14px;background:var(--gold);border:none;border-radius:10px;font-size:15px;font-weight:600;color:var(--bg-dark);cursor:pointer;transition:all .2s ease}.consent-popup-agree-btn:hover{background:#d4af5a;transform:translateY(-1px)}.consent-popup-agree-btn.agreed{background:var(--gold-alpha-20);color:var(--gold);cursor:default}@media(max-width:480px){.consent-popup-grid{grid-template-columns:1fr}.consent-card-header{flex-wrap:wrap}.consent-card-highlights{margin-top:4px}}.support-page{padding:16px;max-width:800px;margin:0 auto}.support-tabs{display:flex;gap:8px;margin-bottom:20px;background:var(--muted);padding:6px;border-radius:12px}.support-tab{flex:1;padding:12px 16px;background:transparent;border:none;border-radius:8px;color:var(--gray);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:space-between;gap:6px}.support-tab:hover{color:var(--white);background:#ffffff0d}.support-tab.active{background:var(--primary);color:var(--primary-foreground)}.inquiry-badge{background:var(--error);color:#fff;font-size:12px;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.faq-section{display:flex;flex-direction:column;gap:24px}.faq-category-title{font-size:16px;font-weight:600;color:var(--gold);margin-bottom:12px;padding-left:4px}.faq-list{display:flex;flex-direction:column;gap:8px}.faq-item{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;transition:all .2s ease}.faq-item.expanded{border-color:var(--ring)}.faq-question{display:flex;align-items:center;gap:12px;padding:16px;cursor:pointer;transition:background .2s ease}.faq-question:hover{background:#ffffff08}.faq-q-icon{width:24px;height:24px;background:var(--gold);color:var(--bg-dark);border-radius:6px;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;flex-shrink:0}.faq-q-text{flex:1;font-size:14px;color:var(--white);line-height:1.5}.faq-arrow{color:var(--gray);transition:transform .2s ease;flex-shrink:0}.faq-item.expanded .faq-arrow{transform:rotate(180deg)}.faq-answer{display:flex;gap:12px;padding:0 16px 16px;animation:fadeIn .2s ease}.faq-a-icon{width:24px;height:24px;background:var(--gold-alpha-20);color:var(--gold);border-radius:6px;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;flex-shrink:0}.faq-a-text{font-size:14px;color:var(--gray);line-height:1.7}.contact-section .card{display:flex;flex-direction:column;gap:16px}.contact-section .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.category-buttons{display:flex;flex-wrap:wrap;gap:8px}.category-btn{padding:8px 14px;background:var(--muted);border:1px solid var(--border);border-radius:20px;color:var(--muted-foreground);font-size:13px;cursor:pointer;transition:all .2s ease}.category-btn:hover{border-color:var(--ring);color:var(--foreground);background:var(--accent)}.category-btn.active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.required{color:var(--error)}.inquiry-history,.inquiry-list{display:flex;flex-direction:column;gap:12px}.inquiry-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:16px;box-shadow:var(--ds-shadow-sm)}.inquiry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.inquiry-category{font-size:12px;color:var(--gray)}.inquiry-status{font-size:12px;padding:3px 8px;border-radius:10px;color:#fff;font-weight:500}.inquiry-subject{font-size:15px;font-weight:600;color:var(--white);margin:0 0 8px}.inquiry-content{font-size:13px;color:var(--gray);line-height:1.5;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inquiry-date{font-size:12px;color:var(--gray)}.inquiry-reply{margin-top:12px;padding-top:12px;border-top:1px solid var(--gold-alpha-20)}.reply-label{font-size:12px;font-weight:600;color:var(--gold);margin-bottom:6px}.reply-content{font-size:13px;color:var(--white);line-height:1.6;margin:0 0 6px}.reply-date{font-size:12px;color:var(--gray)}.empty-state{text-align:center;padding:20px 20px calc(env(safe-area-inset-bottom,20px) + 100px);color:var(--gray)}.empty-state p{margin-bottom:16px}@media(max-width:480px){.contact-section .form-row{grid-template-columns:1fr}.category-buttons{display:grid;grid-template-columns:repeat(2,1fr)}}.desktop-layout{display:flex;justify-content:center;align-items:center;gap:60px;height:calc(var(--vh, 1vh) * 100);height:100dvh;overflow:hidden;background-image:url(/images/nabi-background.png);background-size:cover;background-position:center center;background-attachment:fixed;background-repeat:no-repeat;background-color:#0a0e17;position:relative}@media(max-width:767px){.desktop-layout{overflow:visible!important;display:block;background-image:none;background-color:var(--bg-main)}}.desktop-banner{display:none}.slide-indicators{display:flex;justify-content:center;gap:3px;margin-top:12px}.mobile-app-wrapper{flex:1;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:var(--z-sticky)}.mobile-frame{width:100%;max-width:100%;position:relative;z-index:var(--z-sticky)}@media(min-width:1024px){.desktop-banner{display:flex;flex:0 1 500px;min-width:380px;max-width:500px;background:transparent;border-right:none;padding:0;flex-direction:column;justify-content:center;align-items:center;height:780px;max-height:780px;overflow:hidden;z-index:var(--z-content);position:relative}.banner-content{text-align:center;width:100%;max-width:450px;margin:0 auto;display:flex;flex-direction:column;align-items:center;background:#0a0e178c;border-radius:24px;padding:32px;border:1px solid var(--gold-alpha-20);position:relative;z-index:var(--z-sticky)}.banner-logo{margin-bottom:40px}.banner-icon{font-size:72px;display:block;margin-bottom:16px;filter:drop-shadow(0 0 30px var(--gold-alpha-50))}.banner-title{font-family:var(--font-serif);font-size:48px;font-weight:700;color:var(--gold-dark);margin:0 0 8px;letter-spacing:8px}.banner-subtitle{font-size:18px;color:#fff9;margin:0;letter-spacing:4px}.banner-tagline{margin-bottom:48px}.banner-tagline p{font-size:20px;color:var(--white);margin:0 0 8px}.banner-tagline .banner-desc{font-size:14px;color:#ffffff80;letter-spacing:2px}.banner-features{display:flex;flex-direction:column;gap:16px;margin-bottom:48px}.banner-feature{display:flex;align-items:center;gap:12px;padding:12px 20px;background:var(--gold-alpha-8);border:1px solid var(--gold-alpha-20);border-radius:12px;font-size:14px;color:#fffc;transition:all .3s ease}.banner-feature:hover{background:var(--gold-alpha-15);border-color:var(--gold-alpha-40);transform:translate(8px)}.banner-feature span:first-child{font-size:20px}.banner-qr{padding:20px;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:16px}.banner-qr p{margin:0;font-size:14px;color:#fff9}.banner-qr .qr-hint{font-size:12px;color:#bfb8b6;margin-top:4px}html,body{overflow:hidden}.mobile-app-wrapper{flex:0 0 420px;padding:30px 10px;overflow:visible;display:flex;justify-content:center;align-items:center;min-height:calc(var(--vh, 1vh) * 100);min-height:100dvh;box-sizing:border-box}.mobile-frame{width:400px;min-width:400px;flex-shrink:0;height:calc(100dvh - 60px);max-height:calc(100dvh - 60px);background-color:var(--bg-main);border-radius:40px;box-shadow:0 0 0 8px var(--bg-card),0 0 0 10px var(--gold-alpha-20),0 25px 80px #00000040;overflow:hidden;position:relative;display:flex;flex-direction:column;transform:translateZ(0);overscroll-behavior:contain}.mobile-frame .app-container{flex:1 1 0%;overflow-y:auto!important;overflow-x:hidden;border-radius:40px 40px 0 0;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;padding-bottom:100px;min-height:0!important;max-height:100%;background:transparent!important;height:0;scrollbar-width:thin;scrollbar-color:var(--gold-alpha-30) transparent;overscroll-behavior:contain}.mobile-frame .app-container::-webkit-scrollbar{width:4px}.mobile-frame .app-container::-webkit-scrollbar-track{background:transparent}.mobile-frame .app-container::-webkit-scrollbar-thumb{background:var(--gold-alpha-30);border-radius:4px}.mobile-frame .app-container::-webkit-scrollbar-thumb:hover{background:var(--gold-alpha-50)}.mobile-frame .app-container>div{min-height:auto!important}.mobile-frame .bottom-nav{position:absolute!important;inset:auto 0 0!important;transform:none!important;max-width:100%;width:100%;border-radius:24px 24px 0 0!important;min-height:var(--bottom-nav-height);padding:12px 8px 18px;z-index:var(--z-sticky-nav);overflow:visible;margin:0}.mobile-frame{position:relative;display:flex;flex-direction:column;min-height:780px;max-height:780px}.mobile-frame .modal-overlay{position:absolute;width:100%;height:100%;border-radius:40px;padding:20px 16px}.mobile-frame .modal-content{max-height:70vh;width:calc(100% - 24px);max-width:100%}.mobile-frame .fixed-bottom-bar{left:0!important;right:0!important;transform:none!important;max-width:100%!important;margin:0!important}.mobile-frame .fixed-overlay{left:0!important;right:0!important;transform:none!important;max-width:100%!important;margin:0!important;width:100%!important;border-radius:40px}}@media(min-width:1440px){.desktop-banner{width:600px;max-width:50vw;padding:50px}.banner-content{max-width:480px;padding:40px}.mobile-app-wrapper{flex:0 0 520px;padding:30px 60px}.mobile-frame{width:400px;min-width:400px}}@media(min-width:1024px){.desktop-layout.admin-fullscreen .desktop-banner{display:none!important}.desktop-layout.admin-fullscreen .mobile-app-wrapper{flex:1;padding:0;justify-content:space-between;align-items:stretch}.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode{width:100%;max-width:100%;min-width:100%;height:calc(var(--vh, 1vh) * 100);height:100dvh;max-height:none;border-radius:0;box-shadow:none;transform:none}.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode .app-container{border-radius:0;padding-bottom:0;overflow-y:auto!important;overflow-x:hidden;-webkit-overflow-scrolling:touch;height:auto;flex:1 1 0%;min-height:0}.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode .bottom-nav{display:none}.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode .app-header{border-radius:0}.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode .fixed-overlay,.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode .modal-overlay{position:fixed!important}}@media(min-width:768px)and (max-width:1023px){.desktop-layout{display:flex!important;justify-content:center!important;align-items:center!important;height:100dvh!important;overflow:hidden!important;background-color:#0a0e17}.mobile-app-wrapper{padding:20px;flex:0 0 auto;display:flex;justify-content:center;align-items:center}.mobile-frame{max-width:500px;min-width:380px;border-radius:24px;box-shadow:0 10px 40px #0000004d;overflow:hidden!important;transform:translateZ(0)!important;display:flex!important;flex-direction:column!important;height:calc(100dvh - 60px)!important;max-height:calc(100dvh - 60px)!important}.mobile-frame .app-container{flex:1 1 0%!important;overflow-y:auto!important;overflow-x:hidden!important;min-height:0!important;max-height:100%!important;height:0!important;padding-top:0!important}.mobile-frame .app-header{position:sticky!important;top:0!important;left:0!important;right:0!important;max-width:100%!important;width:100%!important;margin:0!important;border-radius:24px 24px 0 0!important;z-index:var(--z-dropdown)!important;transform:none!important}.mobile-frame .bottom-nav{position:absolute!important;bottom:0!important;left:0!important;right:0!important;max-width:100%!important;width:100%!important;margin:0!important;transform:none!important;border-radius:24px 24px 0 0!important;z-index:var(--z-sticky-nav)}.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode{width:100%!important;max-width:100%!important;min-width:100%!important;height:100dvh!important;max-height:none!important;border-radius:0!important;box-shadow:none!important;transform:none!important;overflow:auto!important}.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode .app-container{border-radius:0!important;padding-bottom:0!important}.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode .bottom-nav{display:none!important}.desktop-layout.admin-fullscreen .mobile-frame.fullscreen-mode .modal-overlay{position:fixed!important;width:100vw!important;height:100vh!important;border-radius:0!important}.mobile-frame .modal-overlay{position:absolute;width:100%;height:100%;border-radius:24px;padding:20px 16px}.mobile-frame .modal-content{max-height:70vh;width:calc(100% - 24px);max-width:100%}}@media(min-width:1024px){.banner-header{display:flex;align-items:center;gap:16px;margin-bottom:40px}.banner-logo-icon{font-size:56px;filter:drop-shadow(0 0 20px var(--gold-alpha-40))}.banner-main-title{font-family:var(--font-serif);font-size:36px;font-weight:700;color:var(--gold-dark);margin:0;letter-spacing:4px}.banner-main-subtitle{font-size:14px;color:#ffffff80;margin:4px 0 0;letter-spacing:2px}.banner-slideshow{position:relative;background:#00000026;border:1px solid var(--gold-alpha-10);border-radius:20px;padding:40px;margin-bottom:32px;width:100%;box-sizing:border-box}.slide-content{display:flex;flex-direction:column;align-items:center;text-align:center;animation:slideIn .8s ease-in-out}@keyframes slideIn{0%{opacity:0}to{opacity:1}}.slide-icon{font-size:64px;font-family:var(--font-serif);margin-bottom:16px;text-shadow:0 0 30px currentColor}.slide-title{font-size:24px;font-weight:700;color:var(--white);margin:0 0 8px}.slide-subtitle{font-size:14px;color:#fff9;margin:0 0 24px}.slide-stats{display:flex;justify-content:space-between;gap:24px;margin-bottom:24px}.stat-item{text-align:center}.stat-value{font-size:22px;font-weight:700;margin-bottom:4px}.stat-label{font-size:12px;color:#ffffff80}.slide-features{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.feature-tag{padding:6px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;font-size:12px;color:#ffffffb3}.slide-indicators{display:flex;justify-content:space-between;gap:6px;margin-top:16px}.banner-footer{text-align:center}.footer-text{font-size:16px;color:#fff;margin:0 0 8px}.footer-services{font-size:12px;color:#aaa;margin:0;letter-spacing:1px}}@media(min-width:1024px){.desktop-layout .app-header{display:none!important}.desktop-layout .app-container{padding-top:0!important}.mobile-frame .app-header{display:flex!important;position:sticky!important;position:-webkit-sticky!important;top:0!important;left:0!important;right:0!important;background:var(--bg-card)!important;border-radius:40px 40px 0 0;z-index:var(--z-dropdown);border-bottom:1px solid var(--border-light)!important}.mobile-frame .app-container{padding-top:0!important}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.ai-chat-page{display:flex;flex-direction:column;height:calc(var(--vh, 1vh) * 100 - 56px - 70px);height:calc(100dvh - 126px);min-height:0;overflow:hidden;position:relative}@media(min-width:1024px){.mobile-frame .ai-chat-page{height:100%}}.ai-chat-page .chat-messages{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0}.ai-chat-page .chat-input-area{flex-shrink:0;background:var(--bg-card);border-top:1px solid var(--border-light)}.chat-input-fixed{position:fixed;bottom:70px;left:50%;transform:translate(-50%);width:calc(100% - 32px);max-width:400px;padding:12px 16px;background:var(--bg-card);border-top:1px solid var(--border);border-radius:16px 16px 0 0;z-index:var(--z-sticky-nav)}@media(max-width:479px){.chat-input-fixed{max-width:100%;width:100%;left:0;transform:none;border-radius:0;padding:10px 12px}}@media(min-width:768px){.chat-input-fixed{bottom:calc(70px + env(safe-area-inset-bottom,0px))}}.chat-page-content{min-height:calc(var(--vh, 1vh) * 100 - 180px)!important}@media(min-width:768px){.chat-page-content{min-height:600px!important}}.radar-container{position:relative;width:280px;height:280px;margin:0 auto}.radar-display{position:relative;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,#1e3a8a1a,#1e3a8a33,#1e3a8a4d,#1e3a8a66,#1e3a8a80);border:2px solid rgba(96,165,250,.6);box-shadow:0 0 30px #60a5fa4d,inset 0 0 50px #1e3a8a4d;overflow:hidden}.radar-grid{position:absolute;inset:0;border-radius:50%}.radar-ring{position:absolute;border:1px solid rgba(96,165,250,.3);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.radar-ring.ring-25{width:25%;height:25%}.radar-ring.ring-50{width:50%;height:50%}.radar-ring.ring-75{width:75%;height:75%}.radar-ring.ring-100{width:100%;height:100%}.radar-line{position:absolute;top:50%;left:50%;width:50%;height:1px;background:#60a5fa4d;transform-origin:left center}.radar-line.line-h{transform:translateY(-50%);width:100%;left:0}.radar-line.line-v{transform:translateY(-50%) rotate(90deg)}.radar-line.line-d1{transform:translateY(-50%) rotate(45deg)}.radar-line.line-d2{transform:translateY(-50%) rotate(-45deg)}.radar-sweep{position:absolute;top:50%;left:50%;width:50%;height:50%;background:conic-gradient(from 0deg,transparent 0deg,rgba(96,165,250,.4) 30deg,transparent 60deg);transform-origin:left top;animation:radarSweep 3s linear infinite;border-radius:0 100% 0 0}@keyframes radarSweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.radar-center{position:absolute;top:50%;left:50%;width:12px;height:12px;background:var(--gold);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 10px var(--gold),0 0 20px var(--gold-alpha-50);z-index:var(--z-sticky)}.radar-blip{position:absolute;transform:translate(-50%,-50%);z-index:var(--z-elevated);cursor:pointer;transition:transform .3s ease}.radar-blip:hover{transform:translate(-50%,-50%) scale(1.2)}.radar-butterfly{position:relative;width:24px;height:24px}.radar-butterfly-wing{position:absolute;width:10px;height:16px;border-radius:50%;animation:radarWingFlap .8s ease-in-out infinite}.radar-butterfly-wing.left{left:0;background:linear-gradient(135deg,var(--gold) 0%,var(--gold-alpha-60) 100%);transform-origin:right center;animation-name:radarWingFlapLeft}.radar-butterfly-wing.right{right:0;background:linear-gradient(-135deg,var(--gold) 0%,var(--gold-alpha-60) 100%);transform-origin:left center;animation-name:radarWingFlapRight}.radar-butterfly-body{position:absolute;left:50%;top:50%;width:4px;height:12px;background:var(--gold);border-radius:2px;transform:translate(-50%,-50%)}@keyframes radarWingFlapLeft{0%,to{transform:rotateY(0) scaleX(1)}50%{transform:rotateY(40deg) scaleX(.8)}}@keyframes radarWingFlapRight{0%,to{transform:rotateY(0) scaleX(1)}50%{transform:rotateY(-40deg) scaleX(.8)}}.radar-blip-info{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--bg-card);padding:6px 10px;border-radius:8px;white-space:nowrap;font-size:12px;color:var(--foreground);opacity:0;pointer-events:none;transition:opacity .2s ease;border:1px solid var(--border);box-shadow:var(--ds-shadow-sm);margin-bottom:4px}.radar-blip:hover .radar-blip-info{opacity:1}.radar-blip-score{color:var(--gold);font-weight:600}.radar-legend{display:flex;justify-content:space-between;gap:16px;margin-top:16px;font-size:12px;color:var(--gray)}.radar-legend-item{display:flex;align-items:center;gap:6px}.radar-legend-dot{width:8px;height:8px;border-radius:50%}.page-container{min-height:100%;padding-bottom:120px;max-width:640px;margin:0 auto}@keyframes butterflyFly{0%{transform:translate(-50px) translateY(0) rotate(0) scale(.5);opacity:0}10%{opacity:1;transform:translate(0) translateY(-20px) rotate(-10deg) scale(1)}25%{transform:translate(25%) translateY(-35px) rotate(10deg) scale(1.1)}50%{transform:translate(50%) translateY(-25px) rotate(-5deg) scale(1)}75%{transform:translate(75%) translateY(-40px) rotate(15deg) scale(1.1)}90%{opacity:1;transform:translate(90%) translateY(-20px) rotate(-10deg) scale(1)}to{transform:translate(calc(100% + 50px)) translateY(0) rotate(0) scale(.5);opacity:0}}@keyframes butterflyFlyReverse{0%{transform:translate(calc(100% + 50px)) translateY(0) rotate(0) scale(.5) scaleX(-1);opacity:0}10%{opacity:1;transform:translate(100%) translateY(-20px) rotate(10deg) scale(1) scaleX(-1)}25%{transform:translate(75%) translateY(-35px) rotate(-10deg) scale(1.1) scaleX(-1)}50%{transform:translate(50%) translateY(-25px) rotate(5deg) scale(1) scaleX(-1)}75%{transform:translate(25%) translateY(-40px) rotate(-15deg) scale(1.1) scaleX(-1)}90%{opacity:1;transform:translate(10%) translateY(-20px) rotate(10deg) scale(1) scaleX(-1)}to{transform:translate(-50px) translateY(0) rotate(0) scale(.5) scaleX(-1);opacity:0}}@keyframes wingFlap{0%,to{transform:scaleX(1)}50%{transform:scaleX(.7)}}.butterfly-container{position:absolute;top:50%;left:0;width:100%;pointer-events:none;z-index:var(--z-dropdown)}.butterfly-flying{position:absolute;left:0;animation:butterflyFly .8s ease-in-out forwards}.butterfly-flying-reverse{position:absolute;right:0;animation:butterflyFlyReverse .8s ease-in-out forwards}.butterfly-wing{animation:wingFlap .15s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.05);opacity:1}}@keyframes slideInFromRight{0%{transform:translate(30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInFromLeft{0%{transform:translate(-30px);opacity:0}to{transform:translate(0);opacity:1}}.page-transition-right{animation:slideInFromRight .35s ease-out forwards}.page-transition-left{animation:slideInFromLeft .35s ease-out forwards}.sealed-card{position:relative;overflow:hidden}.sealed-card:before{content:"";position:absolute;inset:0;background:var(--bg-card);z-index:var(--z-sticky)}.sealed-card:after{content:"🔒";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:32px;z-index:calc(var(--z-sticky) + 1);filter:drop-shadow(0 0 8px var(--gold-alpha-50))}.premium-sealed{position:relative;cursor:pointer}.premium-sealed:before{content:"";position:absolute;inset:0;background:var(--bg-card);border-radius:inherit;z-index:var(--z-elevated)}.premium-sealed-badge{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:calc(var(--z-elevated) + 1);display:flex;flex-direction:column;align-items:center;gap:8px}.premium-sealed-badge .lock-icon{width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,var(--gold-alpha-20) 0%,var(--gold-alpha-10) 100%);border:2px solid var(--gold-alpha-50);display:flex;align-items:center;justify-content:space-between;font-size:24px}.premium-sealed-badge .unlock-text{color:var(--gold);font-size:13px;font-weight:600}@keyframes sealedGlow{0%,to{box-shadow:0 8px 32px #00000080,inset 0 1px #ffffff0d,0 0 20px var(--gold-alpha-10)}50%{box-shadow:0 8px 32px #00000080,inset 0 1px #ffffff0d,0 0 40px var(--gold-alpha-20)}}@keyframes sealedPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes sealedRotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes sealedRotateReverse{0%{transform:translate(-50%,-50%) rotate(360deg)}to{transform:translate(-50%,-50%) rotate(0)}}@keyframes sealedFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes sealedRing{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@media(min-width:1024px){.mobile-frame .app-container>div:first-child{min-height:100%;padding-bottom:60px!important}}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent;border-radius:4px}::-webkit-scrollbar-thumb{background:#0000002e;border-radius:4px;border:1px solid rgba(0,0,0,.04)}::-webkit-scrollbar-thumb:hover{background:#00000052}::-webkit-scrollbar-corner{background:transparent}*{scrollbar-width:thin;scrollbar-color:var(--border) var(--muted)}button:disabled,.btn:disabled,.btn-korean:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}button:disabled:hover,.btn:disabled:hover,.btn-korean:disabled:hover{transform:none;box-shadow:none}.icon-sm{width:18px;height:18px}.icon-md{width:24px;height:24px}.icon-lg{width:32px;height:32px}.emoji-icon-sm{font-size:16px;line-height:1}.emoji-icon-md{font-size:20px;line-height:1}.emoji-icon-lg{font-size:24px;line-height:1}.emoji-icon-xl{font-size:28px;line-height:1}svg[stroke=currentColor]{stroke-width:1.8}.touch-target,.modal-close,.toast-close,.dialog-close{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:space-between}.btn-sm{padding:8px 16px;font-size:13px;min-height:36px}.btn-md{padding:12px 24px;font-size:14px;min-height:44px}.btn-lg{padding:16px 32px;font-size:16px;min-height:52px}.btn-loading{position:relative;color:transparent!important}.btn-loading:after{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin-left:-10px;margin-top:-10px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:button-spin .8s linear infinite}@keyframes button-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slowRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card:focus-within{outline:2px solid var(--ring);outline-offset:2px}.card-interactive{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.card-interactive:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.card-interactive:active{transform:translateY(0)}.banner-nav-arrows{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);padding:0 8px;display:flex;justify-content:space-between;gap:16px;margin-bottom:12px}.banner-arrow{width:40px;height:40px;border-radius:50%;background:var(--gold-alpha-15);border:1px solid var(--gold-alpha-30);color:var(--gold-dark);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all .3s ease}.banner-arrow:hover{background:var(--gold-alpha-30);transform:scale(1.1)}.banner-arrow:active{transform:scale(.95)}.horizontal-scroll-tabs{display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-x;scroll-snap-type:x mandatory;padding:0 16px 12px}.horizontal-scroll-tabs::-webkit-scrollbar{display:none}.horizontal-scroll-tabs button{scroll-snap-align:start;flex-shrink:0}.scroll-tabs-container{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-x;padding:0 16px 12px}.scroll-tabs-container::-webkit-scrollbar{display:none}.fortune-section-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--gold-alpha-20)}.lucky-highlight{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,var(--gold-alpha-20),var(--gold-alpha-10));padding:4px 10px;border-radius:8px;border:1px solid var(--gold-alpha-40);margin:2px 4px;font-weight:600;color:var(--gold);animation:luckyPulse 2s ease-in-out infinite}@keyframes luckyPulse{0%,to{box-shadow:0 0 0 0 var(--gold-alpha-20)}50%{box-shadow:0 0 8px 2px var(--gold-alpha-30)}}.lucky-info-box{background:linear-gradient(135deg,rgba(34,197,94,.15),var(--gold-alpha-10));border-radius:var(--radius-md);padding:var(--space-lg);margin:var(--space-lg) 0;border:1px solid rgba(34,197,94,.3)}.advice-highlight-box{border-radius:var(--radius-md);padding:var(--space-lg);margin:var(--space-lg) 0;position:relative;overflow:hidden}.advice-highlight-box p,.advice-highlight-box div{line-height:1.8}.advice-highlight-box:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--element-earth),var(--gold))}.fortune-detail-section{background:var(--overlay-3);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-md);border-left:3px solid var(--gold);transition:transform .2s ease,box-shadow .2s ease}.fortune-detail-section:hover{transform:translate(4px);box-shadow:var(--shadow-sm)}.fortune-detail-section p{line-height:1.8;word-break:keep-all}.score-label{display:flex;align-items:center;gap:var(--space-xs)}.insight-highlight{background:linear-gradient(135deg,var(--gold-alpha-15),var(--gold-alpha-5));padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);border-left:3px solid var(--gold);font-weight:500;line-height:1.8}@keyframes ticket-shimmer{0%{transform:translate(-100%) rotate(25deg)}to{transform:translate(200%) rotate(25deg)}}.ticket-shimmer-overlay{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:var(--z-content)}.ticket-shimmer-overlay:before{content:"";position:absolute;top:-50%;left:-50%;width:50%;height:200%;background:linear-gradient(90deg,transparent 0%,var(--gold-alpha-10) 25%,var(--gold-alpha-40) 50%,var(--gold-alpha-10) 75%,transparent 100%);animation:ticket-shimmer 3s ease-in-out infinite}.ticket-sparkle{position:absolute;width:4px;height:4px;background:radial-gradient(circle,var(--gold-dark) 0%,transparent 70%);border-radius:50%;animation:sparkle-twinkle 2s ease-in-out infinite;pointer-events:none}@keyframes sparkle-twinkle{0%,to{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1)}}.ticket-sparkle:nth-child(1){top:15%;left:20%;animation-delay:0s}.ticket-sparkle:nth-child(2){top:25%;left:80%;animation-delay:.5s}.ticket-sparkle:nth-child(3){top:40%;left:10%;animation-delay:1s}.ticket-sparkle:nth-child(4){top:35%;left:90%;animation-delay:1.5s}.ticket-sparkle:nth-child(5){top:10%;left:50%;animation-delay:.7s}@keyframes ticket-glow-pulse{0%,to{opacity:.3}50%{opacity:.6}}.ticket-glow-effect{position:absolute;inset:0;pointer-events:none;z-index:var(--z-content);background:radial-gradient(ellipse 80% 50% at 50% 0%,var(--gold-alpha-25) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 80% 20%,var(--gold-alpha-15) 0%,transparent 50%),radial-gradient(ellipse 50% 30% at 20% 30%,var(--gold-alpha-10) 0%,transparent 40%);animation:ticket-glow-pulse 4s ease-in-out infinite}@keyframes border-shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes border-glow-pulse{0%,to{box-shadow:0 0 8px var(--gold-alpha-50),0 0 16px var(--gold-alpha-30)}50%{box-shadow:0 0 18px #ffd764cc,0 0 35px var(--gold-alpha-50)}}.ticket-border-shimmer{position:relative;border:2px solid var(--gold-alpha-60)!important;animation:border-glow-pulse 2s ease-in-out infinite}.ticket-border-shimmer:before{content:"";position:absolute;inset:-3px;border-radius:18px;background:linear-gradient(90deg,transparent 0%,transparent 30%,rgba(255,223,120,.95) 50%,transparent 70%,transparent 100%);background-size:200% 100%;animation:border-shimmer 2s linear infinite;z-index:var(--z-behind);pointer-events:none}.ticket-border-shimmer:after{content:"";position:absolute;inset:-2px;border-radius:18px;border:2px solid transparent;background:linear-gradient(90deg,var(--gold),rgba(255,215,100,1),var(--gold)) border-box;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:destination-out;mask-composite:exclude;z-index:var(--z-content);pointer-events:none}.input,.admin-section input[type=text],.admin-section input[type=number],.admin-section input[type=email],.admin-section input[type=password],.admin-section input[type=date],.admin-section input[type=url],.admin-section textarea,.admin-section select{width:100%;padding:12px 16px;background:var(--input-background);border:1px solid var(--border);border-radius:8px;color:var(--foreground);font-size:14px;font-family:var(--font-sans);transition:all .2s ease;outline:none;box-sizing:border-box}.input:focus,.admin-section input:focus,.admin-section textarea:focus,.admin-section select:focus{border-color:var(--ring);box-shadow:var(--focus-ring);background:var(--input-background)}.input::placeholder,.admin-section input::placeholder,.admin-section textarea::placeholder{color:var(--muted-foreground);opacity:.7}.admin-section textarea{resize:vertical;min-height:80px}.admin-section select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23717182' d='M6 8L2 4h8z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.btn-gold,.btn-gold-sm,.admin-section .save-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;min-height:44px;background:var(--primary);color:var(--primary-foreground);border:none;border-radius:var(--radius-sm);font-weight:600;font-size:14px;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;user-select:none;-webkit-tap-highlight-color:transparent;box-shadow:none}.btn-gold:hover,.btn-gold-sm:hover,.admin-section .save-btn:hover{opacity:.85;transform:translateY(-1px)}.btn-gold:active,.btn-gold-sm:active,.admin-section .save-btn:active{transform:translateY(0) scale(.98);opacity:.9}.btn-gold:disabled,.btn-gold-sm:disabled,.admin-section .save-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-gold.btn-full,.btn-outline.btn-full,.btn-secondary.btn-full{width:100%}.btn-gold-sm{padding:8px 16px;min-height:36px;font-size:13px}.nabi-tab-bar{display:flex;gap:6px;padding:5px;background:#00000059;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);margin-bottom:16px;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}.nabi-tab-bar::-webkit-scrollbar{display:none}.nabi-tab-item{flex:1;min-width:0;padding:10px 14px;background:transparent;border:none;border-radius:calc(var(--radius-lg) - 4px);color:var(--text-secondary);font-size:13px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;text-align:center;-webkit-tap-highlight-color:transparent;user-select:none}.nabi-tab-item:hover{color:var(--text-primary);background:var(--gold-alpha-10)}.nabi-tab-item.active{background:linear-gradient(135deg,var(--gold) 0%,var(--gold-dark) 100%);color:var(--bg-dark);font-weight:700;box-shadow:0 2px 12px var(--gold-glow)}.nabi-tab-item .tab-icon{display:block;margin:0 auto 4px}.nabi-tab-item .tab-count{display:inline-block;margin-left:4px;font-size:11px;opacity:.7}.nabi-popup-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:var(--z-tooltip);display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;animation:fadeIn .3s ease}.nabi-popup-content{background:linear-gradient(160deg,#191e2dfa,#0f121cfc);border:1px solid var(--gold-alpha-25);border-radius:20px;padding:28px 24px;max-width:380px;width:100%;box-shadow:0 20px 60px #00000080,0 0 30px var(--gold-alpha-8);animation:slideUpFade .35s ease;text-align:center}.nabi-popup-icon{width:56px;height:56px;border-radius:50%;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--gold-alpha-20),var(--gold-alpha-8));border:2px solid var(--gold-alpha-30)}.nabi-popup-icon.success{background:linear-gradient(135deg,#64c88240,#64c8821a);border-color:#64c88266}.nabi-popup-icon.warning{background:linear-gradient(135deg,#ffb43240,#ffb4321a);border-color:#ffb43266}.nabi-popup-icon.error{background:linear-gradient(135deg,#ff646440,#ff64641a);border-color:#ff646466}.nabi-popup-title{font-size:20px;font-weight:700;color:var(--gold);margin-bottom:8px;font-family:var(--font-serif)}.nabi-popup-title.success{color:#90ee90}.nabi-popup-title.warning{color:#ffb432}.nabi-popup-title.error{color:#ff6b6b}.nabi-popup-desc{font-size:14px;color:var(--text-muted);margin-bottom:24px;line-height:1.6}.nabi-popup-actions{display:flex;flex-direction:column;gap:10px}.nabi-notification-card{background:linear-gradient(135deg,#1e2030f2,#141624fa);border:1px solid var(--gold-alpha-30);border-radius:14px;padding:14px 16px;box-shadow:0 8px 32px #0006;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);animation:slideUpFade .3s ease}.nabi-notification-card.completed{background:linear-gradient(135deg,#1e3228fa,#14231cfa);border-color:#64c88266;box-shadow:0 8px 32px #0006,0 0 20px #64c8821a}.nabi-notification-card.error{background:linear-gradient(135deg,#321e1efa,#231414fa);border-color:#ff64644d}.nabi-progress-bar{height:3px;background:var(--gold-alpha-15);border-radius:2px;overflow:hidden;margin-top:8px}.nabi-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--gold-dark),var(--gold));border-radius:2px;transition:width 1s linear}.nabi-inline-hint{text-align:center;margin-top:8px;font-size:12px;color:var(--text-muted);line-height:1.5}.nabi-bg-info-card{padding:14px 20px;background:linear-gradient(135deg,var(--gold-alpha-8),var(--gold-alpha-5));border:1px solid var(--gold-alpha-15);border-radius:12px;max-width:300px;text-align:center;margin-top:20px}.nabi-bg-info-card .info-title{font-size:13px;color:var(--gold);font-weight:600;margin-bottom:6px;letter-spacing:.3px}.nabi-bg-info-card .info-desc{font-size:12px;color:var(--text-muted);line-height:1.6}.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;min-height:44px;background:transparent;color:var(--foreground);border:1.5px solid var(--border);border-radius:var(--radius-sm);font-weight:500;font-size:14px;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;user-select:none;-webkit-tap-highlight-color:transparent}.btn-outline:hover{background:var(--accent);border-color:#0003;color:var(--foreground)}.btn-outline:active{transform:scale(.98);background:var(--muted)}.btn-outline:disabled{opacity:.5;cursor:not-allowed;transform:none}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=date],input[type=time],select,textarea{padding:12px 16px;min-height:44px;background:var(--bg-input);border:1.5px solid var(--border-medium);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;font-family:var(--font-sans);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);-webkit-appearance:none;appearance:none}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:var(--focus-ring);outline:none}input::placeholder,textarea::placeholder{color:var(--text-disabled)}input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-dark)}.btn-danger{padding:10px 20px;background:#ef444426;border:1px solid rgba(239,68,68,.5);border-radius:8px;color:var(--error);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-danger:hover{background:#ef444440;border-color:var(--error)}.admin-section{padding:0 16px}.admin-section .card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:20px;margin-bottom:16px;box-shadow:var(--ds-shadow-sm)}.admin-section .card-title{font-size:16px;font-weight:700;color:var(--gold);margin-bottom:16px;display:flex;align-items:center;gap:8px}.admin-section input[type=checkbox],.admin-section input[type=radio]{width:18px;height:18px;accent-color:var(--gold);cursor:pointer}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--white);cursor:pointer}.status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.status-badge.active{background:#4c7a6a33;color:var(--element-wood)}.status-badge.inactive{background:#94a3b833;color:var(--text-muted)}.status-badge.pending{background:#fbbf2433;color:var(--element-earth)}.status-badge.error{background:#ef444433;color:var(--error)}.toggle-switch{position:relative;width:44px;height:24px;background:#94a3b84d;border-radius:12px;cursor:pointer;transition:all .2s ease}.toggle-switch.active{background:#4c7a6a99}.toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:var(--white);border-radius:50%;transition:all .2s ease}.toggle-switch.active:after{left:22px;background:var(--element-wood)}@keyframes lotteryBallAppear{0%{transform:scale(0) rotate(-180deg);opacity:0}50%{transform:scale(1.3) rotate(10deg);opacity:1}70%{transform:scale(.9) rotate(-5deg)}to{transform:scale(1) rotate(0);opacity:1}}.lottery-ball-appear{animation:lotteryBallAppear .5s cubic-bezier(.68,-.55,.265,1.55) forwards}.btn-primary{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;background:linear-gradient(135deg,var(--gold),#B8860B);border:none;border-radius:12px;color:var(--ink);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--gold-alpha-30)}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;background:transparent;border:1px solid var(--gold);border-radius:12px;color:var(--gold);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:var(--gold-alpha-10)}.btn-secondary:active{transform:scale(.98)}.btn-jade{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;background:linear-gradient(135deg,var(--jade),#3D6B5C);border:none;border-radius:12px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-jade:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4c7a6a4d}.btn-jade:active{transform:scale(.98)}.sidebar-user-section{padding:16px 16px 12px;padding-top:max(env(safe-area-inset-top,20px) + 16px,48px);border-bottom:1px solid var(--border);background:var(--bg-card)}.sidebar-user-profile{display:flex;align-items:center;gap:12px;margin-bottom:12px}.sidebar-user-section .sidebar-user-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--gold),#B8860B);display:flex;align-items:center;justify-content:center;overflow:hidden;border:2px solid var(--gold-alpha-30);flex-shrink:0}.sidebar-user-section .sidebar-user-avatar img{width:100%;height:100%;object-fit:cover}.sidebar-user-section .sidebar-user-avatar span{font-size:20px;font-weight:700;color:var(--ink)}.sidebar-user-details{flex:1;min-width:0}.sidebar-user-section .sidebar-user-name{font-size:16px;font-weight:600;color:var(--white);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-section .sidebar-user-status{font-size:12px;color:var(--gold);opacity:.9}.sidebar-credit-bar{display:flex;align-items:center;justify-content:space-between;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.sidebar-credit-info{display:flex;align-items:center;gap:6px}.sidebar-credit-info .credit-icon{font-size:14px}.sidebar-credit-info .credit-amount{font-size:15px;font-weight:700;color:var(--white)}.sidebar-credit-info .credit-label{font-size:12px;color:var(--gray)}.sidebar-recharge-btn{padding:10px 18px;font-size:13px;font-weight:700;background:linear-gradient(135deg,var(--gold),#B8860B);color:var(--ink);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:54px;min-height:38px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;position:relative;z-index:var(--z-sticky)}.sidebar-recharge-btn:hover{transform:scale(1.02);box-shadow:0 2px 8px var(--gold-alpha-30)}.sidebar-recharge-btn:active{transform:scale(.95);background:linear-gradient(135deg,#B8860B,var(--gold))}.sidebar-logout-btn{display:block;width:100%;margin-top:10px;padding:10px 12px;font-size:13px;font-weight:600;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:all .2s ease;min-height:38px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;position:relative;z-index:var(--z-sticky)}.sidebar-logout-btn:hover{color:var(--white);border-color:var(--gold-alpha-30);background:var(--overlay-10)}.sidebar-logout-btn:active{transform:scale(.98)}@keyframes chartFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.chart-glow{filter:drop-shadow(0 0 8px var(--gold-alpha-40))}.chart-glow-jade{filter:drop-shadow(0 0 8px rgba(76,122,106,.4))}@keyframes pulseGlow{0%,to{filter:drop-shadow(0 0 6px var(--gold-alpha-30))}50%{filter:drop-shadow(0 0 12px var(--gold-alpha-60))}}.chart-pulse{animation:pulseGlow 3s ease-in-out infinite}.recharts-wrapper{transition:transform .3s ease}.recharts-wrapper:hover{transform:scale(1.02)}.recharts-radar-polygon{transition:fill-opacity .3s ease}.recharts-radar-polygon:hover{fill-opacity:.5!important}.recharts-line-curve{filter:drop-shadow(0 2px 4px var(--gold-alpha-30))}.recharts-area-area{filter:drop-shadow(0 2px 6px var(--gold-alpha-20))}@keyframes womenBannerFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.report-section-divider{display:flex;align-items:center;gap:12px;margin:24px 0 16px}.report-section-divider:before,.report-section-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold-alpha-40),transparent)}.report-section-divider span{font-size:13px;font-weight:700;color:var(--gold);white-space:nowrap;letter-spacing:1px}.report-score-ring{position:relative;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.report-score-ring .ring-inner{width:56px;height:56px;border-radius:50%;background:var(--bg-card, rgba(0,0,0,.4));display:flex;align-items:center;justify-content:center;flex-direction:column}.report-score-ring .ring-inner .score-value{font-size:20px;font-weight:800;line-height:1}.report-score-ring .ring-inner .score-label{font-size:10px;color:var(--gray);margin-top:2px}.report-stat-bar{display:flex;align-items:center;gap:10px;margin-bottom:10px}.report-stat-bar .stat-label{font-size:13px;color:var(--gray);min-width:48px;font-weight:500}.report-stat-bar .stat-track{flex:1;height:8px;background:#ffffff14;border-radius:4px;overflow:hidden;position:relative}.report-stat-bar .stat-fill{height:100%;border-radius:4px;transition:width 1s ease;position:relative}.report-stat-bar .stat-fill:after{content:"";position:absolute;right:0;top:0;width:4px;height:100%;background:#fff6;border-radius:0 4px 4px 0}.report-stat-bar .stat-value{font-size:14px;font-weight:700;min-width:36px;text-align:right}.report-highlight-box{background:linear-gradient(135deg,var(--gold-alpha-10),var(--gold-alpha-5));border:1px solid var(--gold-alpha-25);border-radius:12px;padding:16px;margin-bottom:16px;position:relative;overflow:hidden}.report-highlight-box:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--gold);border-radius:4px 0 0 4px}.report-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.report-badge.positive{background:#22c55e26;color:var(--success-light)}.report-badge.warning{background:#eab30826;color:var(--warning)}.report-badge.negative{background:#ef444426;color:var(--error)}.report-badge.info{background:#3b82f626;color:var(--info)}.report-badge.gold{background:var(--gold-alpha-15);color:var(--gold)}.report-quote-box{border-left:3px solid var(--gold);padding:12px 16px;margin:12px 0;background:var(--gold-alpha-8);border-radius:0 8px 8px 0;font-style:italic;font-size:14px;color:var(--white);line-height:1.8}.report-mini-card{background:#00000026;border-radius:10px;padding:14px;display:flex;align-items:center;gap:12px;transition:transform .2s}.report-mini-card:hover{transform:translateY(-1px)}.report-mini-card .mini-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}.ebook-overlay{position:fixed;inset:0;z-index:var(--z-toast);background:linear-gradient(180deg,#fffdfb,#fff8f5,#f6e9e9);display:flex;flex-direction:column;overflow:hidden}.ebook-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#c79a6b0f;border-bottom:1px solid rgba(199,154,107,.15);flex-shrink:0}.ebook-header .ebook-title{font-family:var(--font-sans);font-size:15px;font-weight:600;color:#c79a6b}.ebook-header .ebook-close{width:36px;height:36px;border-radius:50%;border:1px solid rgba(199,154,107,.25);background:#c79a6b14;color:#c79a6b;font-size:18px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.ebook-header .ebook-close:hover{background:#c79a6b26;transform:scale(1.05)}.ebook-body{flex:1;position:relative;overflow:hidden;perspective:2000px;-webkit-perspective:2000px}.ebook-book{position:relative;width:100%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d}.ebook-page{position:absolute;top:0;left:0;width:100%;height:100%;transform-origin:left center;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .8s cubic-bezier(.645,.045,.355,1),box-shadow .8s cubic-bezier(.645,.045,.355,1);will-change:transform}.ebook-page-front,.ebook-page-back{position:absolute;top:0;left:0;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:28px 24px}.ebook-page-front{background:#fffdfb;background-image:radial-gradient(circle at 50% 0%,rgba(241,243,245,.3) 0%,transparent 60%);z-index:var(--z-content)}.ebook-page-back{background:#fff8f5;transform:rotateY(180deg);z-index:var(--z-base)}.ebook-page:after{content:"";position:absolute;top:0;right:0;width:30px;height:100%;background:linear-gradient(to left,rgba(199,154,107,.06),transparent);pointer-events:none;z-index:var(--z-raised);transition:opacity .8s}.ebook-page.flipped:after{opacity:0}.ebook-page.flipped:before{content:"";position:absolute;top:0;left:0;width:30px;height:100%;background:linear-gradient(to right,rgba(199,154,107,.08),transparent);pointer-events:none;z-index:var(--z-raised)}.ebook-page.flipped{transform:rotateY(-180deg);box-shadow:-6px 0 25px #3a2e2a1f}.ebook-page:not(.flipped){box-shadow:4px 0 15px #3a2e2a14}.ebook-page.flipping{transition:transform .9s cubic-bezier(.4,0,.2,1),box-shadow .9s cubic-bezier(.4,0,.2,1)}.ebook-page-number{position:absolute;bottom:12px;font-family:var(--font-sans);font-size:11px;color:#c79a6b;opacity:.5}.ebook-page-front .ebook-page-number{right:20px}.ebook-page-back .ebook-page-number{left:20px}.ebook-page-content{font-family:var(--font-sans);font-size:13.5px;line-height:2;color:#3a2e2a;letter-spacing:-.01em}.ebook-page-content h2{font-family:var(--font-sans);font-size:17px;font-weight:700;color:#c79a6b;margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid rgba(199,154,107,.3)}.ebook-page-content h3{font-family:var(--font-sans);font-size:14.5px;font-weight:600;color:#8b6b4a;margin:18px 0 8px;padding-left:10px;border-left:3px solid #C79A6B}.ebook-page-content h4{font-family:var(--font-sans);font-size:13.5px;font-weight:600;color:#a08060;margin:14px 0 6px}.ebook-page-content p{margin:0 0 12px;text-align:justify;word-break:keep-all;color:#3a2e2a;text-indent:0}.ebook-page-content .ebook-tip{background:linear-gradient(135deg,#c79a6b14,#f8f9fa80);border-left:3px solid #C79A6B;padding:10px 14px;border-radius:0 8px 8px 0;margin:12px 0;font-size:12.5px;color:#5a4a3e;line-height:1.8;font-style:italic}.ebook-page-content table{width:100%;border-collapse:collapse;margin:12px 0;font-size:12px}.ebook-page-content table th{background:#c79a6b1f;color:#8b6b4a;font-weight:600;padding:8px 6px;border:1px solid rgba(199,154,107,.2);font-size:11.5px}.ebook-page-content table td{padding:6px;border:1px solid rgba(199,154,107,.12);text-align:center;color:#3a2e2a;font-size:12px}.ebook-page-content .ebook-chart-bar{display:flex;align-items:center;gap:6px;margin-bottom:6px}.ebook-page-content .ebook-chart-label{min-width:58px;font-size:11.5px;font-weight:600;color:#8b6b4a}.ebook-page-content .ebook-chart-track{flex:1;height:18px;background:#c79a6b14;border-radius:9px;overflow:hidden}.ebook-page-content .ebook-chart-fill{height:100%;border-radius:9px;display:flex;align-items:center;justify-content:flex-end;padding-right:6px}.ebook-page-content .ebook-chart-value{font-size:10px;font-weight:700;color:#fff}.ebook-page-content .ebook-letter-sign{text-align:right;font-style:italic;color:#c79a6b;margin-top:20px;font-size:13px;font-weight:500}.ebook-page-content .ebook-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(199,154,107,.3),transparent);margin:16px 0}.ebook-cover{background:linear-gradient(145deg,#f6e9e9,#fff5f0);display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;position:relative}.ebook-section-title{font-family:var(--font-sans);font-size:18px;font-weight:600;color:#c79a6b;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(199,154,107,.25)}.ebook-score-bar{width:100%;height:8px;background:#c79a6b1f;border-radius:4px;overflow:hidden;margin:8px 0 12px}.ebook-score-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#c79a6b,#d4a97a,#e0bc8a);transition:width .6s ease-out}.ebook-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#c79a6b0a;border-top:1px solid rgba(199,154,107,.12);flex-shrink:0}.ebook-footer .page-indicator{font-family:var(--font-sans);font-size:12px;color:#8b7b6b;font-weight:500}.ebook-footer .page-dots{display:flex;gap:6px;align-items:center}.ebook-footer .page-dot{width:6px;height:6px;border-radius:50%;background:#c79a6b33;transition:all .3s;cursor:pointer}.ebook-footer .page-dot.active{background:linear-gradient(90deg,#c79a6b,#d4a97a);width:18px;border-radius:3px}.ebook-nav-btn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(199,154,107,.25);background:#c79a6b14;color:#c79a6b;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.ebook-nav-btn:hover{background:#c79a6b26}.ebook-nav-btn:disabled{opacity:.3;cursor:not-allowed}.ebook-open-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border-radius:12px;border:1px dashed rgba(199,154,107,.35);background:linear-gradient(135deg,#f1f3f566,#f8f9fa4d);color:#c79a6b;font-family:var(--font-sans);font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;margin-top:16px}.ebook-open-btn:hover{background:linear-gradient(135deg,#f1f3f599,#f8f9fa80);border-color:#c79a6b80;transform:translateY(-1px);box-shadow:0 4px 12px #c79a6b26}.tutorial-fade-in{animation:tutorialFadeIn .3s ease forwards}.tutorial-fade-out{animation:tutorialFadeOut .2s ease forwards}@keyframes tutorialFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tutorialFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.fixed-overlay button{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.fixed-overlay{-webkit-tap-highlight-color:transparent}.highlight-line{transition:background .2s ease,transform .15s ease}.highlight-line:hover{transform:translate(2px)}.service-intro-slider-card{background:linear-gradient(135deg,#fff,#fdf4eb);border:1px solid var(--gold-alpha-30);border-radius:16px;padding:20px 16px;overflow:hidden;transition:all .5s ease}.service-intro-slider-glow{position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,var(--gold-alpha-15) 0%,transparent 70%);pointer-events:none}.service-intro-slider-card .slider-title{font-size:18px;font-weight:800;color:var(--gold)}.service-intro-slider-card .slider-subtitle{font-size:13px;color:var(--gold-alpha-60);font-weight:500}.service-intro-slider-card .slider-desc{font-size:13px;color:var(--text-primary);line-height:1.5;margin:0 0 12px}.service-intro-slider-card .slider-feature-tag{font-size:13px;padding:4px 8px;background:var(--gold-alpha-20);border-radius:10px;color:var(--gold);font-weight:500;border:1px solid var(--gold-alpha-30)}.service-intro-slider-card .slider-counter{position:absolute;top:12px;right:12px;background:#00000026;border-radius:8px;padding:2px 8px;font-size:13px;color:#ffffffb3}.sidebar{background:linear-gradient(180deg,#fff,#faf7f2);border-right:1px solid rgba(160,120,48,.12);box-shadow:2px 0 12px #78643c14}.sidebar-header{border-bottom:1px solid rgba(0,0,0,.08)}.sidebar-logo span{color:#1e293b}.sidebar-close{color:#64748b}.sidebar-close:hover{color:#1e293b;background:#0000000f}.sidebar-user-section{background:#00000008;border:1px solid rgba(0,0,0,.06)}.sidebar-user-name{color:#1e293b}.sidebar-user-status{color:#64748b}.sidebar-credit-bar{background:#00000008;border-top:1px solid rgba(0,0,0,.06)}.sidebar-category-title{color:#64748b;border-bottom-color:#0000000f}.sidebar-item{color:#475569}.sidebar-item:hover{background:#0000000a;color:#1e293b}.sidebar-item.active{background:#8b69141a;color:#ea4824}.sidebar-footer{border-top:1px solid rgba(0,0,0,.08);color:#94a3b8}.sidebar-footer p{color:#94a3b8}.sidebar-overlay.open{background:#0003}.card{background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 1px 4px #0000000a}.modal-overlay{background:#0000004d}.modal-content{background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 32px #0000001f}.bottom-nav{background:#fffffff2;border-top:1px solid rgba(0,0,0,.08);backdrop-filter:blur(20px)}.bottom-nav-item{color:#94a3b8}.bottom-nav-item.active{color:#ea4824}.auth-container{background:linear-gradient(135deg,#faf7f2,#f0ebe1,#faf7f2)}.login-card,.signup-card{background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 16px #0000000f}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],select,textarea{background:#fdf9f3;border-color:#0000001f;color:#1e293b}input::placeholder,textarea::placeholder{color:#94a3b8}.admin-section{background:#fff;border:1px solid rgba(0,0,0,.06)}.admin-stat-card{background:#fdf9f3;border:1px solid rgba(0,0,0,.06)}.loading-spinner p{color:#475569}.toast{background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 4px 16px #0000001a;color:#1e293b}.page-header{background:linear-gradient(135deg,#f5f3eff2,#ede9e3f2);border-bottom:1px solid rgba(0,0,0,.06)}body{background:#faf7f2!important;color:#1e293b}.welcome-content,.fortune-result-page{background:#faf7f2}.tab-bar{background:#fffffff2;border-bottom:1px solid rgba(0,0,0,.06)}.tab-item{color:#94a3b8}.tab-item.active{color:#ea4824;border-bottom-color:#ea4824}::-webkit-scrollbar-track{background:#faf7f2}::-webkit-scrollbar-thumb{background:#d1d5db}::-webkit-scrollbar-thumb:hover{background:#9ca3af}.profile-section{background:#fff;border:1px solid rgba(0,0,0,.06)}.desktop-sidebar{background:#fff;border-right:1px solid rgba(0,0,0,.06)}.result-section{background:#fff;border:1px solid rgba(0,0,0,.06)}.notification-panel{background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 32px #0000001a}.notification-item{border-bottom:1px solid rgba(0,0,0,.06)}.notification-item:hover{background:#00000005}[style*="rgba(15, 23, 42"],[style*="rgba(15,23,42"]{background:linear-gradient(135deg,#faf7f2,#f0ebe1)!important}[style*="rgba(2, 6, 23"],[style*="rgba(2,6,23"]{background:#faf7f2!important}[style*="rgba(30, 41, 59"],[style*="rgba(30,41,59"]{background:#ede9e3e6!important}[data-video-overlay]{background:linear-gradient(180deg,#f5f3ef66,#f5f3efb3)!important}.fixed-bottom-bar{background:linear-gradient(to top,#FAF7F2 80%,transparent)!important}[style*=ai-chat-bg]{background-color:#fdf9f3!important}.skeleton{background:linear-gradient(90deg,#ede8de 25%,#faf7f2,#ede8de 75%)!important}.admin-panel-header{background:#fff!important;border-bottom:1px solid rgba(0,0,0,.08)!important}.fortune-container,.analysis-result,.saju-result{background:#fff!important;color:#1e293b!important}.fortune-detail-section{background:#00000005!important}.lucky-info-box{background:linear-gradient(135deg,#22c55e14,#8b69140f)!important;border-color:#22c55e40!important}.advice-highlight-box{border-color:#0000001a!important}.service-intro-slider-card{background:linear-gradient(135deg,#f0ebe1,#dcd4ec,#d5cce8)!important;border:1px solid rgba(139,105,20,.2)!important;box-shadow:0 4px 20px #8b691414}.service-intro-slider-glow{background:radial-gradient(circle,rgba(139,105,20,.12) 0%,transparent 70%)!important}.service-intro-slider-card .slider-title{color:#6b4f0e!important}.service-intro-slider-card .slider-subtitle{color:#ea4824!important;opacity:.8}.service-intro-slider-card .slider-desc{color:#3d2b5a!important}.service-intro-slider-card .slider-feature-tag{background:#8b69141f!important;color:#6b4f0e!important;border-color:#8b691440!important}.service-intro-slider-card .slider-counter{background:#8b69141a!important;color:#6b4f0e!important}.petals-container .petal{opacity:.15}.desktop-layout{background-color:#faf7f2!important;background-image:none!important}.welcome-page,.onboarding-page{background:#faf7f2!important}.splash-screen{background:linear-gradient(180deg,#faf7f2,#f0ebe1)!important}.mobile-frame{background:#faf7f2!important}.recharts-text{fill:#475569!important}.recharts-cartesian-axis-tick-value{fill:#64748b!important}.recharts-legend-item-text{color:#475569!important}.page-loading-overlay{background:#f5f3efb3!important}.chat-input-fixed{background:#fff!important;border-top:1px solid rgba(0,0,0,.08)!important}.popular-btn{background:#fff!important;border-color:#00000014!important;box-shadow:0 1px 4px #0000000a!important}.banner-footer{color:#1e293b}.footer-text{color:#1e293b!important}.footer-services{color:#475569!important}.loading-overlay{background:#f5f3efd9!important}.toast-error,.toast-success,.toast-info,.toast-warning{background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 4px 16px #0000001a!important;color:#1e293b!important}.app-header{background:linear-gradient(180deg,#fffffff7,#f5f3eff2)!important;border-bottom:1px solid rgba(0,0,0,.08)!important;box-shadow:0 2px 12px #0000000f!important}.header-logo-text{background:linear-gradient(135deg,#ea4824 0% 50%,#ea4824)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important}.logout-btn{background:#0000000d!important;border:1px solid rgba(0,0,0,.12)!important;color:#475569!important}.logout-btn:hover{background:#00000014!important;border-color:#0000002e!important;color:#1e293b!important}.admin-btn{background:#8b69141a!important;border:1px solid rgba(139,105,20,.35)!important;color:#ea4824}.admin-btn:hover{background:#8b69142e!important}.admin-btn:active{background:#8b691440!important}.login-btn{color:#fff!important}.user-info{background:linear-gradient(135deg,#8b691414,#8b69140a)!important;border:1px solid rgba(139,105,20,.2)!important}.user-info:hover{background:linear-gradient(135deg,#8b691426,#8b691414)!important;border-color:#8b691459!important}.user-name{color:#1e293b!important}.user-avatar{border-color:#8b691466!important;background:linear-gradient(135deg,#fff,#faf7f2)!important}.page-header{background:linear-gradient(135deg,#fffffff2,#f5f3eff2)!important;border-bottom:1px solid rgba(0,0,0,.06)!important}.page-header-nav{background:transparent!important}.nav-btn{background:linear-gradient(135deg,#8b69140f,#8b691408)!important;border:1px solid rgba(139,105,20,.25)!important;box-shadow:inset 0 1px #ffffff80!important}.nav-btn:hover,.nav-btn:active{background:linear-gradient(135deg,#8b69141f,#8b691414)!important;border-color:var(--gold)!important}.app-footer{background:#fff!important;border-top:1px solid rgba(0,0,0,.08)!important}.app-footer.landing-footer{background:transparent!important;border-top-color:#0000000f!important}.footer-company strong{color:#1e293b!important}.footer-company span,.footer-info p{color:#64748b!important}.footer-privacy{border-top-color:#0000000f!important}.footer-privacy p{color:#64748b!important}.footer-privacy a{color:#ea4824!important}.footer-copyright{border-top-color:#0000000f!important}.footer-copyright p{color:#64748b!important}.footer-link-btn{color:#475569!important}.footer-link-btn:hover{color:#1e293b!important}.bottom-nav{background:#fffffff7!important;border-top:1px solid rgba(0,0,0,.08)!important;box-shadow:0 -2px 12px #0000000a!important}.bottom-nav .nav-btn{background:transparent!important;border:none!important;box-shadow:none!important;color:var(--secondary-foreground)!important}.bottom-nav .nav-btn.active{color:#ea4824!important}.bottom-nav .nav-btn:hover{color:#1e293b!important;background:transparent!important;border:none!important}.modal-overlay{background:#0006!important}.modal-content{background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;box-shadow:0 20px 60px #00000026,0 0 0 1px #0000000d!important}.modal-close{background:#0000000d!important;border:1px solid rgba(0,0,0,.1)!important;color:#64748b!important}.modal-close:hover{background:#0000001a!important;color:#1e293b!important}.modal-title{color:#ea4824!important}.modal-body{color:#1e293b!important}.modal-body p{color:#334155!important}.modal-body .detail-label{color:#2d7a5f!important}.modal-body .detail-value{color:#1e293b!important}.modal-body .score-item{background:#00000008!important;border-left:3px solid #ea4824!important}.modal-body .score-label{color:#64748b!important}.modal-body .insight-highlight{background:#8b69140f!important;border-left:3px solid #ea4824!important;color:#ea4824!important}.modal-body .keyword-tag{background:#8b691414!important;border-color:#8b691433!important;color:#ea4824!important}.modal-body .detail-list li:before{color:#ea4824!important}.consent-popup-overlay{background:#fffffffa!important}.consent-popup-modal{background:linear-gradient(135deg,#fff,#fdf9f3)!important;border:none!important;box-shadow:none!important}.consent-popup-header{border-bottom:1px solid rgba(139,105,20,.15)!important;background:#8b69140a!important}.consent-popup-title{color:#ea4824!important}.consent-popup-close{background:#0000000a!important;border:1px solid rgba(0,0,0,.1)!important;color:#64748b!important}.consent-popup-close:hover{background:#00000014!important;color:#1e293b!important}.consent-popup-summary{color:#475569!important}.consent-popup-card{background:#00000005!important;border:1px solid rgba(0,0,0,.08)!important}.consent-popup-card:hover{border-color:#8b69144d!important;background:#8b69140a!important}.popup-card-title{color:#ea4824!important}.popup-card-desc{color:#64748b!important}.consent-popup-fulltext-label{color:#ea4824!important;border-bottom-color:#8b691426!important}.consent-popup-fulltext-content{background:#00000005!important;color:#475569!important;border:1px solid rgba(0,0,0,.06)}.consent-popup-actions{border-top:1px solid rgba(0,0,0,.08)!important;background:#00000005!important}.consent-popup-agree-btn{background:#ea4824!important;color:#fff!important}.consent-popup-agree-btn:hover{background:#ea4824!important}.consent-popup-agree-btn.agreed{background:#8b69141a!important;color:#ea4824!important}.notification-panel{background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;box-shadow:0 8px 32px #0000001f!important}.notification-item{border-bottom:1px solid rgba(0,0,0,.06)!important}.notification-item:hover{background:#8b69140a!important}.notification-item.unread{border-left:3px solid #ea4824!important}.notification-panel::-webkit-scrollbar-thumb,.notification-panel>div:last-child::-webkit-scrollbar-thumb{background:#00000026!important}.notification-badge{box-shadow:0 1px 4px #00000026!important}.gold-btn{color:#fff!important}.outline-btn{background:transparent!important;border:1px solid rgba(0,0,0,.15)!important;color:#475569!important}.outline-btn:hover{background:#0000000a!important;border-color:#0003!important;color:#1e293b!important}.ebook-footer{background:#fff!important;border-top:1px solid rgba(0,0,0,.08)!important}.admin-section{background:#fff!important;border:1px solid rgba(0,0,0,.06)!important}.admin-stat-card{background:#fdf9f3!important;border:1px solid rgba(0,0,0,.06)!important}.admin-tabs{border-bottom:1px solid rgba(0,0,0,.08)}.nabi-modal-overlay,[role=dialog][style*="rgba(15, 23, 42"]{background:#0006!important}.page-header-content{color:#1e293b}.tab-bar{background:#fffffff7!important;border-bottom:1px solid rgba(0,0,0,.08)!important}.tab-item{color:var(--secondary-foreground)!important}.tab-item.active{color:#ea4824!important;border-bottom-color:#ea4824!important}.nabi-tab-bar{background:#0000000f}.nabi-tab-item{color:#6b7280}.nabi-tab-item:hover{color:#4b5563!important;background:#8b69140f}.nabi-tab-item.active{background:linear-gradient(135deg,#d4a843,#b08c30);color:#fff}.nabi-popup-content{background:linear-gradient(160deg,#fff,#f8f6f0);border-color:#8b691433}.nabi-popup-title{color:#ea4824}.nabi-notification-card{background:linear-gradient(135deg,#fff,#f8f6f0);border-color:#8b691433;box-shadow:0 4px 16px #0000001a}.nabi-notification-card.completed{background:linear-gradient(135deg,#f0fff4,#e6faf0);border-color:#3ca05a4d}.nabi-bg-info-card{background:linear-gradient(135deg,#8b69140f,#8b691408);border-color:#8b69141f}.nabi-card{background:#fff;border:1px solid rgba(0,0,0,.1);box-shadow:0 2px 8px #0000000f}.nabi-card:hover{border-color:#8b691440;box-shadow:0 6px 20px #0000001a}.nabi-card--gold{border-left-color:#ea4824}.nabi-card--elevated{background:#fdf9f3;box-shadow:0 4px 16px #00000014}.nabi-btn--secondary{background:#0000000d;color:#374151;border:1px solid rgba(0,0,0,.15)}.nabi-btn--secondary:hover{background:#00000014;border-color:#00000040}.nabi-btn--ghost{background:#8b69140f;color:#ea4824}.nabi-btn--ghost:hover{background:#8b69141f}.nabi-input{background:#fdf9f3;border:1px solid rgba(0,0,0,.14);color:#1e293b}.nabi-input:focus{border-color:var(--ring);background:#fff;box-shadow:var(--focus-ring)}.section-header__icon{background:#8b69141a;color:#ea4824}.section-header__title{color:#ea4824}.profile-section,.result-section{background:#fff!important;border:1px solid rgba(0,0,0,.06)!important}.desktop-sidebar{background:#fff!important;border-right:1px solid rgba(0,0,0,.06)!important}::-webkit-scrollbar-track{background:#faf7f2!important}::-webkit-scrollbar-thumb{background:#d1d5db!important}::-webkit-scrollbar-thumb:hover{background:#9ca3af!important}.nabi-popup-overlay{background:#0006!important}.nabi-popup-content{background:linear-gradient(135deg,#fff,#fdf9f3)!important;border-color:#8b691440!important}.nabi-confidence-card{background:linear-gradient(135deg,#ffffffe6,#f9f7f4f2)!important}.nabi-service-detail{background:linear-gradient(135deg,#fffffff2,#f9f7f4fa)!important}.nabi-service-popup-overlay{background:#0006!important}.nabi-service-popup-content{background:linear-gradient(145deg,#fff,#fdf9f3)!important;border-color:#8b691440!important;box-shadow:0 20px 60px #0000001f!important}.nabi-period-tab:not(.active):hover{background:var(--gold-alpha-8)!important;border-color:var(--gold-alpha-25)!important;color:var(--gold)!important;transform:translateY(-1px)}.nabi-period-tab:not(.active):active{transform:translateY(0);background:var(--gold-subtle)!important}.nabi-period-tab.active{box-shadow:0 2px 8px #00000026,inset 0 1px #ffffff0d}.nabi-period-tab:not(.active):hover{background:#8b69140f!important;border-color:#8b691433!important;color:var(--gold)!important}.nabi-period-tabs{background:linear-gradient(180deg,#fff,#fdf9f3)!important}.nabi-fortune-overview{background:linear-gradient(135deg,#fff,#fdf9f3)!important}.score-detail-overlay{background:#0006!important}.score-detail-content{background:linear-gradient(180deg,#fff,#fdf9f3)!important;border-color:#8b691440!important}.detailed-modal-overlay,.detailed-modal-content{background:#faf7f2!important}.tarot-popup-overlay,.dream-popup-overlay{background:#0006!important}.tarot-popup-content,.dream-popup-content{background:linear-gradient(180deg,#fff,#fdf9f3)!important;border-color:#8b691440!important;box-shadow:0 20px 60px #0000001f,0 0 40px #8b691414!important}.score-detail-content [style*=color],.tarot-popup-content p,.dream-popup-content p{color:#1e293b!important}.nabi-service-item{background:linear-gradient(135deg,#fffc,#f9f7f4e6)!important;border-color:#8b691433!important}.nabi-modal-overlay{background:#0006}.card{background:linear-gradient(135deg,#fff,#f9f7f4f2)}.bottom-nav{background:#fffffff2}.form-group input,.form-group select,.form-group textarea,.radio-btn{background:#0000000a}.tarot-card-overlay{background:linear-gradient(to top,rgba(255,255,255,.95) 0%,rgba(255,255,255,.7) 50%,transparent 100%)}.tarot-fortune-list,.question-input,.dream-input{background:#0000000a}.dream-mode-toggle .mode-btn{background:#0000000f}.dream-mode-toggle .mode-btn:hover:not(.active){background:#00000014}.dream-category-tabs .category-tab{background:#0000000f}@media(prefers-color-scheme:dark){.app-header{forced-color-adjust:none!important}.header-logo-text,.app-header-logo{-webkit-text-fill-color:transparent!important}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}::selection{background:#0302131f;color:var(--foreground, #252525)}[data-theme=light] ::selection{background:#0302131f;color:var(--foreground, #252525)}.card,.btn-gold,.btn-outline,.btn-korean,.sidebar-item,.clickable-card,.nabi-btn,.nabi-card,.nav-btn,.splash-enter-btn,.welcome-btn,.sidebar-recharge-btn,.btn-primary,.btn-secondary,.btn-jade,.gold-btn,.outline-btn,.footer-link-btn,.report-mini-card,.ebook-nav-btn,.ebook-open-btn,.popular-btn,.consent-popup-agree-btn,.nabi-period-tab,.modal-close,.bottom-nav .nav-btn{-webkit-tap-highlight-color:transparent}.card:active,.btn-gold:active,.btn-outline:active,.btn-korean:active,.sidebar-item:active,.clickable-card:active,.nabi-btn:active,.nabi-card:active,.nav-btn:active,.splash-enter-btn:active,.welcome-btn:active,.sidebar-recharge-btn:active,.btn-primary:active,.btn-secondary:active,.btn-jade:active,.gold-btn:active,.outline-btn:active,.footer-link-btn:active,.report-mini-card:active,.ebook-nav-btn:active,.ebook-open-btn:active,.consent-popup-agree-btn:active,.nabi-period-tab:active,.modal-close:active,.bottom-nav .nav-btn:active{transform:scale(.96)!important;transition-duration:.08s!important;filter:brightness(.92)}.popular-btn:active{transform:scale(.95)!important;transition-duration:.08s!important}.report-mini-card{transition:all .2s ease}.report-mini-card:hover{transform:translateY(-2px)}.sidebar-item{transition:all .15s ease}.sidebar-item:hover{transform:translate(3px)}.outline-btn{transition:all .2s ease}.outline-btn:hover{transform:translateY(-1px);box-shadow:0 3px 10px var(--gold-alpha-15)}select.dark-select option{background:#1a1a2e;color:#fff}select.dark-select::-ms-expand{display:none}select.dark-select option{background:#fff;color:#1e293b}.gold-btn{background:linear-gradient(135deg,#ea4824,#a07830)!important;color:#fff!important}.gold-btn:hover{background:linear-gradient(135deg,#ea4824,#a07830)!important}button[style*="background: var(--gold)"]{color:#fff!important}.app-header{background:var(--bg-card)!important;border-bottom:1px solid var(--border-light)!important}.header-logo-text,.app-header-logo{-webkit-text-fill-color:var(--gold)!important;color:var(--gold)!important}.page-content{background:var(--bg-main)!important}.bottom-nav{background:var(--bg-card)!important;border-top:1px solid var(--border-light)!important}.nabi-spinner-circle{stroke:var(--gold)!important}@media(hover:none)and (pointer:coarse){input,select,textarea{font-size:16px!important}}@media(max-width:375px){.page-content{padding:16px 6px}.seal-butterfly,.camera-icon{font-size:48px}.locked-icon{font-size:36px}.compat-number{font-size:42px}.nabi-card{padding:var(--space-lg)}.bottom-nav{padding:8px 4px 14px}.bottom-nav .nav-btn{min-width:44px;padding:6px 6px 4px;font-size:10px}.nav-icon{font-size:19px}}@media(max-width:340px){:root{--text-display: 28px;--text-h1: 22px;--text-h2: 20px;--text-h3: 17px}.page-content{padding:12px 4px}.bottom-nav .nav-btn{min-width:40px;padding:4px 4px 2px;font-size:9px;gap:2px}.nav-icon{font-size:18px}}@media(max-width:480px){.page-content img,.page-content video,.page-content iframe{max-width:100%;height:auto}pre,code{max-width:100%;overflow-x:auto;word-break:break-all}table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}@supports (-webkit-touch-callout: none){body,.app-container{-webkit-overflow-scrolling:touch}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=url],input[type=number],input[type=search],textarea{-webkit-appearance:none;appearance:none;border-radius:8px}a,button,[role=button]{-webkit-tap-highlight-color:var(--gold-alpha-15)}}@media(hover:none)and (pointer:coarse){.popular-btn:hover{transform:none!important;box-shadow:none!important}.bottom-nav .nav-btn:hover:not(.active){background:transparent}button,[role=button],a{-webkit-tap-highlight-color:var(--gold-alpha-15);touch-action:manipulation}.page-content{-webkit-overflow-scrolling:touch;will-change:scroll-position}}@media(max-height:500px)and (orientation:landscape){.bottom-nav{padding:6px 8px 8px}.bottom-nav .nav-btn{min-height:44px;padding:4px 8px 2px}.app-container{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px))}}@media(max-width:480px){.bottom-nav{transition:transform .3s ease}body.keyboard-open .bottom-nav{transform:translateY(100%)!important;transition:transform .2s ease}body.keyboard-open .app-container{padding-bottom:0}}@media(display-mode:standalone){.app-container{padding-top:calc(var(--app-header-height) + var(--space-lg) + env(safe-area-inset-top,0px))}.bottom-nav{padding-bottom:max(16px,env(safe-area-inset-bottom,16px))}}@media(max-width:768px){.bottom-nav,.app-header{will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}@supports (backdrop-filter: blur(10px)){.bottom-nav{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}}}@media(max-width:375px){.analysis-text,.essay-section-body,.fortune-text,.modal-body p,.faq-a-text{line-height:1.7}.page-content *{word-break:keep-all;overflow-wrap:break-word;word-wrap:break-word}}.page-content{animation:pageContentEnter .35s cubic-bezier(.4,0,.2,1) forwards}@keyframes pageContentEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.card:before{border-color:var(--gold-alpha-20);transition:border-color .3s ease}.card:after{border-color:var(--gold-alpha-20);transition:border-color .3s ease}.card:hover:before,.card:hover:after{border-color:var(--gold-glow)}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=tel]:focus,input[type=number]:focus,select:focus,textarea:focus{outline:none;border-color:var(--ring)!important;box-shadow:var(--focus-ring)!important;transition:border-color .2s ease,box-shadow .2s ease}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-loading{background:linear-gradient(90deg,var(--overlay-5) 25%,var(--overlay-10) 50%,var(--overlay-5) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite ease-in-out;border-radius:var(--radius-sm)}.nabi-tab-item.active{position:relative}.nabi-tab-item.active:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:20px;height:2px;background:var(--gold);border-radius:1px;opacity:.8}.modal-overlay,.nabi-modal-overlay,.score-detail-overlay,.detailed-modal-overlay{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@media(hover:none)and (pointer:coarse){.btn-gold:active,.btn-korean:active,.gold-btn:active{transform:scale(.96)!important;transition-duration:.1s!important}.card:active{transform:scale(.98)!important;transition-duration:.1s!important}}.page-content p,.page-content .insight-text,.page-content [style*=line-height]{word-break:keep-all;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.card+.card:before{border-color:var(--gold-alpha-15)}.app-header-logo,.header-logo-text{text-shadow:0 0 20px var(--gold-alpha-20)}.card{background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 1px 4px #0000000f,0 0 0 1px #00000008}.card:hover{box-shadow:0 4px 16px #00000014,0 0 0 1px #0000000a}.card:before,.card:after{border-color:#8b69141f}.card:hover:before,.card:hover:after{border-color:#8b691440}.app-header{background:#fffffff0!important;border-bottom:1px solid rgba(0,0,0,.06)!important;box-shadow:0 1px 4px #0000000a!important}.bottom-nav{background:#fffffff0!important;border-top:1px solid rgba(0,0,0,.06)!important;box-shadow:0 -1px 4px #0000000a!important}.nabi-tab-bar{background:#0000000a}.nabi-tab-item{color:#5b6370!important}.nabi-tab-item.active{background:#fff;color:var(--text-primary)!important;box-shadow:0 1px 3px #00000014}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],select,textarea{background:#fff!important;border-color:#0000001f!important;color:var(--text-primary)!important}input:focus,select:focus,textarea:focus{border-color:var(--ring)!important;box-shadow:var(--focus-ring)!important}::-webkit-scrollbar-thumb{background:#0000001f}::-webkit-scrollbar-thumb:hover{background:#0003}.btn-gold,.btn-gold-sm,button[style*="background: var(--gold)"],button[style*=linear-gradient][style*="var(--gold)"]{color:#fff!important}body{background-color:#faf7f2!important}.app-container{background:#faf7f2!important}.modal-content{background:#fff!important;border:1px solid rgba(0,0,0,.06)!important}.sidebar-overlay.open{background:#0000004d!important}.loading-spinner p{color:var(--text-secondary)!important}@media(hover:none){.card:hover{transform:none;box-shadow:0 2px 12px #00000026}.btn-gold:hover,.btn-korean:hover{transform:none}}@keyframes slideUpSheet{0%{transform:translateY(100%);opacity:.8}to{transform:translateY(0);opacity:1}}.sheet-handle{width:36px;height:4px;background:var(--overlay-20);border-radius:2px;margin:8px auto 4px}@media(max-width:480px){*{-webkit-tap-highlight-color:transparent}body{-webkit-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation}button,a,[role=button],.nav-btn,.nabi-tab-item,.btn-gold,.btn-gold-sm,.btn-korean{min-height:44px;min-width:44px}.card{margin:0 12px 10px;padding:16px;border-radius:14px}.insight-text,.analysis-text,.essay-section-body,.fortune-text{font-size:14.5px;line-height:1.75;letter-spacing:.01em}.app-header{padding:10px 16px!important;padding-top:max(10px,env(safe-area-inset-top,10px))!important}.app-header-logo,.header-logo-text{font-size:18px!important}.bottom-nav{padding:6px 4px 0!important;padding-bottom:max(12px,env(safe-area-inset-bottom,12px))!important}.bottom-nav .nav-btn{padding:6px 6px 4px;font-size:10px;min-width:48px;min-height:52px;gap:3px;border-radius:12px}.nav-icon{font-size:20px}.app-container{padding-bottom:calc(85px + env(safe-area-inset-bottom,0px))!important}.nabi-modal-overlay{padding:0!important;align-items:flex-end!important}.nabi-modal{max-width:100%!important;width:100%!important;max-height:92vh!important;border-radius:20px 20px 0 0!important;margin:0!important}.page-content,.nabi-modal,.sidebar{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.nabi-input,input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],select,textarea{font-size:16px!important;min-height:48px;padding:12px 16px;border-radius:12px}.nabi-tab-bar{gap:2px;padding:3px;border-radius:12px}.nabi-tab-item{padding:8px 12px;font-size:13px;border-radius:10px;min-height:36px}.section-header{margin-bottom:12px}.section-header__icon{width:30px;height:30px}html,body,.app-container,.page-content{max-width:100vw;overflow-x:hidden}img,video,canvas,svg{max-width:100%;height:auto}.divider,hr{margin:12px 0}.scroll-horizontal{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none}.scroll-horizontal::-webkit-scrollbar{display:none}.scroll-horizontal>*{scroll-snap-align:start}}@media(max-width:360px){.card{margin:0 8px 8px;padding:14px}.insight-text,.analysis-text,.essay-section-body,.fortune-text{font-size:13.5px;line-height:1.7}.bottom-nav .nav-btn{min-width:42px;min-height:48px;font-size:9px;padding:5px 4px 3px}.nav-icon{font-size:18px}.nabi-tab-item{padding:6px 8px;font-size:12px}.app-header-logo,.header-logo-text{font-size:16px!important}}@media(max-height:500px)and (orientation:landscape){.app-header{padding:6px 16px!important;padding-top:max(6px,env(safe-area-inset-top,6px))!important}.bottom-nav{padding:4px 4px 0!important;padding-bottom:max(8px,env(safe-area-inset-bottom,8px))!important}.bottom-nav .nav-btn{min-height:44px;gap:2px;font-size:9px}.nav-icon{font-size:18px}.app-container{padding-bottom:calc(65px + env(safe-area-inset-bottom,0px))!important}.nabi-modal{max-height:95vh!important}.sidebar{width:300px;max-width:50vw}.sidebar-header{padding:8px 16px!important;padding-top:max(8px,env(safe-area-inset-top,8px))!important}.sidebar-user-section{padding:8px 16px!important}.sidebar-user-profile{margin-bottom:6px}.sidebar-user-avatar{width:32px!important;height:32px!important}.sidebar-user-name{font-size:13px!important}.sidebar-user-status{font-size:11px!important}.sidebar-credit-bar{padding:6px 10px!important}.sidebar-item{padding:8px 20px!important;min-height:36px!important}.sidebar-item-icon{width:28px!important;height:28px!important;font-size:14px!important}.sidebar-item-label{font-size:13px!important}.sidebar-category-title{font-size:10px!important;padding:6px 20px 4px!important}.sidebar-scrollable{max-height:calc(100dvh - 50px)}}@supports (padding-top: env(safe-area-inset-top)){@media(max-width:480px){.app-header{padding-top:calc(env(safe-area-inset-top,0px) + 8px)!important}.bottom-nav{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 8px)!important}}}@media(max-width:480px){[style*="overflow-y: auto"],[style*="overflow-y: scroll"],[style*="overflowY: auto"],[style*="overflowY: scroll"]{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}}@media(max-width:480px){.bottom-nav,.app-header{background:#fffffff5!important}.bottom-nav .nav-btn.active{background:#8b691414}}@media(max-width:480px){.app-container{overscroll-behavior-y:none}.page-content{overscroll-behavior-y:contain}}.ds-glass-card{background:var(--ds-glass-bg);border:1.5px solid var(--ds-glass-border);border-radius:var(--ds-glass-radius);backdrop-filter:var(--ds-glass-blur);-webkit-backdrop-filter:var(--ds-glass-blur);box-shadow:var(--ds-shadow)}[data-theme=light]{color-scheme:light;--bg-main: var(--background);--bg-dark: var(--muted);--bg-card: var(--card);--bg-surface: var(--card);--bg-elevated: var(--card);--bg-overlay: var(--accent);--bg-input: var(--input-background);--midnight: var(--background);--bg-black: #1a1a1a;--bg-ink: #1a1a1a;--overlay-2: rgba(0, 0, 0, .02);--overlay-3: rgba(0, 0, 0, .03);--overlay-5: rgba(0, 0, 0, .04);--overlay-6: rgba(0, 0, 0, .05);--overlay-8: rgba(0, 0, 0, .06);--overlay-10: rgba(0, 0, 0, .08);--overlay-12: rgba(0, 0, 0, .1);--overlay-15: rgba(0, 0, 0, .12);--overlay-20: rgba(0, 0, 0, .14);--overlay-25: rgba(0, 0, 0, .18);--overlay-30: rgba(0, 0, 0, .22);--overlay-40: rgba(0, 0, 0, .32);--border-subtle: rgba(0, 0, 0, .05);--border-light: var(--border);--border-medium: rgba(0, 0, 0, .18);--border-strong: rgba(0, 0, 0, .28);--gold: var(--primary);--gold-light: #ffeadf;--gold-dark: #ff9080;--gold-glow: rgba(255, 170, 153, .25);--gold-subtle: rgba(255, 170, 153, .08);--gold-alpha-5: rgba(255, 170, 153, .05);--gold-alpha-8: rgba(255, 170, 153, .08);--gold-alpha-10: rgba(255, 170, 153, .1);--gold-alpha-15: rgba(255, 170, 153, .15);--gold-alpha-20: rgba(255, 170, 153, .2);--gold-alpha-25: rgba(255, 170, 153, .25);--gold-alpha-30: rgba(255, 170, 153, .3);--gold-alpha-40: rgba(255, 170, 153, .4);--gold-alpha-50: rgba(255, 170, 153, .5);--gold-alpha-60: rgba(255, 170, 153, .6);--white: var(--foreground);--text-primary: var(--foreground);--text-secondary: #8a7b79;--text-muted: var(--muted-foreground);--text-disabled: #c4b5b3;--text-light: #8a7b79;--text-dim: var(--muted-foreground);--text-dark: var(--foreground);--text-white: #ffffff;--gray: #8a7b79;--gray-dim: var(--muted-foreground);--jade: var(--chart-1);--jade-dark: #4f7351;--jade-light: #8aaa8c;--jade-glow: rgba(111, 145, 112, .2);--shadow-soft: 0 4px 16px rgba(0, 0, 0, .06), 0 1px 3px rgba(0, 0, 0, .04);--shadow-elevated: 0 16px 40px rgba(0, 0, 0, .1), 0 4px 12px rgba(0, 0, 0, .06);--shadow-primary-soft: 0 8px 24px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .06);--ds-shadow-soft: var(--shadow-soft);--ds-shadow-elevated: var(--shadow-elevated);--ds-shadow-primary-soft: var(--shadow-primary-soft);--element-wood: var(--chart-1);--element-fire: var(--chart-2);--element-earth: var(--chart-3);--element-metal: var(--chart-4);--element-water: var(--chart-5);--element-wood-bright: var(--chart-1);--element-fire-bright: var(--chart-2);--element-earth-bright: var(--chart-3);--element-water-bright: var(--chart-5);--element-gold: var(--chart-3);--element-gold-warm: var(--chart-3);--element-gold-antique: var(--chart-3);--element-gold-deep: #a08654;--element-brown: #6b5a4a;--element-navy: #3a4a66;--element-forest: #4f7351;--element-crimson: var(--destructive);--element-silver: var(--chart-4);--success: var(--chart-1);--success-light: var(--chart-1);--success-bright: #82a487;--success-vivid: #4f7351;--warning: var(--chart-3);--warning-light: var(--chart-3);--warning-amber: #a08654;--error: var(--destructive);--error-light: var(--destructive);--error-bright: #e35370;--error-dark: #a01030;--info: var(--chart-5);--info-bg: rgba(30, 64, 175, .1);--info-border: rgba(30, 64, 175, .3);--info-text: #1e3a8a;--warning-bg: rgba(146, 64, 14, .1);--warning-border: rgba(146, 64, 14, .3);--warning-text: #92400e;--success-bg: rgba(22, 101, 52, .1);--success-border: rgba(22, 101, 52, .3);--success-text: #166534;--destructive-bg: rgba(159, 18, 57, .1);--destructive-border: rgba(159, 18, 57, .3);--destructive-text: #9f1239;--accent-purple: var(--primary);--accent-purple-light: var(--muted-foreground);--accent-purple-soft: var(--muted);--accent-violet: var(--primary);--accent-pink: var(--destructive);--accent-pink-light: #e35370;--accent-pink-soft: var(--accent);--accent-rose: var(--destructive);--accent-cyan: var(--chart-5);--accent-cyan-light: #7795bb;--accent-teal: var(--chart-5);--accent-sky: var(--chart-5);--accent-indigo: var(--chart-5);--accent-blue-bright: var(--chart-5);--accent-royal: var(--chart-5);--ui-orange: var(--chart-2);--ui-gold-warm: var(--chart-3);--ui-gold-bright: var(--chart-3);--ui-blue-soft: #7795bb;--ui-purple-soft: var(--muted-foreground);--ui-gray: var(--muted-foreground);--ui-gray-light: #c2c4ca;--ui-gray-border: var(--border);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04), 0 2px 6px rgba(0, 0, 0, .04);--shadow: 0 4px 14px rgba(0, 0, 0, .06), 0 2px 4px rgba(0, 0, 0, .04);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .1), 0 4px 12px rgba(0, 0, 0, .06);--shadow-gold: 0 6px 20px rgba(255, 170, 153, .22);--shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .06);--focus-ring: 0 0 0 3px rgba(196, 97, 79, .9);--focus-ring-offset: 0 0 0 2px var(--background);--btn-text-on-color: var(--primary-foreground);--font-serif: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--surface-dark-base: rgba(255, 243, 239, .97);--surface-dark-floor: rgba(255, 237, 228, .99);--surface-card-dark: rgba(255, 248, 245, .95);--surface-card-darker: rgba(252, 238, 232, .98);--surface-panel-dark: rgba(249, 232, 225, .95);--surface-panel-floor: rgba(246, 225, 217, .98);--surface-moon-area: rgba(255, 195, 175, .45);--surface-dark: #fff0eb;--surface-dark-mid: #fde8df;--surface-dark-deep: #f9cfc1;--text-on-dark: #4a3b39;--text-on-dark-sub: #6b5754;--text-on-dark-muted: #7c6a67;--w-overlay-3: rgba(255, 170, 153, .05);--w-overlay-4: rgba(255, 170, 153, .07);--w-overlay-5: rgba(255, 170, 153, .09);--w-overlay-6: rgba(255, 170, 153, .11);--w-overlay-7: rgba(255, 170, 153, .13);--w-overlay-8: rgba(255, 170, 153, .15);--w-overlay-10: rgba(255, 170, 153, .2);--w-overlay-12: rgba(255, 170, 153, .24);--w-overlay-15: rgba(196, 97, 79, .18);--w-overlay-20: rgba(196, 97, 79, .25);--w-overlay-30: rgba(196, 97, 79, .35);--w-overlay-45: rgba(196, 97, 79, .55);--w-overlay-50: rgba(196, 97, 79, .62);--w-overlay-55: rgba(196, 97, 79, .68);--w-overlay-65: rgba(106, 63, 57, .75);--w-overlay-70: rgba(106, 63, 57, .8);--w-overlay-75: rgba( 74, 59, 57, .82);--w-overlay-85: rgba( 74, 59, 57, .87);--w-overlay-90: rgba( 74, 59, 57, .91);--w-overlay-95: rgba( 74, 59, 57, .95)}@media(min-width:1024px){.banner-content{background:#fff3efe0!important;border-color:var(--border)!important}.desktop-banner.has-custom-bg .banner-content{background-color:#fff3ef8c!important}.banner-footer,.footer-text{color:var(--foreground)!important}.footer-services{color:var(--muted-foreground)!important}}.qr-section{background:transparent!important;border:0!important}html{font-size:var(--font-size, 16px)}body,.app-container{background-color:var(--background)!important;background-image:none!important;color:var(--foreground);font-family:var(--font-sans);font-size:var(--font-size, 16px)}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--foreground)}.ds-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--ds-font-body);font-weight:600;border-radius:var(--ds-radius-pill);border:1px solid transparent;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background .2s ease,color .2s ease,border-color .2s ease;white-space:nowrap;line-height:1;user-select:none}.ds-button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ds-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.ds-button--sm{padding:8px 14px;font-size:13px;min-height:36px}.ds-button--md{padding:11px 20px;font-size:14px;min-height:44px}.ds-button--lg{padding:14px 26px;font-size:16px;min-height:52px}.ds-button--primary{background:var(--primary);color:var(--primary-foreground);box-shadow:var(--ds-shadow-sm)}.ds-button--primary:hover:not(:disabled){background:var(--primary-hover, var(--ds-coral-signature-deep));transform:translateY(-1px);box-shadow:var(--ds-shadow)}.ds-button--secondary{background:var(--muted);color:var(--foreground);border-color:transparent}.ds-button--secondary:hover:not(:disabled){background:var(--accent);transform:translateY(-1px)}.ds-button--outline{background:transparent;color:var(--foreground);border-color:var(--border)}.ds-button--outline:hover:not(:disabled){background:var(--muted);border-color:var(--border)}.ds-button--destructive{background:var(--destructive);color:var(--destructive-foreground);border-color:transparent}.ds-button--destructive:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px);box-shadow:var(--ds-shadow)}.ds-button--ghost{background:transparent;color:var(--ds-text-strong);border-color:transparent}.ds-button--ghost:hover:not(:disabled){background:var(--accent);color:var(--accent-foreground)}.ds-button--quiet{background:transparent;color:var(--ds-text-body);border-color:transparent;border-radius:var(--ds-radius-md)}.ds-button--quiet:hover:not(:disabled){color:var(--foreground);background:var(--muted)}.ds-card{background:var(--ds-bg-card);border-radius:var(--ds-radius-lg);padding:20px;box-shadow:var(--ds-shadow-sm);border:1px solid var(--ds-border-soft);transition:box-shadow .22s ease,transform .22s ease}.ds-card--flat{box-shadow:none;background:var(--ds-bg-muted)}.ds-card--raised{box-shadow:var(--ds-shadow)}.ds-card--floating{box-shadow:var(--ds-shadow-lg)}.ds-card--tinted{background:var(--ds-bg-tinted);border-color:transparent}.ds-card--cream{background:var(--ds-bg-cream);border-color:transparent}.ds-card--glass{background:var(--ds-glass-bg);border:1.5px solid var(--ds-glass-border);border-radius:var(--ds-glass-radius);backdrop-filter:var(--ds-glass-blur);-webkit-backdrop-filter:var(--ds-glass-blur);box-shadow:var(--ds-shadow)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.ds-card--glass{background:var(--ds-bg-card);border-color:var(--ds-border-soft)}}.ds-card--premium{background:var(--card);border:1px solid var(--border);box-shadow:var(--ds-shadow-lg);position:relative;overflow:hidden}.ds-card--premium:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--primary)}.ds-card--elevated{background:var(--ds-bg-card);border:1px solid var(--border);box-shadow:var(--ds-shadow-lg)}.ds-card--interactive{cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.ds-card--interactive:hover{background:var(--ds-popup-cream, var(--ds-bg-cream));border-color:var(--ds-coral-deep)}.ds-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-family:var(--ds-font-body);font-size:12px;font-weight:600;border-radius:var(--ds-radius-pill);line-height:1.4;letter-spacing:.01em}.ds-badge--apricot,.ds-badge--coral{background:var(--muted);color:var(--foreground)}.ds-badge--neutral{background:var(--ds-bg-muted);color:var(--ds-text-body)}.ds-badge--solid{background:var(--primary);color:var(--primary-foreground)}.ds-badge--outline{background:transparent;color:var(--foreground);border:1px solid var(--border)}.ds-input,.ds-select{display:block;width:100%;padding:12px 14px;font-family:var(--ds-font-body);font-size:14px;color:var(--ds-text-strong);background:var(--ds-bg-card);border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;box-sizing:border-box;appearance:none;-webkit-appearance:none}.ds-input::placeholder{color:var(--ds-text-subtle)}.ds-input:hover,.ds-select:hover{border-color:var(--ds-border-strong)}.ds-input:focus,.ds-select:focus{outline:none;border-color:var(--ring);box-shadow:var(--focus-ring)}.ds-input:disabled,.ds-select:disabled{background:var(--ds-bg-muted);color:var(--ds-text-subtle);cursor:not-allowed}.ds-select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1l5 5 5-5' stroke='%23717182' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}.ds-field{display:flex;flex-direction:column;gap:6px}.ds-field-label{font-size:13px;font-weight:600;color:var(--ds-text-strong);font-family:var(--ds-font-body)}.ds-field-help{font-size:12px;color:var(--ds-text-muted)}.ds-banner{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--ds-radius-md);font-family:var(--ds-font-body);font-size:14px;line-height:1.5;border:1px solid transparent}.ds-banner__icon{flex-shrink:0;margin-top:2px;display:inline-flex}.ds-banner__body{flex:1;min-width:0;color:inherit}.ds-banner__title{font-weight:700;margin-bottom:2px}.ds-banner--info{background:var(--info-bg);color:var(--info-text);border-color:var(--info-border)}.ds-banner--success{background:var(--success-bg);color:var(--success-text);border-color:var(--success-border)}.ds-banner--warning{background:var(--warning-bg);color:var(--warning-text);border-color:var(--warning-border)}.ds-banner--error{background:var(--destructive-bg);color:var(--destructive-text);border-color:var(--destructive-border)}.ds-banner--apricot{background:var(--ds-bg-muted);color:var(--ds-text-strong);border-color:var(--ds-border)}.ds-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.ds-section-title__main{display:flex;flex-direction:column;gap:4px;min-width:0}.ds-section-title__eyebrow{font-family:var(--ds-font-body);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground)}.ds-section-title__title{font-family:var(--ds-font-display);font-weight:600;font-size:var(--ds-text-h1);color:var(--ds-text-strong);line-height:1.25;margin:0}.ds-section-title__desc{font-family:var(--ds-font-body);font-size:14px;color:var(--ds-text-muted);line-height:1.55;margin:0}.ds-section-title__action{flex-shrink:0}.ds-design-preview{font-family:var(--ds-font-body);color:var(--ds-text-body);background:var(--ds-bg-page);min-height:100%;padding:28px 20px 80px}.ds-design-preview h1{font-family:var(--ds-font-display);color:var(--ds-text-strong);font-size:var(--ds-text-display);margin:0 0 6px;font-weight:600;letter-spacing:-.01em}.ds-design-preview>p.lead{color:var(--ds-text-muted);margin:0 0 32px;font-size:15px}.ds-design-preview .ds-block{margin-bottom:36px}.ds-design-preview .ds-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.ds-design-preview .ds-stack{display:flex;flex-direction:column;gap:12px}.ds-design-preview .ds-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.ds-swatch{border-radius:var(--ds-radius-md);padding:14px;display:flex;flex-direction:column;gap:4px;min-height:96px;border:1px solid var(--ds-border-soft);font-size:12px;color:var(--ds-text-body)}.ds-swatch__chip{width:100%;height:44px;border-radius:var(--ds-radius-sm);margin-bottom:6px;box-shadow:inset 0 0 0 1px #2d31420f}.ds-swatch__name{font-weight:700;color:var(--ds-text-strong)}.ds-swatch__value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--ds-text-muted)}.ds-type-sample{font-family:var(--ds-font-display);color:var(--ds-text-strong);margin:0}.ds-dialog__overlay{position:fixed;inset:0;background:#4a3b3952;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000;animation:ds-dialog-fade .18s ease-out}.ds-dialog{background:var(--ds-bg-card);border-radius:20px;border:1px solid var(--ds-border-soft);box-shadow:var(--ds-shadow-lg);width:100%;max-width:420px;padding:24px 24px 20px;position:relative;animation:ds-dialog-pop .22s cubic-bezier(.2,.9,.3,1.2)}.ds-dialog--sm{max-width:360px}.ds-dialog--lg{max-width:560px}.ds-dialog__header{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.ds-dialog__title{font-family:var(--ds-font-display);font-size:20px;font-weight:700;color:var(--ds-text-strong);margin:0}.ds-dialog__desc{font-size:14px;color:var(--ds-text-muted);margin:0;line-height:1.55}.ds-dialog__footer{display:flex;gap:10px;margin-top:20px}.ds-dialog__footer .ds-button{flex:1}.ds-dialog__close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;background:transparent;border:none;cursor:pointer;color:var(--ds-text-muted);display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.ds-dialog__close:hover{background:var(--ds-bg-muted);color:var(--ds-text-strong)}@keyframes ds-dialog-fade{0%{opacity:0}to{opacity:1}}@keyframes ds-dialog-pop{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ds-toast{display:inline-flex;align-items:flex-start;gap:10px;padding:12px 16px;background:var(--ds-bg-card);color:var(--ds-text-strong);border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-soft);box-shadow:var(--ds-shadow-lg);font-size:14px;line-height:1.5;max-width:380px;animation:ds-dialog-pop .22s cubic-bezier(.2,.9,.3,1.2)}.ds-toast--success{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.ds-toast--error{border-color:var(--destructive-border);background:var(--destructive-bg);color:var(--destructive-text)}.ds-toast--warning{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-text)}.ds-toast--info{border-color:var(--info-border);background:var(--info-bg);color:var(--info-text)}.ds-toast--apricot{border-color:var(--ds-border);background:var(--ds-bg-muted);color:var(--ds-text-strong)}.ds-toast__icon{flex-shrink:0;line-height:0;margin-top:2px}.ds-tabs{display:flex;gap:6px;padding:4px;background:var(--ds-bg-muted);border-radius:var(--ds-radius-pill)}.ds-tabs--block{background:transparent;padding:0;gap:8px}.ds-tab{flex:1;padding:10px 16px;border:none;background:transparent;border-radius:var(--ds-radius-pill);font-family:var(--ds-font-body);font-size:14px;font-weight:600;color:var(--ds-text-muted);cursor:pointer;transition:background .18s ease,color .18s ease,box-shadow .18s ease}.ds-tab:hover:not([aria-selected=true]){color:var(--ds-text-body)}.ds-tab[aria-selected=true]{background:var(--ds-bg-card);color:var(--foreground);box-shadow:var(--ds-shadow-sm)}.ds-tabs--block .ds-tab{background:var(--ds-bg-card);border:1px solid var(--ds-border);color:var(--ds-text-body)}.ds-tabs--block .ds-tab[aria-selected=true]{background:var(--primary);border-color:transparent;color:var(--primary-foreground);box-shadow:var(--ds-shadow-sm)}.admin-warnings-banner,.ds-admin-warnings{border-radius:var(--ds-radius-md)!important;border:1px solid #F5D89A!important;background:#fff8e6!important;color:#8c5a00!important}.admin-warnings-banner button,.ds-admin-warnings button{color:#8c5a00!important}.admin-warnings-banner ul li,.ds-admin-warnings ul li{background:#f5d99a40!important;color:var(--ds-text-body)!important}.admin-warnings-banner ul li>span:first-child,.ds-admin-warnings ul li>span:first-child{color:#8c5a00!important}.ds-admin-stat{background:var(--ds-bg-card);border:1px solid var(--ds-border-soft);border-radius:var(--ds-radius-lg);padding:16px 18px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--ds-shadow-sm)}.ds-admin-stat--emphasis{background:var(--primary);color:var(--primary-foreground);border-color:transparent;box-shadow:var(--ds-shadow)}.ds-admin-stat__label{font-size:12px;color:var(--ds-text-muted);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.ds-admin-stat__value{font-size:28px;font-weight:700;color:var(--ds-text-strong);font-family:var(--ds-font-display)}.ds-admin-stat--emphasis .ds-admin-stat__value{color:var(--primary-foreground)}.ds-admin-stat__hint{font-size:12px;color:var(--ds-text-muted)}.modal-overlay{background:#4a3b3952!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.modal-content{background:var(--ds-bg-card)!important;border-radius:20px!important;border:1px solid var(--ds-border-soft)!important;box-shadow:var(--ds-shadow-lg)!important;color:var(--ds-text-strong)!important;background-image:none!important}.modal-close{background:transparent!important;color:var(--ds-text-muted)!important;border:none!important;border-radius:50%!important;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.modal-close:hover{background:var(--ds-bg-muted)!important;color:var(--ds-text-strong)!important}.gold-btn,.nabi-btn--primary{background:var(--ds-apricot-deep)!important;background-image:none!important;color:var(--primary-foreground, #4a3b39)!important;border:none!important;border-radius:var(--ds-radius-pill)!important;font-weight:700!important;box-shadow:var(--ds-shadow-sm)!important;transition:filter .16s ease,box-shadow .16s ease,transform .16s ease}.gold-btn:hover,.nabi-btn--primary:hover{background:var(--primary-hover, #ff9080)!important;color:var(--primary-foreground, #4a3b39)!important;box-shadow:0 6px 18px #4a3b3947,inset 0 0 0 1px #4a3b392e!important;transform:translateY(-1px);filter:saturate(1.05)}.gold-btn:active,.nabi-btn--primary:active{transform:translateY(1px)}.ds-btn--paid,.gold-btn.ds-btn--paid,.nabi-btn--primary.ds-btn--paid,.ds-button--primary.ds-btn--paid{background:var(--ds-gold-muted)!important;background-image:none!important;color:#fff!important;border-color:var(--ds-gold-muted)!important}.ds-btn--paid:hover:not(:disabled),.gold-btn.ds-btn--paid:hover:not(:disabled),.nabi-btn--primary.ds-btn--paid:hover:not(:disabled),.ds-button--primary.ds-btn--paid:hover:not(:disabled){background:var(--ds-gold-muted)!important;color:#fff!important;filter:brightness(.94)}.outline-btn,.nabi-btn--secondary{background:var(--ds-bg-card)!important;background-image:none!important;color:var(--ds-text-body)!important;border:1px solid var(--ds-border)!important;border-radius:var(--ds-radius-pill)!important;font-weight:600!important}.outline-btn:hover,.nabi-btn--secondary:hover{background:var(--ds-bg-muted)!important;border-color:var(--ds-border-strong)!important}.modal-content [style*="rgba(0,0,0,0.2)"],.modal-content [style*="rgba(0, 0, 0, 0.2)"]{background:var(--ds-bg-cream)!important;border-radius:var(--ds-radius-md)!important}[data-admin-panel],.admin-panel,.admin-card{background:var(--ds-bg-card)!important;border:1px solid var(--ds-border-soft)!important;border-radius:var(--ds-radius-lg)!important;box-shadow:var(--ds-shadow-sm)!important;color:var(--ds-text-body)}.admin-card--emphasis,[data-admin-panel=emphasis]{background:var(--primary)!important;color:var(--primary-foreground)!important;border-color:transparent!important;box-shadow:var(--ds-shadow-lg)!important}.admin-panel{display:flex;flex-direction:column;gap:16px;padding:16px!important}.admin-panel__title{margin:0;font-family:var(--ds-font-display, inherit);font-size:18px;font-weight:700;color:var(--primary);letter-spacing:-.005em}.admin-panel__subtitle{font-size:12px;color:var(--muted-foreground);line-height:1.5}.admin-tile{background:var(--ds-bg-card);border:1px solid var(--ds-border-soft);border-radius:var(--ds-radius-md);padding:10px 12px;font-size:12px;color:var(--ds-text-body);display:flex;flex-direction:column;gap:4px;min-width:120px}.admin-tile__label{font-size:11px;font-weight:600;color:var(--muted-foreground)}.admin-tile__value{font-size:16px;font-weight:700;color:var(--ds-text-strong);line-height:1.25}.admin-tile__note{font-size:10px;color:var(--muted-foreground);margin-top:2px}.admin-tile--good{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.admin-tile--good .admin-tile__label,.admin-tile--good .admin-tile__value{color:var(--success-text)}.admin-tile--warn{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}.admin-tile--warn .admin-tile__label,.admin-tile--warn .admin-tile__value{color:var(--warning-text)}.admin-tile--bad{background:var(--destructive-bg);border-color:var(--destructive-border);color:var(--destructive-text)}.admin-tile--bad .admin-tile__label,.admin-tile--bad .admin-tile__value{color:var(--destructive-text)}.admin-tile--info{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}.admin-tile--info .admin-tile__label,.admin-tile--info .admin-tile__value{color:var(--info-text)}.admin-input,.admin-card .admin-input,.admin-panel .admin-input,[data-admin-panel] .admin-input{display:inline-flex;align-items:center;width:100%;min-height:36px;padding:8px 12px;font-family:var(--ds-font-body, inherit);font-size:13px;color:var(--ds-text-strong);background:var(--ds-bg-card);border:1px solid var(--ds-border);border-radius:var(--ds-radius-md);box-sizing:border-box;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;appearance:none;-webkit-appearance:none}.admin-input::placeholder{color:var(--ds-text-subtle)}.admin-input:hover{border-color:var(--ds-border-strong)}.admin-input:focus,.admin-input:focus-visible{outline:none;border-color:var(--ring);box-shadow:var(--focus-ring)}.admin-input:disabled{background:var(--ds-bg-muted);color:var(--ds-text-subtle);cursor:not-allowed}textarea.admin-input{min-height:72px}select.admin-input{padding-right:32px}.admin-mono-block{background:var(--ds-bg-muted);border:1px solid var(--ds-border-soft);border-radius:var(--ds-radius-md);padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--ds-text-body);white-space:pre-wrap;word-break:break-word;max-height:360px;overflow:auto}[data-theme=light] [style*="background: #0a0a0a"],[data-theme=light] [style*="background:#0a0a0a"],[data-theme=light] [style*="background: #0f0f0f"],[data-theme=light] [style*="background:#0f0f0f"],[data-theme=light] [style*="background: #1a1a1f"],[data-theme=light] [style*="background:#1a1a1f"]{background:var(--ds-bg-cream)!important;border-color:var(--ds-border)!important}[data-theme=light] [style*="background: #222"],[data-theme=light] [style*="background:#222"]{background:var(--ds-bg-muted)!important}[data-theme=light] [style*="border: 1px solid #2a2a2a"],[data-theme=light] [style*="border:1px solid #2a2a2a"],[data-theme=light] [style*="border: 1px solid #222"],[data-theme=light] [style*="border:1px solid #222"],[data-theme=light] [style*="border: 1px solid #444"],[data-theme=light] [style*="border:1px solid #444"],[data-theme=light] [style*="border: 1px solid #666"],[data-theme=light] [style*="border:1px solid #666"]{border-color:var(--ds-border)!important}[data-theme=light] [style*="color: #fff"][style*="background: #0f0f0f"],[data-theme=light] [style*="color:#fff"][style*="background:#0f0f0f"],[data-theme=light] [style*="color: #fff"][style*="background: #0a0a0a"],[data-theme=light] [style*="color:#fff"][style*="background:#0a0a0a"],[data-theme=light] [style*="color: #fff"][style*="background: #444"],[data-theme=light] [style*="color:#fff"][style*="background:#444"]{color:var(--ds-text-strong)!important}[data-theme=light] [style*="color: #ddd"],[data-theme=light] [style*="color:#ddd"],[data-theme=light] [style*="color: #ccc"],[data-theme=light] [style*="color:#ccc"],[data-theme=light] [style*="color: #bbb"],[data-theme=light] [style*="color:#bbb"],[data-theme=light] [style*="color: #aaa"],[data-theme=light] [style*="color:#aaa"]{color:var(--ds-text-body)!important}[data-theme=light] [style*="color: #888"],[data-theme=light] [style*="color:#888"],[data-theme=light] [style*="color: #666"],[data-theme=light] [style*="color:#666"]{color:var(--ds-text-muted)!important}[data-theme=light] [style*="color: #fecaca"],[data-theme=light] [style*="color:#fecaca"],[data-theme=light] [style*="color: #f88"],[data-theme=light] [style*="color:#f88"]{color:var(--ds-coral-deep, #b53b35)!important}[data-theme=light] [style*="color: #bbf7d0"],[data-theme=light] [style*="color:#bbf7d0"]{color:#1f6b45!important}.ds-card{box-shadow:var(--ds-shadow-soft);border-radius:var(--ds-radius-lg)}.ds-card--gradient{background:var(--ds-bg-muted);border-color:var(--ds-border-soft);color:var(--ds-text-strong);box-shadow:var(--ds-shadow)}.ds-card--gradient .ds-section-title__title,.ds-card--gradient strong{color:var(--ds-text-strong)}.ds-card--premium{background:var(--ds-bg-card);border:1px solid var(--border);box-shadow:var(--ds-shadow-lg);position:relative;overflow:hidden}.ds-card--premium:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--primary);pointer-events:none}.ds-dialog__overlay{position:fixed;inset:0;background:#4a3b3952;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.ds-dialog__overlay--sheet{align-items:flex-end;padding:0}.ds-dialog__overlay--fullscreen{padding:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.ds-dialog{position:relative;background:var(--ds-bg-card);border-radius:24px;box-shadow:0 30px 60px -28px #4a3b3973,0 0 0 1px var(--ds-popup-cream-border, var(--ds-border-soft));width:100%;max-width:480px;max-height:92vh;overflow-y:auto;border:1px solid transparent;padding:24px;box-sizing:border-box;outline:none}.ds-dialog--sheet{max-width:480px;border-radius:28px 28px 0 0;padding:28px 20px max(20px,env(safe-area-inset-bottom,20px));box-shadow:0 -20px 50px -16px #4a3b3952;max-height:92vh}.ds-dialog--sheet:before{content:"";position:absolute;top:10px;left:50%;transform:translate(-50%);width:40px;height:4px;border-radius:999px;background:var(--ds-text-subtle, #c4b5b3);opacity:.55}.ds-dialog--fullscreen{max-width:none;width:100%;height:100vh;height:100dvh;max-height:none;border-radius:0;border:none;box-shadow:none;background:linear-gradient(180deg,var(--ds-bg-card) 0%,var(--ds-popup-cream, var(--ds-bg-cream)) 100%);padding:28px 24px}.ds-dialog__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.ds-dialog__title{margin:0;font-family:var(--ds-font-display);font-size:var(--ds-text-h2);color:var(--ds-text-strong);font-weight:600}.ds-dialog__close{background:var(--ds-bg-muted);border:none;width:32px;height:32px;border-radius:var(--ds-radius-pill);cursor:pointer;color:var(--ds-text-body);font-size:18px;display:inline-flex;align-items:center;justify-content:center}.ds-dialog__close:hover{background:var(--ds-bg-tinted);color:var(--ds-text-strong)}.ds-dialog__body{color:var(--ds-text-body);font-size:14px;line-height:1.6}.ds-dialog__footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.ds-alert{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:var(--ds-radius-md);font-size:14px;line-height:1.5;background:var(--ds-bg-tinted);color:var(--ds-text-strong);border:1px solid transparent}.ds-alert--secondary{background:var(--ds-apricot-soft);color:var(--ds-apricot-deep)}.ds-alert--accent{background:var(--ds-coral-soft);color:var(--ds-coral-deep)}.ds-alert--neutral{background:var(--ds-bg-muted);color:var(--ds-text-body)}.ds-alert__icon{flex-shrink:0;margin-top:1px;display:inline-flex}.ds-alert__body{flex:1;min-width:0}.ds-alert__title{font-weight:700;margin-bottom:2px}.ds-toast-container{position:fixed;top:16px;right:16px;display:flex;flex-direction:column;gap:10px;z-index:1100;pointer-events:none;max-width:360px}.ds-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--ds-bg-card);border:1px solid var(--ds-popup-cream-border, var(--ds-border-soft));border-left:3px solid var(--ds-apricot);border-radius:var(--ds-radius-md);box-shadow:0 8px 20px -10px #4a3b3938;font-size:13px;line-height:1.45;color:var(--ds-text-strong);min-width:252px;animation:ds-toast-in .25s cubic-bezier(.16,1,.3,1)}.ds-toast--success{border-left-color:var(--success)}.ds-toast--error{border-left-color:var(--destructive)}.ds-toast--info{border-left-color:var(--info)}.ds-toast--warning{border-left-color:var(--warning)}.ds-toast__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;border-radius:8px;background:var(--ds-popup-cream, var(--ds-bg-muted));border:1px solid var(--ds-popup-cream-border, var(--ds-border-soft));color:var(--ds-text-muted)}.ds-toast__icon>svg{width:14px;height:14px}.ds-toast--success .ds-toast__icon{color:var(--success)}.ds-toast--error .ds-toast__icon{color:var(--destructive)}.ds-toast--info .ds-toast__icon{color:var(--info)}.ds-toast--warning .ds-toast__icon{color:var(--warning)}.ds-toast__msg{flex:1;min-width:0;padding-top:2px}.ds-toast__close{background:none;border:none;cursor:pointer;font-size:16px;color:var(--ds-text-muted);padding:4px}@keyframes ds-toast-in{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}.ds-popover{position:relative;display:block;background:var(--ds-bg-card);border:1px solid var(--ds-popup-cream-border);border-radius:14px;padding:12px 13px;box-shadow:0 14px 30px -14px #4a3b3947;color:var(--ds-text-body);font-size:12px;line-height:1.55;max-width:280px;animation:ds-popover-in .18s cubic-bezier(.16,1,.3,1)}.ds-popover__arrow{position:absolute;width:12px;height:12px;background:var(--ds-bg-card);border-top:1px solid var(--ds-popup-cream-border);border-left:1px solid var(--ds-popup-cream-border);transform:rotate(45deg);pointer-events:none}.ds-popover__arrow--top-right{top:-6px;right:14px}.ds-popover__arrow--top-left{top:-6px;left:14px}.ds-popover__arrow--top-center{top:-6px;left:50%;margin-left:-6px}.ds-popover__title{font-size:11px;font-weight:600;margin:0 0 6px;color:var(--ds-coral-deep);text-transform:uppercase;letter-spacing:.04em}.ds-popover__body{color:var(--ds-text-body)}.ds-popover__body>p{margin:0}@keyframes ds-popover-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ds-tabs{display:inline-flex;gap:4px;padding:4px;background:var(--ds-bg-muted);border-radius:var(--ds-radius-pill)}.ds-tab{padding:8px 16px;border:none;background:transparent;color:var(--ds-text-body);font-size:14px;font-weight:600;border-radius:var(--ds-radius-pill);cursor:pointer;transition:background .18s ease,color .18s ease,box-shadow .18s ease;font-family:var(--ds-font-body);min-height:36px}.ds-tab:hover:not(:disabled){color:var(--ds-text-strong)}.ds-tab--active{background:var(--ds-bg-card);color:var(--ds-text-strong);box-shadow:var(--ds-shadow-soft)}.ds-hero{position:relative;padding:28px 20px;border-radius:var(--ds-radius-xl);background:linear-gradient(135deg,var(--ds-apricot-soft) 0%,var(--ds-coral-soft) 60%,var(--ds-bg-cream) 100%);box-shadow:var(--ds-shadow-soft);overflow:hidden}.ds-hero__eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ds-apricot-deep);margin-bottom:6px}.ds-hero__title{font-family:var(--ds-font-display);font-size:var(--ds-text-h1);color:var(--ds-text-strong);font-weight:700;margin:0 0 6px;line-height:1.2}.ds-hero__desc{color:var(--ds-text-body);margin:0 0 16px;font-size:14px}.ds-hero__cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:14px}.ds-hero__card{background:#ffffff9e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:12px;border-radius:var(--ds-radius-md);border:1px solid rgba(255,255,255,.5);text-align:center;color:var(--ds-text-strong);font-size:13px;font-weight:600}.ds-hero__card-value{font-size:18px;color:var(--ds-apricot-deep);font-weight:700;margin-top:2px}.ds-service-card{position:relative;display:flex;align-items:center;gap:14px;padding:16px;border-radius:var(--ds-radius-lg);background:var(--ds-bg-card);border:1px solid var(--ds-border-soft);box-shadow:var(--ds-shadow-soft);cursor:pointer;transition:box-shadow .2s ease,transform .2s ease;text-align:left;width:100%;color:var(--ds-text-strong);font-family:var(--ds-font-body)}.ds-service-card:hover{box-shadow:var(--ds-shadow-elevated);transform:translateY(-2px)}.ds-service-card__icon{width:48px;height:48px;border-radius:var(--ds-radius-md);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--ds-bg-muted);color:var(--ds-apricot-deep)}.ds-service-card__body{flex:1;min-width:0}.ds-service-card__title{font-size:15px;font-weight:700;color:var(--ds-text-strong);margin:0 0 2px}.ds-service-card__desc{font-size:13px;color:var(--ds-text-muted);margin:0}.ds-service-card__chevron{color:var(--ds-text-subtle);font-size:18px;flex-shrink:0}.ds-service-card--popular{border-color:var(--ds-apricot-light);background:linear-gradient(135deg,var(--ds-bg-card) 0%,var(--ds-apricot-soft) 130%)}.ds-service-card--popular .ds-service-card__icon{background:linear-gradient(135deg,var(--ds-apricot),var(--ds-coral));color:#fff}.ds-service-card--premium{background:var(--ds-bg-card);border:1.5px solid var(--ds-apricot);box-shadow:var(--ds-shadow-primary-soft)}.ds-service-card--premium .ds-service-card__icon{background:linear-gradient(135deg,var(--ds-coral) 0%,var(--ds-apricot-deep) 100%);color:#fff}.ds-service-card__badge{position:absolute;top:10px;right:12px;padding:2px 8px;font-size:11px;font-weight:700;border-radius:var(--ds-radius-pill);background:var(--ds-apricot);color:#fff;letter-spacing:.02em}[data-theme=light] .modal-overlay,[data-theme=light] .nabi-popup-overlay,[data-theme=light] .nabi-modal-overlay{background:#26120852;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}[data-theme=light] .modal-content,[data-theme=light] .nabi-popup-content,[data-theme=light] .nabi-modal-content{background:var(--ds-bg-card);border:1px solid var(--ds-border-soft);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-elevated)}[data-theme=light] .fortune-detail-section,[data-theme=light] .detail-section,[data-theme=light] .lucky-info-box,[data-theme=light] .advice-highlight-box,[data-theme=light] .fortune-section-header,[data-theme=light] .nabi-card,[data-theme=light] .info-card,[data-theme=light] .summary-card,[data-theme=light] .profile-card,[data-theme=light] .social-card,[data-theme=light] .more-section,[data-theme=light] .misc-section,[data-theme=light] .section-card,[data-theme=light] .nabi-section-card,[data-theme=light] .home-section,[data-theme=light] .fortune-section,[data-theme=light] .report-section{background:var(--ds-bg-card);border:1px solid var(--ds-border-soft);border-radius:var(--ds-radius-md);box-shadow:var(--ds-shadow-soft)}[data-theme=light] .lucky-info-box,[data-theme=light] .advice-highlight-box{background:linear-gradient(135deg,var(--ds-apricot-soft) 0%,var(--ds-bg-card) 90%);border-color:var(--ds-apricot-light)}[data-theme=light] .error-box,[data-theme=light] .alert-box,[data-theme=light] .warning-box,[data-theme=light] .nabi-alert{background:var(--ds-bg-card);border:1px solid var(--ds-coral-soft);border-left:3px solid var(--ds-coral);border-radius:var(--ds-radius-md);box-shadow:var(--ds-shadow-soft);color:var(--ds-text-strong)}[data-theme=light] .nabi-tabs,[data-theme=light] .tab-bar,[data-theme=light] .segment-control,[data-theme=light] .fortune-period-tabs,[data-theme=light] .nabi-period-tabs,[data-theme=light] .report-tab-bar,[data-theme=light] .signup-step-tabs,[data-theme=light] .profile-tab-bar{background:var(--ds-bg-muted);border-radius:var(--ds-radius-pill);padding:4px}[data-theme=light] .nabi-tab,[data-theme=light] .tab-bar>button,[data-theme=light] .nabi-period-tab,[data-theme=light] .fortune-period-tabs>button,[data-theme=light] .nabi-period-tabs>button,[data-theme=light] .report-tab-bar>button,[data-theme=light] .signup-step-tabs>button{border-radius:var(--ds-radius-pill);color:var(--ds-text-muted);background:transparent;border:1px solid transparent;transition:all .18s ease}[data-theme=light] .nabi-tab.active,[data-theme=light] .tab-bar>button.active,[data-theme=light] .nabi-period-tab.active,[data-theme=light] .fortune-period-tabs>button.active,[data-theme=light] .nabi-period-tabs>button.active,[data-theme=light] .signup-step-tabs>button.active{background:var(--ds-bg-card);color:var(--ds-text-strong);border-color:var(--ds-apricot-light);box-shadow:var(--ds-shadow-primary-soft)}.report-tab-bar>button.active,[data-theme=light] .report-tab-bar>button.active{background:linear-gradient(135deg,var(--ds-coral),var(--primary-hover));color:#fff;border:1px solid var(--primary-hover);box-shadow:var(--ds-shadow-primary-soft)}.unified-fortune-doc-hero-accent{height:3px;margin:6px 0 14px;border-radius:999px;background:linear-gradient(90deg,var(--ds-coral) 0%,var(--primary-hover) 50%,var(--ds-coral) 100%);opacity:.85}[data-theme=light] .nabi-input,[data-theme=light] .nabi-textfield,[data-theme=light] .signup-input,[data-theme=light] .form-field input,[data-theme=light] .form-field select,[data-theme=light] .form-field textarea{background:var(--ds-bg-card);border:1px solid var(--ds-border-soft);border-radius:var(--ds-radius-md);box-shadow:var(--ds-shadow-soft);color:var(--ds-text-strong)}[data-theme=light] .nabi-input:focus,[data-theme=light] .nabi-textfield:focus,[data-theme=light] .signup-input:focus,[data-theme=light] .form-field input:focus,[data-theme=light] .form-field select:focus,[data-theme=light] .form-field textarea:focus{outline:none;border-color:var(--ring);box-shadow:var(--focus-ring)}[data-theme=light] .signup-step-card,[data-theme=light] .wizard-step,[data-theme=light] .profile-header,[data-theme=light] .profile-section,[data-theme=light] .social-feed-item,[data-theme=light] .more-menu-item{background:var(--ds-bg-card);border:1px solid var(--ds-border-soft);border-radius:var(--ds-radius-md);box-shadow:var(--ds-shadow-soft)}[data-theme=light] .signup-wizard .card,[data-theme=light] .wizard-step>.card,[data-theme=light] .wizard-step .consent-item,[data-theme=light] .signup-wizard .consent-item{background:var(--ds-bg-card);border:1px solid var(--ds-border-soft);border-radius:var(--ds-radius-md);box-shadow:var(--ds-shadow-soft)}[data-theme=light] .signup-wizard .consent-item.checked,[data-theme=light] .signup-wizard .consent-all.checked{border-color:var(--ds-apricot);background:var(--ds-apricot-soft)}[data-theme=light] .signup-wizard .wizard-progress-track{background:var(--ds-bg-muted);border-radius:var(--ds-radius-pill)}[data-theme=light] .signup-wizard .wizard-progress-track-fill{background:linear-gradient(90deg,var(--ds-apricot),var(--ds-coral))}[data-theme=light] .signup-wizard .wizard-dot.active,[data-theme=light] .signup-wizard .wizard-dot-group.active .wizard-dot{background:var(--ds-apricot);border-color:var(--ds-apricot-deep)}[data-theme=light] .nabi-btn--primary,[data-theme=light] .btn-primary,[data-theme=light] .primary-button{background:linear-gradient(135deg,var(--ds-apricot) 0%,var(--ds-coral) 100%);color:#fff;border:none;border-radius:var(--ds-radius-pill);box-shadow:var(--ds-shadow-primary-soft)}[data-theme=light] .nabi-btn--primary:hover,[data-theme=light] .btn-primary:hover,[data-theme=light] .primary-button:hover{filter:brightness(1.04);box-shadow:var(--ds-shadow-elevated)}[data-theme=light] .nabi-chip,[data-theme=light] .info-pill{border-radius:var(--ds-radius-pill);border:1px solid var(--ds-apricot-light);background:var(--ds-apricot-soft);color:var(--ds-text-strong)}[data-theme=light] .nabi-bottom-tabs,[data-theme=light] .bottom-nav{background:var(--ds-bg-card);border-top:1px solid var(--ds-border-soft);box-shadow:0 -8px 24px var(--ds-apricot-soft)}[data-theme=light] .page-bg-soft,[data-theme=light] .nabi-page--soft{background:linear-gradient(180deg,var(--ds-apricot-soft) 0%,var(--ds-bg-card) 240px)}[data-theme=light] .page-header,[data-theme=light] .page-title{color:var(--ds-text-strong)}[data-theme=light] .page-subtitle{color:var(--ds-text-muted)}[data-theme=light] .admin-section .stat-card,[data-theme=light] .stat-card{background:var(--ds-bg-card)!important;background-image:none!important;border:1px solid var(--ds-border-soft)!important;border-radius:var(--ds-radius-lg)!important;box-shadow:var(--ds-shadow-sm)!important;text-align:left!important;padding:16px 18px!important;display:flex;flex-direction:column;gap:4px}[data-theme=light] .admin-section .stat-card.realtime,[data-theme=light] .stat-card.realtime{background:linear-gradient(135deg,var(--ds-apricot-soft) 0%,var(--ds-coral-soft) 100%)!important;border-color:transparent!important;box-shadow:var(--ds-shadow)!important}[data-theme=light] .admin-section .stat-card .stat-value,[data-theme=light] .stat-card .stat-value{font-family:var(--ds-font-display)!important;font-size:28px!important;font-weight:700!important;color:var(--ds-text-strong)!important;margin-bottom:0!important;order:2}[data-theme=light] .admin-section .stat-card.realtime .stat-value,[data-theme=light] .stat-card.realtime .stat-value{color:var(--ds-apricot-deep)!important}[data-theme=light] .admin-section .stat-card .stat-label,[data-theme=light] .stat-card .stat-label{font-size:12px!important;color:var(--ds-text-muted)!important;font-weight:600!important;letter-spacing:.04em;text-transform:uppercase;order:1}[data-theme=light] .admin-section .stat-card .stat-sub,[data-theme=light] .stat-card .stat-sub{font-size:12px!important;color:var(--ds-text-muted)!important;margin-top:0!important;order:3}[data-theme=light] .admin-section .card,[data-theme=light] [data-admin-panel] .card{background:var(--ds-bg-card)!important;background-image:none!important;border:1px solid var(--ds-border-soft)!important;border-radius:var(--ds-radius-lg)!important;box-shadow:var(--ds-shadow-sm)!important;padding:18px!important;margin-bottom:12px}[data-theme=light] .admin-section .card:before,[data-theme=light] .admin-section .card:after,[data-theme=light] [data-admin-panel] .card:before,[data-theme=light] [data-admin-panel] .card:after{display:none!important}[data-theme=light] .admin-section .card:hover,[data-theme=light] [data-admin-panel] .card:hover{box-shadow:var(--ds-shadow)!important;transform:none!important}[data-theme=light] .admin-section .card-title,[data-theme=light] [data-admin-panel] .card-title{font-family:var(--ds-font-display)!important;font-size:16px!important;color:var(--ds-text-strong)!important;letter-spacing:0!important;font-weight:600!important;padding-left:0!important;margin-bottom:12px!important}[data-theme=light] .admin-section .card-title:before,[data-theme=light] [data-admin-panel] .card-title:before{display:none!important}[data-theme=light] .admin-section{background:transparent!important;border:none!important}.ds-card--gold{background:linear-gradient(135deg,var(--ds-apricot-soft) 0%,var(--ds-bg-card) 100%);border:1px solid var(--ds-apricot-light);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-soft)}.ds-card--gold-strong{background:linear-gradient(135deg,var(--ds-apricot) 0%,var(--ds-coral-soft) 100%);border:1px solid var(--ds-apricot);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-primary-soft);color:var(--ds-text-strong)}.ds-card--apricot{background:var(--ds-apricot-soft);border:1px solid var(--ds-apricot-light);border-radius:var(--ds-radius-lg);box-shadow:none}.ds-card--coral{background:var(--ds-coral-soft);border:1px solid var(--ds-coral-soft);border-radius:var(--ds-radius-lg);box-shadow:none;color:var(--ds-coral-deep)}.ds-error-box{background:var(--ds-bg-card);border:1px solid var(--ds-coral-soft);border-left:3px solid var(--ds-coral);border-radius:var(--ds-radius-md);padding:14px 16px;color:var(--ds-text-strong);box-shadow:var(--ds-shadow-soft)}.ds-error-box--inline{background:var(--ds-coral-soft);border:1px solid var(--ds-coral-soft);color:var(--ds-coral-deep);box-shadow:none}.ds-tabs--report{display:flex;gap:6px;padding:4px;background:var(--ds-bg-muted);border-radius:var(--ds-radius-pill);overflow-x:auto}.ds-tabs--report .ds-report-tab{flex:0 0 auto;padding:8px 14px;border-radius:var(--ds-radius-pill);border:1px solid transparent;background:transparent;color:var(--ds-text-muted);font-weight:600;font-size:13px;cursor:pointer;transition:all .18s ease;white-space:nowrap}.ds-tabs--report .ds-report-tab[aria-selected=true],.ds-tabs--report .ds-report-tab--active{background:var(--ds-bg-card);color:var(--ds-text-strong);border-color:var(--ds-apricot-light);box-shadow:var(--ds-shadow-primary-soft)}.ds-modal-sheet{background:var(--ds-bg-card);border:1px solid var(--ds-border-soft);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-elevated);padding:20px;color:var(--ds-text-strong)}.ds-typo-display{font-family:var(--ds-font-display);font-size:clamp(30px,5vw,40px);font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--ds-text-strong)}.ds-typo-h1{font-family:var(--ds-font-display);font-size:clamp(22px,3.5vw,28px);font-weight:700;line-height:1.25;letter-spacing:-.01em;color:var(--ds-text-strong)}.ds-typo-h2{font-family:var(--ds-font-display);font-size:20px;font-weight:600;line-height:1.3;letter-spacing:-.005em;color:var(--ds-text-strong)}.ds-typo-h3{font-family:var(--ds-font-body);font-size:17px;font-weight:600;line-height:1.4;color:var(--ds-text-strong)}.ds-typo-h4{font-family:var(--ds-font-body);font-size:15px;font-weight:600;line-height:1.45;color:var(--ds-text-body)}.ds-typo-body-lg{font-family:var(--ds-font-body);font-size:16px;font-weight:400;line-height:1.65;color:var(--ds-text-body)}.ds-typo-body{font-family:var(--ds-font-body);font-size:14px;font-weight:400;line-height:1.6;color:var(--ds-text-body)}.ds-typo-caption{font-family:var(--ds-font-body);font-size:12px;font-weight:400;line-height:1.5;color:var(--ds-text-muted)}.ds-typo-small{font-family:var(--ds-font-body);font-size:11px;font-weight:400;line-height:1.45;color:var(--ds-text-subtle);letter-spacing:.01em}.ds-text-strong{color:var(--ds-text-strong)}.ds-text-body{color:var(--ds-text-body)}.ds-text-muted{color:var(--ds-text-muted)}.ds-text-subtle{color:var(--ds-text-subtle)}.ds-text-primary{color:var(--primary)}.ds-prose>*+*{margin-top:.75em}.ds-prose>h2,.ds-prose>h3{margin-top:1.5em}.ds-button--primary:active:not(:disabled){filter:brightness(.92);transform:translateY(0) scale(.98);box-shadow:none;transition-duration:80ms}.ds-button--secondary:active:not(:disabled){background:var(--muted);transform:translateY(0) scale(.98);transition-duration:80ms}.ds-button--outline:active:not(:disabled){background:var(--accent);transform:translateY(0) scale(.98);transition-duration:80ms}.ds-button--destructive:active:not(:disabled){filter:brightness(.88);transform:translateY(0) scale(.98);box-shadow:none;transition-duration:80ms}.ds-button--ghost:active:not(:disabled){background:var(--muted);transform:scale(.96);transition-duration:80ms}.ds-button--quiet:active:not(:disabled){background:var(--accent);transform:scale(.97);transition-duration:80ms}.ds-button--loading{position:relative;color:transparent!important;pointer-events:none}.ds-button--loading:after{content:"";position:absolute;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ds-btn-spin .65s linear infinite;color:var(--primary-foreground)}.ds-button--secondary.ds-button--loading:after,.ds-button--outline.ds-button--loading:after,.ds-button--ghost.ds-button--loading:after,.ds-button--quiet.ds-button--loading:after{color:var(--foreground)}@keyframes ds-btn-spin{to{transform:rotate(360deg)}}.ds-button--icon{padding:0;width:36px;height:36px;border-radius:50%}.ds-button--icon.ds-button--md{width:44px;height:44px}.ds-button--icon.ds-button--lg{width:52px;height:52px}.ds-card{box-shadow:var(--ds-shadow-sm)}.ds-card--raised{box-shadow:var(--ds-shadow);background:var(--ds-bg-card)}.ds-card--raised.ds-card--interactive:hover{box-shadow:var(--ds-shadow-lg);transform:translateY(-2px)}.ds-card--floating{box-shadow:var(--ds-shadow-lg);background:var(--ds-bg-card)}.ds-card--elevated{box-shadow:var(--ds-shadow-elevated);background:var(--ds-bg-card);border-color:var(--ds-border-soft)}.ds-card--interactive:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.ds-badge--success{background:#6f917024;color:#264a2c;border:1px solid rgba(111,145,112,.3)}.ds-badge--warning{background:#c8a96a24;color:#5c4513;border:1px solid rgba(200,169,106,.3)}.ds-badge--error{background:#d4183d1a;color:#82102a;border:1px solid rgba(212,24,61,.25)}.ds-badge--info{background:#5e7ba31f;color:#2d4d78;border:1px solid rgba(94,123,163,.25)}.ds-badge--primary{background:#d85b441f;color:#7a2a1a;border:1px solid rgba(216,91,68,.28)}.ds-stack-xs{display:flex;flex-direction:column;gap:4px}.ds-stack-sm{display:flex;flex-direction:column;gap:8px}.ds-stack-md{display:flex;flex-direction:column;gap:12px}.ds-stack-lg{display:flex;flex-direction:column;gap:20px}.ds-stack-xl{display:flex;flex-direction:column;gap:28px}.ds-row-xs{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.ds-row-sm{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ds-row-md{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.ds-row-lg{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.ds-divider{height:1px;background:var(--ds-border-soft);border:none;margin:0}.ds-divider--strong{background:var(--ds-border)}.ds-page-header{display:flex;flex-direction:column;gap:4px;padding-bottom:16px;border-bottom:1px solid var(--ds-border-soft);margin-bottom:20px}.ds-page-header__title{font-family:var(--ds-font-display);font-size:clamp(20px,3vw,26px);font-weight:700;color:var(--ds-text-strong);margin:0;line-height:1.25}.ds-page-header__subtitle{font-size:13px;color:var(--ds-text-muted);margin:0;line-height:1.5}.ds-section-title__title{font-size:18px;font-weight:700;letter-spacing:-.01em}.ds-card-title{font-family:var(--ds-font-body);font-size:15px;font-weight:700;color:var(--ds-text-strong);margin:0 0 4px;line-height:1.4}.ds-card-subtitle{font-size:13px;color:var(--ds-text-muted);margin:0;line-height:1.5}.ds-dialog__footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--ds-border-soft)}.ds-dialog__footer .ds-button{flex:0 0 auto}.ds-dialog__footer--space-between{justify-content:space-between}.ds-dialog__footer--full .ds-button{flex:1}[data-theme=dark]{--welcome-illustration-blend: screen;--welcome-illustration-opacity: .45;--welcome-vignette-mid: rgba(20, 30, 60, .28);--welcome-vignette-edge: rgba(10, 18, 40, .55);--welcome-vignette-top: rgba(10, 18, 40, .35);--welcome-vignette-bottom: rgba(10, 18, 40, .42)}.report-body-clamp{width:100%;max-width:760px;margin-left:auto;margin-right:auto}@media(min-width:720px){.report-body-clamp{max-width:clamp(720px,80vw,760px)}}.bento-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--bento-gap);width:100%}@media(max-width:479px){.bento-grid{grid-template-columns:1fr}}@media(min-width:768px){.bento-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.bento-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--bento-gap-lg)}}.bento-card{background:var(--bento-card-bg);border:1px solid var(--bento-card-border);border-radius:var(--bento-radius);padding:var(--bento-card-padding);box-shadow:var(--bento-card-shadow);transition:box-shadow .2s ease,transform .2s ease;min-width:0}@media(min-width:1024px){.bento-card{padding:var(--bento-card-padding-lg)}}.bento-card--cream{background:var(--bento-card-bg-cream);border-color:transparent}.bento-card--tinted{background:var(--bento-card-bg-tinted);border-color:transparent;position:relative;padding-left:calc(var(--bento-card-padding) + 2px)}.bento-card--tinted:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:var(--bento-accent-bar);border-radius:0 2px 2px 0;background:var(--bento-accent)}.bento-card--accent{background:var(--bento-accent);color:var(--bento-accent-fg);border-color:transparent}.bento-card--accent .bento-card__eyebrow,.bento-card--accent .bento-card__body{color:#3a2e2c}.bento-card--accent .bento-card__value,.bento-card--accent .bento-card__title{color:var(--bento-accent-fg)}.bento-card[data-interactive=true]{cursor:pointer}.bento-card[data-interactive=true]:hover{box-shadow:var(--bento-card-shadow-hover);transform:translateY(-1px)}.bento-card[data-interactive=true]:active{transform:translateY(0)}.bento-card[data-interactive=true]:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--bento-card-shadow)}.bento-card__eyebrow{font-size:var(--bento-eyebrow-size);font-weight:700;color:var(--bento-eyebrow-color);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px}.bento-card__title{font-size:var(--bento-title-size);font-weight:var(--bento-title-weight);margin:0 0 6px;letter-spacing:-.01em}.bento-card__value{font-size:var(--bento-value-size);font-weight:var(--bento-value-weight);margin:4px 0;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.bento-card__body{font-size:var(--bento-body-size);color:var(--bento-body-color);line-height:1.55;margin:0}.bento-card--col-2{grid-column:span 2}.bento-card--col-3{grid-column:span 3}.bento-card--col-4{grid-column:span 4}.bento-card--row-2{grid-row:span 2}@media(max-width:767px){.bento-card--col-3,.bento-card--col-4{grid-column:span 2}}@media(min-width:768px)and (max-width:1023px){.bento-card--col-4{grid-column:span 3}}.home-page-bento .home-profile-card,.home-page-bento .home-profile-card--styled,.home-page-bento .card,.home-page-bento .stat-card,.report-page-bento .card,.report-page-bento .stat-card,.report-page-bento .ds-card,.admin-dashboard .card,.admin-dashboard .stat-card,.admin-dashboard .ds-admin-stat{border-radius:var(--bento-radius);box-shadow:var(--bento-card-shadow);padding:var(--bento-card-padding);border:1px solid var(--bento-card-border);background:var(--bento-card-bg);transition:box-shadow .2s ease,transform .2s ease}@media(min-width:1024px){.home-page-bento .home-profile-card,.home-page-bento .home-profile-card--styled,.home-page-bento .card,.home-page-bento .stat-card,.report-page-bento .card,.report-page-bento .stat-card,.report-page-bento .ds-card,.admin-dashboard .card,.admin-dashboard .stat-card,.admin-dashboard .ds-admin-stat{padding:var(--bento-card-padding-lg)}}.admin-dashboard .ds-admin-stat--emphasis{background:var(--bento-accent);color:var(--bento-accent-fg);border-color:transparent;box-shadow:var(--bento-card-shadow-hover)}.admin-dashboard .ds-admin-stat--emphasis .ds-admin-stat__label,.admin-dashboard .ds-admin-stat--emphasis .ds-admin-stat__hint{color:#3a2e2c}.admin-dashboard .ds-admin-stat--emphasis .ds-admin-stat__value{color:var(--bento-accent-fg)}.report-page-bento .ds-card--gold{background:var(--bento-card-bg-tinted);border-color:transparent;position:relative;padding-left:calc(var(--bento-card-padding) + 2px)}.report-page-bento .ds-card--gold:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:var(--bento-accent-bar);border-radius:0 2px 2px 0;background:var(--bento-accent)}.admin-dashboard .admin-stats-grid,.admin-dashboard .form-grid,.home-page-bento .home-profile-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--bento-gap)}@media(max-width:479px){.admin-dashboard .admin-stats-grid,.admin-dashboard .form-grid,.home-page-bento .home-profile-tiles{grid-template-columns:1fr}}@media(min-width:768px){.admin-dashboard .admin-stats-grid,.admin-dashboard .form-grid,.home-page-bento .home-profile-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.admin-dashboard .admin-stats-grid,.admin-dashboard .form-grid,.home-page-bento .home-profile-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--bento-gap-lg)}}.admin-dashboard .admin-stats-grid .ds-admin-stat--emphasis~.ds-admin-stat--emphasis,.admin-dashboard .admin-stats-grid .bento-card--accent~.bento-card--accent{background:var(--bento-card-bg);color:inherit;border:1px solid var(--bento-card-border);box-shadow:var(--bento-card-shadow)}.admin-dashboard .admin-stats-grid .ds-admin-stat--emphasis~.ds-admin-stat--emphasis .ds-admin-stat__label,.admin-dashboard .admin-stats-grid .ds-admin-stat--emphasis~.ds-admin-stat--emphasis .ds-admin-stat__hint{color:var(--ds-text-muted)}.admin-dashboard .admin-stats-grid .ds-admin-stat--emphasis~.ds-admin-stat--emphasis .ds-admin-stat__value,.admin-dashboard .admin-stats-grid .ds-admin-stat--emphasis~.ds-admin-stat--emphasis .bento-card__value{color:var(--ds-text-strong)}.report-page-bento .ds-card--gold~.ds-card--gold{background:var(--bento-card-bg);border:1px solid var(--bento-card-border);padding-left:var(--bento-card-padding)}.report-page-bento .ds-card--gold~.ds-card--gold:before{display:none}.admin-dashboard .ref-style-diag-grid .ref-style-metrics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:10px}@media(min-width:768px){.admin-dashboard .ref-style-diag-grid .ref-style-metrics-grid{grid-template-columns:repeat(3,1fr)}}.admin-dashboard .admin-stats-grid.ref-style-diag-grid{grid-template-columns:1fr}@media(min-width:768px){.admin-dashboard .admin-stats-grid.ref-style-diag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.admin-dashboard .admin-stats-grid.ref-style-diag-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--bento-gap-lg)}}.admin-dashboard .admin-inline-3col-grid{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:480px){.admin-dashboard .admin-inline-3col-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:768px){.admin-dashboard .admin-inline-3col-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.admin-dashboard .admin-inline-3col-grid--tight{gap:8px}.admin-dashboard .admin-inline-4col-grid{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:480px){.admin-dashboard .admin-inline-4col-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.admin-dashboard .admin-inline-4col-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.admin-dashboard .admin-inline-5col-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}@media(min-width:600px){.admin-dashboard .admin-inline-5col-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.admin-dashboard .admin-inline-5col-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.unified-fortune-doc{overflow-wrap:anywhere;word-break:break-word}.unified-fortune-doc table,.unified-fortune-doc pre{display:block;max-width:100%;overflow-x:auto}.unified-fortune-doc img,.unified-fortune-doc video{max-width:100%;height:auto}.admin-dashboard table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-dashboard .recharts-responsive-container,.admin-dashboard .recharts-wrapper{max-width:100%!important}@supports (height: 100dvh){.ds-dialog__body{max-height:min(70vh,calc(100dvh - 160px));overflow-y:auto}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:40px}.loading-spinner{width:48px;height:48px;border:4px solid var(--gold-alpha-20);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}.loading-spinner.small{width:24px;height:24px;border-width:3px}.loading-spinner.large{width:64px;height:64px;border-width:5px}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{margin-top:16px;color:var(--gold);font-size:14px;font-family:var(--font-sans)}.loading-dots:after{content:"";animation:dots 1.5s steps(4,end) infinite}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}.skeleton{background:linear-gradient(90deg,var(--gold-alpha-10) 25%,var(--gold-alpha-20) 50%,var(--gold-alpha-10) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:8px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-text.short{width:60%}.skeleton-text.medium{width:80%}.skeleton-text.long{width:100%}.skeleton-title{height:24px;width:40%;margin-bottom:16px}.skeleton-card{padding:20px;border-radius:12px;background:var(--bg-card);border:1px solid var(--border)}.skeleton-avatar{width:48px;height:48px;border-radius:50%}.error-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.error-icon{width:64px;height:64px;margin-bottom:16px;color:#ef4444}.error-title{color:var(--text-primary, #f8fafc);font-size:18px;font-weight:600;margin-bottom:8px;font-family:var(--font-sans)}.error-description{color:var(--text-secondary, #94a3b8);font-size:14px;margin-bottom:20px;font-family:var(--font-sans)}.error-retry-btn{padding:12px 24px;background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:#0f172a;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;font-family:var(--font-sans);transition:transform .2s,box-shadow .2s}.error-retry-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--gold-alpha-30)}.toast-container{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:var(--z-tooltip);display:flex;flex-direction:column;gap:8px}.toast{padding:12px 20px;border-radius:8px;font-size:14px;font-family:var(--font-sans);animation:toast-in .3s ease-out;max-width:90vw;text-align:center}.toast.success{background:#10b981;color:#fff}.toast.error{background:#ef4444;color:#fff}.toast.warning{background:#f59e0b;color:#0f172a}.toast.info{background:#3b82f6;color:#fff}@keyframes toast-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
