:root{--color-bg-main: #050511;--color-primary: #5b42f3;--color-secondary: #00d2ff;--color-accent: #ff00c6;--gradient-primary: linear-gradient(135deg, #5b42f3 0%, #00d2ff 100%);--gradient-glow: conic-gradient(from 180deg at 50% 50%, #5b42f3 0deg, #00d2ff 160deg, #ff00c6 360deg);--glass-surface: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--glass-highlight: rgba(255, 255, 255, .15);--text-main: #ffffff;--text-muted: rgba(255, 255, 255, .6);--shadow-card: 0 20px 40px -10px rgba(0, 0, 0, .5);--shadow-glow: 0 0 50px -10px rgba(91, 66, 243, .3);--blur-amount: 20px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;background-color:var(--color-bg-main);color:var(--text-main);min-height:100vh;overflow-x:hidden;line-height:1.6}.bg-gradient{position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle at 10% 20%,rgba(91,66,243,.15) 0%,transparent 40%),radial-gradient(circle at 90% 80%,rgba(0,210,255,.1) 0%,transparent 40%);z-index:-3}.bg-glow{position:fixed;top:50%;left:50%;width:60vw;height:60vw;background:var(--gradient-glow);filter:blur(100px);opacity:.15;transform:translate(-50%,-50%);border-radius:50%;animation:pulseGlow 10s infinite alternate ease-in-out;z-index:-2}@keyframes pulseGlow{0%{transform:translate(-50%,-50%) scale(.8) rotate(0);opacity:.1}to{transform:translate(-50%,-50%) scale(1.1) rotate(20deg);opacity:.2}}#app{min-height:100vh;display:flex;flex-direction:column}.header{padding:1.5rem 0;border-bottom:1px solid var(--glass-border);background:#05051199;-webkit-backdrop-filter:blur(var(--blur-amount));backdrop-filter:blur(var(--blur-amount));position:sticky;top:0;z-index:100}.header .container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:1rem;text-decoration:none;cursor:pointer}.logo h1{font-size:1.8rem;font-weight:800;background:linear-gradient(to right,#fff,#a5a5a5);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em}.nav{display:flex;gap:2rem;align-items:center}.nav-link{color:var(--text-muted);text-decoration:none;font-weight:500;font-size:1rem;transition:all .3s ease;position:relative;padding:.5rem 0;cursor:pointer}.nav-link:hover,.nav-link.active{color:#fff}.nav-link.active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--gradient-primary);border-radius:2px;box-shadow:0 0 10px var(--color-primary)}.hero{padding:4rem 0 3rem;text-align:center}.hero-title{font-size:4rem;font-weight:800;line-height:1.1;margin-bottom:1.5rem;background:linear-gradient(to bottom right,#fff 30%,#ffffff80);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 30px rgba(255,255,255,.1))}.hero-subtitle{font-size:1.25rem;color:var(--text-muted);font-weight:300}.main-section,.auth-section,.admin-section{flex:1;padding-bottom:5rem}.auth-section{display:flex;justify-content:center;align-items:center;min-height:70vh;padding:2rem 0}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.form-card,.auth-card{max-width:700px;margin:0 auto;background:var(--glass-surface);border:1px solid var(--glass-border);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);border-radius:24px;padding:3rem;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.auth-card{max-width:480px;width:100%}.form-card:before,.auth-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--glass-highlight),transparent)}.form-header{text-align:center;margin-bottom:2.5rem}.form-header h3{font-size:2rem;margin-bottom:.5rem}.form-group{margin-bottom:2rem}.form-row{display:flex;gap:1rem}.form-row .form-group{flex:1}.form-label{display:flex;align-items:center;gap:.8rem;font-weight:600;margin-bottom:.8rem;color:#ffffffe6;font-size:1rem}.badge-optional{font-size:.75rem;padding:.2rem .6rem;background:#ffffff1a;border-radius:20px;color:var(--text-muted);font-weight:500}.form-input{width:100%;background:#0003;border:1px solid var(--glass-border);border-radius:12px;padding:1rem;font-size:1rem;color:#fff;transition:all .3s ease}.form-input:focus{outline:none;border-color:var(--color-primary);background:#0006;box-shadow:0 0 0 4px #5b42f31a}.auth-switch{margin-top:1.5rem;text-align:center;color:var(--text-muted);font-size:.95rem}.auth-switch button{background:none;border:none;color:var(--color-secondary);font-weight:600;cursor:pointer;margin-left:.5rem;font-size:.95rem;padding:0}.auth-switch button:hover{text-decoration:underline;color:#fff}.upload-area{position:relative;border:2px dashed var(--glass-border);border-radius:16px;background:#00000026;min-height:140px;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);overflow:hidden}.upload-area:hover{background:#ffffff0d;border-color:#ffffff4d;transform:translateY(-2px)}.upload-area.drag-over{background:#5b42f326;border-color:var(--color-primary);transform:scale(.98)}.file-input{position:absolute;width:100%;height:100%;opacity:0;cursor:pointer;z-index:10}.upload-placeholder{display:flex;flex-direction:row;align-items:center;gap:1.5rem;padding:0 2rem;pointer-events:none;transition:opacity .3s ease;width:100%;justify-content:flex-start}.icon-wrapper{width:56px;height:56px;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 15px -5px #5b42f366;transition:transform .3s ease;flex-shrink:0}.upload-area:hover .icon-wrapper{transform:scale(1.1) rotate(5deg)}.upload-text-content{display:flex;flex-direction:column;align-items:flex-start}.upload-text{font-size:1.1rem;font-weight:700;margin-bottom:.2rem;color:#fff}.upload-hint{color:var(--text-muted);font-size:.85rem}.preview-container{position:absolute;inset:0;padding:1rem;display:flex;gap:1rem;overflow-x:auto;align-items:center;background:#050511cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5}.preview-container::-webkit-scrollbar{height:6px}.preview-container::-webkit-scrollbar-track{background:#ffffff0d}.preview-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.preview-item{position:relative;min-width:100px;width:100px;height:100px;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000004d;transition:transform .3s ease;border:1px solid var(--glass-border);flex-shrink:0}.preview-item:hover{transform:translateY(-5px) scale(1.05);z-index:10;border-color:#fff}.preview-item img{width:100%;height:100%;object-fit:cover}.preview-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;opacity:0;transition:all .2s ease;z-index:20}.preview-item:hover .preview-remove{opacity:1}.preview-remove:hover{background:#ff4757}.submit-btn{width:100%;padding:1rem;border:none;background:#fff;color:#000;border-radius:14px;font-size:1.1rem;font-weight:700;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:.8rem;transition:all .3s cubic-bezier(.23,1,.32,1);box-shadow:0 0 #ffffffb3;margin-top:1rem}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px -5px #fff6}.submit-btn:active{transform:translateY(1px)}.result-card{text-align:center;animation:cardFlip .8s cubic-bezier(.4,0,.2,1)}@keyframes cardFlip{0%{opacity:0;transform:perspective(1000px) rotateX(20deg) translateY(20px)}to{opacity:1;transform:perspective(1000px) rotateX(0) translateY(0)}}.result-header{margin-bottom:2rem}.result-icon{width:100px;height:100px;margin:0 auto 1.5rem;background:var(--gradient-glow);border-radius:50%;padding:3px;animation:glowPulse 2s infinite}.result-icon-inner{width:100%;height:100%;background:var(--color-bg-main);border-radius:50%;display:flex;align-items:center;justify-content:center}.result-content{background:#ffffff0d;border-radius:16px;padding:2rem;margin-bottom:2rem}.result-item{display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--glass-border)}.result-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.result-label{color:var(--text-muted)}.result-value{font-weight:600;font-size:1.1rem}.result-price{font-size:1.8rem;font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.admin-header{text-align:center;margin-bottom:2rem}.admin-header h2{font-size:2.5rem;margin-bottom:.5rem;background:linear-gradient(to right,#fff,#a5a5a5);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.admin-card{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:20px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:1.5rem;overflow:hidden}.table-container{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;color:#fff}.data-table th,.data-table td{padding:1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.data-table th{font-weight:600;color:var(--color-primary);background:#0003}.data-table tr:hover{background:#ffffff08}.btn-sm{padding:.4rem .8rem;font-size:.85rem;background:var(--glass-highlight);border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:6px;cursor:pointer;transition:all .2s}.btn-sm:hover{background:var(--color-primary)}.modal{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{background:#1a1a2e;border:1px solid var(--glass-border);padding:2rem;border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;position:relative}.close-modal{position:absolute;top:1rem;right:1.5rem;font-size:2rem;cursor:pointer;color:#aaa}.close-modal:hover{color:#fff}.detail-grid{display:grid;gap:1rem;margin-top:1.5rem}.detail-row{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.5rem}.detail-images{display:flex;gap:.5rem;overflow-x:auto;margin-top:.5rem;padding-bottom:.5rem}.detail-images img{width:100px;height:100px;object-fit:cover;border-radius:8px;cursor:pointer}.loading-overlay{position:fixed;inset:0;background:#050511d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:none;justify-content:center;align-items:center;z-index:1000}.loading-overlay.active{display:flex;animation:fadeIn .3s ease}.spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.1);border-left-color:var(--color-secondary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.history-list{display:grid;gap:1.5rem;max-width:800px;margin:0 auto}.history-card{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:16px;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;transition:transform .2s}.history-card:hover{transform:translateY(-2px);background:#ffffff0d}.history-info h4{font-size:1.2rem;margin-bottom:.5rem}.history-meta{color:var(--text-muted);font-size:.9rem;display:flex;gap:1rem}.history-price{text-align:right}.history-total{font-size:1.5rem;font-weight:800;color:var(--color-secondary)}.price-detail{font-size:.85rem;color:var(--text-muted);margin-top:.2rem}.status-badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.8rem}.status-badge.pending{background:#ffc10733;color:#ffc107;border:1px solid rgba(255,193,7,.3)}.status-badge.confirmed{background:#00d2ff33;color:#00d2ff;border:1px solid rgba(0,210,255,.3)}.admin-input-group{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.admin-input-row{display:flex;gap:1rem;margin-bottom:1rem}.admin-input{background:#0000004d;border:1px solid var(--glass-border);color:#fff;padding:.8rem;border-radius:8px;width:100%}.btn-confirm{width:100%;padding:1rem;background:var(--gradient-primary);border:none;border-radius:10px;color:#fff;font-weight:700;cursor:pointer}.hidden{display:none!important}@media(max-width:768px){.hero-title{font-size:2.5rem}.form-card,.auth-card{padding:1.5rem}.upload-area{min-height:120px}.upload-placeholder{padding:0 1rem;gap:1rem}.icon-wrapper{width:48px;height:48px}.form-header h3{font-size:1.5rem}}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:var(--glass-surface);border:1px solid var(--glass-border);border-radius:16px;padding:1.5rem;text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s ease}.stat-card:hover{transform:translateY(-5px);border-color:var(--glass-highlight);background:#ffffff0d}.stat-label{font-size:.9rem;color:var(--text-muted);margin-bottom:.5rem}.stat-value{font-size:2rem;font-weight:800;color:#fff}.admin-controls{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.search-box{flex:1;min-width:300px}.filter-group{display:flex;gap:.5rem;background:#0003;padding:.4rem;border-radius:10px;border:1px solid var(--glass-border)}.filter-btn{background:none;border:none;color:var(--text-muted);padding:.5rem 1.2rem;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s ease}.filter-btn:hover{color:#fff}.filter-btn.active{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 15px -5px #5b42f366}.manual-header{text-align:center;margin-bottom:2.5rem}.manual-header h3{font-size:1.8rem;margin-bottom:.5rem;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.manual-steps{display:flex;flex-direction:column;gap:1.5rem}.manual-step{display:flex;gap:1.2rem;align-items:flex-start;padding:1rem;border-radius:12px;background:#ffffff08;border:1px solid var(--glass-border);transition:all .3s ease}.manual-step:hover{background:#ffffff14;transform:translate(5px);border-color:var(--color-secondary)}.step-num{width:32px;height:32px;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem;flex-shrink:0;box-shadow:0 4px 10px #5b42f366}.step-text h4{font-size:1.1rem;margin-bottom:.3rem;color:#fff}.step-text p{font-size:.9rem;color:var(--text-muted);line-height:1.4}.link-btn{background:none;border:none;color:var(--color-secondary);font-size:.9rem;cursor:pointer;opacity:.8;transition:opacity .2s}.link-btn:hover{opacity:1;text-decoration:underline}.admin-tabs{display:flex;gap:1rem;border-bottom:1px solid var(--glass-border);padding-bottom:1rem}.tab-btn{background:none;border:none;color:var(--text-muted);font-size:1.1rem;font-weight:700;cursor:pointer;padding:.5rem 1rem;position:relative;transition:all .3s ease}.tab-btn:hover{color:#fff}.tab-btn.active{color:var(--color-secondary)}.tab-btn.active:after{content:"";position:absolute;bottom:-1rem;left:0;width:100%;height:2px;background:var(--color-secondary);box-shadow:0 0 10px var(--color-secondary)}@media(max-width:992px){.hero-title{font-size:3rem}.form-card,.auth-card{padding:2.5rem 2rem}}@media(max-width:768px){.header .container{flex-direction:column;gap:1rem;padding:0 1rem}.nav{gap:1rem;width:100%;justify-content:center;overflow-x:auto;padding-bottom:.5rem}.nav-link{font-size:.9rem;white-space:nowrap}.hero{padding:2rem 0}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem;padding:0 1rem}.container{padding:0 1rem}.form-card,.auth-card{padding:2rem 1.5rem;border-radius:16px}.form-row{flex-direction:column;gap:0}.form-header h3{font-size:1.6rem}.admin-stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.admin-header h2{font-size:2rem}.admin-controls{flex-direction:column;align-items:stretch}.filter-group{justify-content:space-between}}@media(max-width:480px){.hero-title{font-size:2rem}.logo h1{font-size:1.5rem}.submit-btn{font-size:1rem;padding:.8rem}.admin-stats-grid{grid-template-columns:1fr}.manual-step{flex-direction:column;align-items:center;text-align:center}.modal-content{padding:1.5rem 1rem}.detail-row{flex-direction:column;align-items:flex-start;gap:.3rem}}
