.layout-container{display:flex;min-height:100vh;background:var(--bg-main);color:var(--text-main)}.sidebar{width:240px;background:var(--bg-surface);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;position:sticky;top:0;z-index:100;transition:transform .3s ease}.sidebar-header{padding:20px;font-size:20px;font-weight:700;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px;flex-shrink:0;color:var(--text-main)}.sidebar-nav{flex:1;padding:20px 0;overflow-y:auto}.nav-item{display:flex;align-items:center;padding:12px 24px;text-decoration:none;margin-bottom:4px;transition:background-color .2s}.nav-item.active{color:var(--primary);background:var(--hover);border-right:3px solid var(--primary);font-weight:500}.nav-item:not(.active){color:var(--text-secondary);border-right:3px solid transparent;font-weight:400}.nav-item:hover:not(.active){background:#0000000d}.sidebar-footer{padding:24px 10px;text-align:center;font-size:13px;color:var(--text-secondary);border-top:1px solid var(--border);flex-shrink:0}.main-content-wrapper{flex:1;overflow:auto;display:flex;flex-direction:column;min-width:0}.main-content{padding:30px 40px;max-width:1200px;margin:0 auto;width:100%;box-sizing:border-box;flex:1}.main-content.full-width{padding:0;max-width:none;height:100%}.mobile-header{display:none;padding:10px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border);align-items:center;justify-content:space-between;position:sticky;top:0;z-index:40;height:60px}.mobile-menu-btn{background:none;border:none;color:var(--text-main);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:4px}.mobile-menu-btn:hover{background:var(--hover)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:90;backdrop-filter:blur(2px)}@media (max-width: 768px){.layout-container{flex-direction:column}.sidebar{position:fixed;top:0;left:0;bottom:0;transform:translate(-100%);box-shadow:2px 0 8px #0000001a}.sidebar.open{transform:translate(0)}.sidebar-overlay.open{display:block}.mobile-header{display:flex;height:50px;padding:0 16px}.main-content{padding:12px}}.mobile-layout{display:flex;flex-direction:column;height:100vh;height:100dvh;background:linear-gradient(180deg,#f0f4ff,#f8f9fa,#fff5e6);color:var(--text-main);overflow:hidden;position:relative}.mobile-layout:before{content:"";position:fixed;top:0;left:0;right:0;height:200px;background:linear-gradient(135deg,#6366f114,#a855f714);pointer-events:none;z-index:0}.mobile-top-bar{height:52px;background:linear-gradient(135deg,#fff,#fafafa);border-bottom:1px solid rgba(99,102,241,.1);display:flex;align-items:center;padding:0 16px;flex-shrink:0;box-shadow:0 2px 8px #0000000a;z-index:10;position:relative}.logo-area{display:flex;align-items:center;gap:10px}.mobile-logo{width:28px;height:28px;border-radius:6px;object-fit:contain;box-shadow:0 2px 6px #0000001a}.mobile-logo-emoji{font-size:24px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.mobile-title{font-size:17px;font-weight:700;margin:0;line-height:1.4;letter-spacing:-.02em;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mobile-content{flex:1;overflow-y:auto;overflow-x:hidden;position:relative;padding:14px 12px;-webkit-overflow-scrolling:touch;z-index:1;padding-bottom:calc(80px + env(safe-area-inset-bottom))}.mobile-content.full-width{padding:0;padding-bottom:calc(80px + env(safe-area-inset-bottom))}.mobile-content :where(.card,.panel,.section){border-radius:14px;box-shadow:0 2px 12px #6366f114;border:1px solid rgba(99,102,241,.1);background:linear-gradient(135deg,#fff,#fafafa)}.mobile-footer-info{text-align:center;font-size:11px;color:#8b5cf6;padding:24px 0;opacity:.6;line-height:1.6;letter-spacing:0}.police-info{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:6px}.police-info img{width:13px;height:13px;opacity:.7}.mobile-bottom-bar{height:60px;background:linear-gradient(135deg,#fff,#fafafa);border-top:1px solid rgba(99,102,241,.1);display:flex;justify-content:space-around;align-items:center;flex-shrink:0;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 12px #6366f114;z-index:20;position:fixed;bottom:0;left:0;right:0}.mobile-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-decoration:none;color:#6b7280;gap:3px;background:none;border:none;padding:0;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative}.mobile-nav-item:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:0;height:3px;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:0 0 3px 3px;transition:width .3s cubic-bezier(.4,0,.2,1)}.mobile-nav-item.active{color:#6366f1}.mobile-nav-item.active:before{width:40px}.mobile-nav-item .icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;height:26px;width:26px;transition:all .25s cubic-bezier(.4,0,.2,1)}.mobile-nav-item.active .icon-wrapper{transform:translateY(-3px) scale(1.1);filter:drop-shadow(0 2px 4px rgba(99,102,241,.3))}.mobile-nav-item:active .icon-wrapper{transform:scale(.9)}.nav-label{font-size:11px;font-weight:600;line-height:1.2;letter-spacing:-.02em;margin-top:2px;transition:all .25s}.mobile-nav-item.active .nav-label{font-weight:700}.mobile-drawer-overlay{position:fixed;inset:0;background:#00000080;z-index:100;display:flex;flex-direction:column;justify-content:flex-end;backdrop-filter:blur(8px);animation:fadeIn .25s ease-out}.mobile-drawer{background:linear-gradient(180deg,#fff,#fafafa);border-radius:20px 20px 0 0;max-height:80vh;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom);animation:slideUp .35s cubic-bezier(.16,1,.3,1);box-shadow:0 -4px 24px #6366f126}.drawer-header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:2px solid rgba(99,102,241,.1);background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:20px 20px 0 0}.drawer-header h3{font-size:18px;font-weight:700;margin:0;line-height:1.4;letter-spacing:-.02em;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.drawer-header button{background:#6366f11a;border:none;padding:8px;margin-right:-8px;cursor:pointer;color:#6366f1;border-radius:8px;transition:all .2s}.drawer-header button:active{background:#6366f133;transform:scale(.95)}.drawer-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:20px;gap:18px;overflow-y:auto}.drawer-item{display:flex;flex-direction:column;align-items:center;gap:10px;text-decoration:none;color:var(--text-main);text-align:center;transition:all .2s}.drawer-item:active{transform:scale(.95)}.drawer-item.active{color:#6366f1}.drawer-icon{width:52px;height:52px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--text-main);transition:all .25s;border:1px solid rgba(99,102,241,.1);box-shadow:0 2px 8px #6366f10f}.drawer-item.active .drawer-icon{background:linear-gradient(135deg,#e0e7ff,#ddd6fe);color:#6366f1;border-color:#6366f14d;box-shadow:0 4px 12px #6366f133;transform:scale(1.05)}.drawer-item span{font-size:13px;line-height:1.3;letter-spacing:-.01em;font-weight:500}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (max-width: 768px){.mobile-layout{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.mobile-content h1{font-size:1.5rem;font-weight:700;line-height:1.3;letter-spacing:-.02em;margin-bottom:.8rem}.mobile-content h2{font-size:1.3rem;font-weight:600;line-height:1.3;letter-spacing:-.02em;margin-bottom:.7rem}.mobile-content h3{font-size:1.15rem;font-weight:600;line-height:1.4;letter-spacing:-.01em;margin-bottom:.6rem}.mobile-content p{font-size:.95rem;line-height:1.6;letter-spacing:0;margin-bottom:.8rem}.mobile-content button,.mobile-content .btn{font-size:.9rem;font-weight:500;letter-spacing:-.01em}.mobile-content input,.mobile-content textarea,.mobile-content select{font-size:15px;line-height:1.5}.mobile-content label,.mobile-content .label{font-size:.85rem;font-weight:500;line-height:1.4;letter-spacing:-.01em}.mobile-content small,.mobile-content .hint,.mobile-content .caption{font-size:.8rem;line-height:1.4;letter-spacing:0}}@media (max-width: 375px){.mobile-title{font-size:15px}.nav-label{font-size:9px}.drawer-item span{font-size:11px}}.gb-download-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;align-items:center;justify-content:center;padding:20px;position:relative;overflow:hidden}.gb-download-page:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:float 20s ease-in-out infinite}.gb-download-page:after{content:"";position:absolute;bottom:-50%;left:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%);animation:float 25s ease-in-out infinite reverse}@keyframes float{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}.gb-download-container{max-width:600px;width:100%;position:relative;z-index:1}.gb-download-loading,.gb-download-error{background:#fff;border-radius:16px;padding:40px;text-align:center;box-shadow:0 10px 40px #0003}.gb-download-error h2{margin:0 0 20px;color:#e53e3e}.gb-download-error button{padding:12px 24px;background:#667eea;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:16px;transition:all .3s}.gb-download-error button:hover{background:#5568d3;transform:translateY(-2px)}.gb-download-card{background:#fff;border-radius:20px;padding:36px;text-align:center;box-shadow:0 20px 60px #0000004d;margin-bottom:24px;animation:slideDown .6s cubic-bezier(.34,1.56,.64,1);border:1px solid rgba(255,255,255,.3)}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.gb-download-icon{font-size:48px;margin-bottom:16px}.gb-download-title{font-size:24px;font-weight:700;color:#2d3748;margin:0 0 12px}.gb-download-subtitle{font-size:16px;color:#718096;margin:0 0 20px;line-height:1.6}.gb-download-meta{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:14px;color:#a0aec0}.gb-download-countdown{background:#fff;border-radius:16px;padding:40px;text-align:center;box-shadow:0 10px 40px #0003;margin-bottom:24px;animation:slideUp .5s ease-out .4s both}.gb-countdown-circle{position:relative;width:120px;height:120px;margin:0 auto 24px}.gb-countdown-svg{width:100%;height:100%;transform:rotate(-90deg)}.gb-countdown-bg{fill:none;stroke:#e2e8f0;stroke-width:8}.gb-countdown-progress{fill:none;stroke:#667eea;stroke-width:8;stroke-linecap:round;transition:stroke-dasharray 1s linear}.gb-countdown-number{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;font-weight:700;color:#667eea;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.1)}}.gb-countdown-text{font-size:18px;font-weight:600;color:#2d3748;margin:0 0 8px}.gb-countdown-source{font-size:14px;color:#718096;margin:0}.gb-download-ad{margin-bottom:24px;animation:slideUp .5s ease-out .2s both;min-height:280px;background:#fff;border-radius:20px;padding:24px;box-shadow:0 20px 60px #0000004d;display:flex;align-items:center;justify-content:center;border:4px solid #e53e3e;position:relative;overflow:hidden}.gb-download-ad:before{content:"广告位";position:absolute;top:12px;right:12px;background:#e53e3e;color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.gb-download-tips{background:#fff;border-radius:16px;padding:24px;box-shadow:0 10px 40px #0003;margin-bottom:24px;animation:slideUp .5s ease-out .6s both}.gb-download-tips h3{font-size:18px;font-weight:600;color:#2d3748;margin:0 0 16px}.gb-download-tips ul{margin:0;padding-left:24px;color:#718096;line-height:1.8}.gb-download-tips li{margin-bottom:8px}.gb-download-actions{display:flex;gap:12px;animation:fadeIn .5s ease-out;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.gb-download-btn{flex:1;padding:16px;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s}.gb-download-btn:disabled{opacity:.6;cursor:not-allowed}.gb-download-btn.primary{background:#667eea;color:#fff}.gb-download-btn.primary:hover:not(:disabled){background:#5568d3;transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.gb-download-btn.secondary{background:#fff;color:#667eea;border:2px solid #667eea}.gb-download-btn.secondary:hover{background:#f7fafc;transform:translateY(-2px)}@media (max-width: 768px){.gb-download-page{padding:16px}.gb-download-card{padding:24px}.gb-download-title{font-size:20px}.gb-download-subtitle{font-size:14px}.gb-download-meta{flex-direction:column;gap:8px}.gb-download-countdown{padding:32px 24px}.gb-countdown-circle{width:100px;height:100px}.gb-countdown-number{font-size:40px}.gb-download-tips{padding:20px}.gb-download-actions{flex-direction:column}}.gb-page{min-height:100vh;background:linear-gradient(180deg,#f8fafc,#edf2f7);padding:40px 20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.gb-container{max-width:1200px;margin:0 auto}.gb-header{margin-bottom:32px;text-align:center}.gb-title{color:#2d3748;font-size:30px;font-weight:700;letter-spacing:-.5px}.gb-card{background:#fff;border-radius:12px;padding:32px;box-shadow:0 10px 15px -3px #0000000d,0 4px 6px -2px #00000006;min-height:600px;border:1px solid #e2e8f0;position:relative;overflow:hidden}.gb-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2b6cb0,#4299e1)}.gb-search-bar{display:flex;gap:12px;margin-bottom:20px;max-width:800px;margin-left:auto;margin-right:auto}.gb-search-bar input{flex:1;padding:12px 20px;border:2px solid #edf2f7;border-radius:10px;font-size:16px;outline:none;transition:all .2s;background:#fff}.gb-search-bar input:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.gb-search-btn{padding:12px 32px;background:#2b6cb0;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 6px #2b6cb033}.gb-search-btn:hover{background:#2c5282;transform:translateY(-1px)}.gb-clear-btn{padding:12px 20px;background:#fff;color:#718096;border:2px solid #e2e8f0;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.gb-clear-btn:hover{border-color:#cbd5e0;color:#4a5568}.gb-filters{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:16px;background:#f7fafc;border-radius:8px;border:1px solid #edf2f7}.gb-filter-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gb-filter-label{font-size:14px;color:#718096;font-weight:600;white-space:nowrap}.gb-filter-tag{padding:4px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;font-size:13px;color:#4a5568;cursor:pointer;transition:all .2s;font-weight:500}.gb-filter-tag:hover{border-color:#bee3f8;color:#2b6cb0;background:#ebf8ff}.gb-filter-tag.active{border-color:#bee3f8;color:#2b6cb0;background:#ebf8ff;font-weight:600}.gb-browse-section{padding:8px 0}.gb-browse-header{display:flex;align-items:baseline;gap:16px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #edf2f7}.gb-browse-title{font-size:20px;font-weight:700;color:#2d3748;margin:0}.gb-browse-subtitle{font-size:14px;color:#a0aec0}.gb-ics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gb-ics-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:20px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.gb-ics-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:#2b6cb0;opacity:0;transition:opacity .2s}.gb-ics-card:hover{border-color:#bee3f8;box-shadow:0 4px 12px #2b6cb01f;transform:translateY(-2px)}.gb-ics-card:hover:before{opacity:1}.gb-ics-card-code{font-family:Consolas,Monaco,monospace;font-size:22px;font-weight:700;color:#2b6cb0;margin-bottom:8px}.gb-ics-card-name{font-size:14px;font-weight:500;color:#2d3748;line-height:1.5;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:42px}.gb-ics-card-count{font-size:13px;color:#718096;background:#f7fafc;display:inline-block;padding:2px 10px;border-radius:12px;border:1px solid #edf2f7}.gb-filter-hint{font-size:13px;color:#a0aec0;font-style:italic}.gb-stats-bar{font-size:13px;color:#718096;margin-bottom:12px;text-align:right}.gb-highlight{color:#2b6cb0;font-weight:700;background:#4299e11a;padding:0 2px;border-radius:2px}.gb-list{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#fff}.gb-item{padding:16px 24px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:all .15s}.gb-item:last-child{border-bottom:none}.gb-item:hover{background:#f8fafc}.gb-item-main{display:flex;align-items:center;gap:16px}.gb-std-code{font-family:Consolas,Monaco,monospace;font-size:14px;color:#2b6cb0;background:#ebf8ff;padding:4px 12px;border-radius:6px;min-width:140px;text-align:center;font-weight:600;white-space:nowrap}.gb-std-name{flex:1;font-size:15px;font-weight:500;color:#2d3748;line-height:1.4}.gb-status-tag{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600;border:1px solid;white-space:nowrap}.gb-item-meta{display:flex;gap:16px;font-size:13px;color:#718096;margin-top:8px;padding-left:156px;align-items:center}.gb-type-tag{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600}.gb-type-tag.mandatory{background:#fff5f5;color:#c53030;border:1px solid #fed7d7}.gb-type-tag.recommended{background:#ebf8ff;color:#2b6cb0;border:1px solid #bee3f8}.gb-date{color:#a0aec0;font-size:12px}.gb-ics-info{color:#718096;font-size:12px;background:#f7fafc;padding:2px 8px;border-radius:4px;border:1px solid #edf2f7}.gb-detail-panel{background:#f8fafc;margin:0;border-bottom:1px solid #e2e8f0;overflow:hidden}.gb-detail-header{padding:10px 24px;background:#f1f5f9;color:#4a5568;font-size:13px;font-weight:600;border-bottom:1px solid #e2e8f0}.gb-detail-content{padding:20px 24px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.gb-detail-row{padding:12px;background:#fff;border-radius:6px;border:1px solid #e2e8f0;display:flex;flex-direction:column}.gb-detail-row.full-width{grid-column:1 / -1}.gb-detail-row label{font-size:12px;color:#718096;margin-bottom:4px;font-weight:600}.gb-detail-row span,.gb-detail-row a{color:#2d3748;font-size:14px;line-height:1.5}.gb-en-name{font-style:italic;color:#718096!important}.gb-link{color:#2b6cb0!important;text-decoration:none;font-weight:500}.gb-link:hover{text-decoration:underline}.gb-pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:24px;flex-wrap:wrap}.gb-page-btn{padding:8px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#4a5568;cursor:pointer;transition:all .15s;font-weight:500}.gb-page-btn:hover:not(:disabled){border-color:#bee3f8;color:#2b6cb0;background:#ebf8ff}.gb-page-btn.active{background:#2b6cb0;color:#fff;border-color:#2b6cb0}.gb-page-btn:disabled{opacity:.4;cursor:not-allowed}.gb-page-ellipsis{color:#a0aec0;padding:0 4px}.gb-loading{text-align:center;padding:60px 20px;color:#718096;font-size:16px}.gb-empty{text-align:center;padding:60px 20px;color:#a0aec0;font-size:16px}.gb-footer{text-align:center;color:#a0aec0;font-size:13px;margin-top:40px;border-top:1px solid #edf2f7;padding-top:20px;display:flex;justify-content:center;gap:24px}.gb-modal-overlay{position:fixed;inset:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;animation:gb-fade-in .2s ease}@keyframes gb-fade-in{0%{opacity:0}to{opacity:1}}@keyframes gb-slide-up{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.gb-modal{background:#fff;border-radius:14px;width:100%;max-width:680px;max-height:85vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;position:relative;animation:gb-slide-up .25s ease}.gb-modal-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border:none;background:#f7fafc;border-radius:50%;font-size:22px;color:#718096;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;z-index:1;line-height:1}.gb-modal-close:hover{background:#edf2f7;color:#2d3748}.gb-modal-top{padding:24px 28px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid #edf2f7}.gb-modal-code{font-family:Consolas,Monaco,monospace;font-size:18px;font-weight:700;color:#2b6cb0;background:#ebf8ff;padding:6px 16px;border-radius:8px}.gb-modal-body{padding:24px 28px}.gb-modal-title{font-size:20px;font-weight:700;color:#1a202c;line-height:1.5;margin:0 0 8px}.gb-modal-title-en{font-size:14px;color:#718096;font-style:italic;line-height:1.6;margin:0 0 24px}.gb-modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.gb-modal-field{padding:14px;background:#f7fafc;border-radius:8px;border:1px solid #edf2f7}.gb-modal-field.full-width{grid-column:1 / -1}.gb-modal-field label{display:block;font-size:12px;color:#718096;font-weight:600;margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.gb-modal-field span{font-size:15px;color:#2d3748;line-height:1.5}.gb-modal-footer{padding:16px 28px 24px;border-top:1px solid #edf2f7}.gb-download-section{display:flex;flex-direction:column;gap:12px;width:100%}.gb-download-btn-full{width:100%}.gb-modal-actions{display:flex;gap:12px;margin-bottom:12px}.gb-modal-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:10px;font-size:15px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .2s;flex:1;justify-content:center}.gb-modal-btn-primary{background:#2b6cb0;color:#fff;box-shadow:0 4px 6px #2b6cb033}.gb-modal-btn-primary:hover{background:#2c5282;transform:translateY(-1px);box-shadow:0 6px 12px #2b6cb04d}.gb-modal-btn-secondary{background:#fff;color:#2b6cb0;border:2px solid #bee3f8}.gb-modal-btn-secondary:hover{background:#ebf8ff;border-color:#90cdf4}.gb-modal-btn-icon{font-size:18px}.gb-modal-footer-hint{font-size:12px;color:#a0aec0;text-align:center;margin:0;line-height:1.5}@media (max-width: 768px){.gb-page{padding:0;background:#fff}.gb-container{padding:0}.gb-header{display:none}.gb-card{padding:0;border:none;border-radius:0;box-shadow:none}.gb-card:before{display:none}.gb-search-bar{padding:12px 16px;background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 10px #0000000d;margin-bottom:0;gap:8px}.gb-search-bar input{background:#f3f4f6;border:none;border-radius:6px;padding:8px 12px;font-size:14px;height:36px}.gb-search-btn{padding:0 16px;height:36px;border-radius:6px;font-size:14px}.gb-clear-btn{display:none}.gb-filters{margin:0;border-radius:0;border:none;border-bottom:1px solid #f3f4f6;padding:10px 16px;gap:8px;flex-direction:column}.gb-filter-group{gap:6px}.gb-filter-label{font-size:12px}.gb-filter-tag{font-size:12px;padding:3px 10px}.gb-browse-section{padding:0 16px 16px}.gb-browse-header{flex-direction:column;gap:4px;margin-bottom:16px;padding-bottom:12px}.gb-browse-title{font-size:17px}.gb-browse-subtitle{font-size:12px}.gb-ics-grid{grid-template-columns:repeat(2,1fr);gap:10px}.gb-ics-card{padding:14px;border-radius:8px}.gb-ics-card:before{display:none}.gb-ics-card-code{font-size:18px;margin-bottom:4px}.gb-ics-card-name{font-size:13px;margin-bottom:8px;min-height:39px}.gb-ics-card-count{font-size:12px}.gb-stats-bar{padding:8px 16px;margin:0;background:#f9fafb;text-align:left;font-size:12px}.gb-list{border:none;border-radius:0}.gb-item{padding:14px 16px}.gb-item.expanded{border-left:none;padding-left:16px;background:#f0f9ff}.gb-item-main{flex-direction:column;align-items:flex-start;gap:6px}.gb-std-name{font-size:15px;color:#111827;width:100%}.gb-std-code{font-size:13px;color:#6b7280;background:transparent;padding:0;min-width:auto;text-align:left;font-family:-apple-system,sans-serif}.gb-item-meta{padding-left:0;margin-top:6px;gap:8px;flex-wrap:wrap}.gb-detail-panel{margin:0}.gb-detail-content{padding:12px;grid-template-columns:1fr;gap:8px}.gb-detail-row{padding:10px;border:none;background:#f9fafb}.gb-detail-row label{font-size:11px}.gb-pagination{padding:16px;gap:4px}.gb-page-btn{padding:6px 12px;font-size:13px}.gb-modal-overlay{padding:0;align-items:flex-end}.gb-modal{max-width:100%;max-height:88vh;border-radius:16px 16px 0 0;animation:gb-slide-up-mobile .3s ease}@keyframes gb-slide-up-mobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.gb-modal-top{padding:8px 12px 6px}.gb-modal-code{font-size:13px;padding:2px 6px}.gb-modal-body{padding:6px 12px}.gb-modal-title{font-size:14px;margin-bottom:3px}.gb-modal-title-en{font-size:11px;margin-bottom:6px}.gb-modal-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;grid-template-rows:repeat(3,auto)!important;grid-auto-flow:column!important;gap:3px 6px}.gb-modal-field{padding:6px}.gb-modal-field.full-width{grid-column:auto!important}.gb-modal-field label{font-size:9px;margin-bottom:1px}.gb-modal-field span{font-size:12px}.gb-modal-footer{padding:6px 12px 12px}.gb-download-section{gap:8px}.gb-modal-actions{flex-direction:column;gap:6px}.gb-modal-btn{padding:8px 14px;font-size:13px}.gb-modal-footer-hint{font-size:10px}.gb-footer{padding-bottom:40px;flex-direction:column;gap:8px}}.gb-request-form{width:100%;display:flex;flex-direction:column;gap:16px}.gb-request-hint{color:#4a5568;font-size:14px;line-height:1.6;margin:0;padding:12px;background:#f7fafc;border-radius:8px;border-left:3px solid #4299e1}.gb-request-input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:15px;transition:all .2s;outline:none}.gb-request-input:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.gb-request-input:disabled{background:#f7fafc;cursor:not-allowed}.gb-request-message{padding:10px 14px;border-radius:6px;font-size:14px;margin:0}.gb-request-message.success{background:#f0fff4;color:#22543d;border:1px solid #c6f6d5}.gb-request-message.error{background:#fff5f5;color:#742a2a;border:1px solid #fed7d7}.gb-request-actions{display:flex;gap:12px;justify-content:flex-end}.gb-request-actions .gb-modal-btn{flex:0 0 auto;min-width:100px}.file-upload-area{border:2px dashed #d1d5db;border-radius:12px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .3s ease;background:#f9fafb;min-height:200px;display:flex;align-items:center;justify-content:center}.file-upload-area:hover{border-color:#667eea;background:#f0f4ff}.file-upload-area.drag-over{border-color:#667eea;background:#e0e7ff;transform:scale(1.02)}.file-upload-area.disabled{opacity:.5;cursor:not-allowed;background:#f3f4f6}.file-upload-area.disabled:hover{border-color:#d1d5db;background:#f3f4f6;transform:none}.upload-content{max-width:400px;width:100%;text-align:center}.upload-icon{font-size:3rem;margin:0 auto 16px;opacity:.7;display:flex;align-items:center;justify-content:center;width:100%;height:auto}.upload-title{font-size:1.25rem;font-weight:600;color:#374151;margin:0 0 8px}.upload-description{font-size:1rem;color:#6b7280;margin:0 0 16px;line-height:1.5}.upload-hint{font-size:.9rem;color:#667eea;font-weight:500;margin-bottom:8px}.upload-limit{font-size:.8rem;color:#9ca3af}@media (max-width: 768px){.file-upload-area{padding:30px 15px;min-height:160px}.upload-icon{font-size:2.5rem}.upload-title{font-size:1.1rem}.upload-description{font-size:.9rem}.upload-hint{font-size:.8rem}.upload-limit{font-size:.75rem}}.invoice-stamp-page{padding:20px;max-width:1000px;margin:0 auto;-webkit-overflow-scrolling:touch}@media (max-width: 768px){.invoice-stamp-page{padding:12px 12px 30px}}.invoice-header{margin-bottom:24px}.invoice-header h1{font-size:24px;color:#1a202c;margin:0 0 8px;font-weight:600}.invoice-header p{color:#718096;margin:0;font-size:14px}.invoice-card{background:#fff;padding:30px;border-radius:12px;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0;margin-bottom:24px}.btn-group{display:flex;gap:12px;margin-top:24px}.start-btn{flex:1;padding:14px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;font-size:16px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.start-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.start-btn:disabled{background:#cbd5e0;cursor:not-allowed;transform:none}.download-all-btn{padding:14px 24px;font-size:16px;background:#10b981;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px}.download-all-btn:hover:not(:disabled){background:#059669}.download-all-btn:disabled{background:#cbd5e0;cursor:not-allowed}.log-section{margin-top:24px}.log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:500;color:#4a5568;font-size:14px}.log-view{padding:16px;background:#1a202c;color:#48bb78;border-radius:8px;height:200px;overflow-y:auto;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px;line-height:1.6}.log-view::-webkit-scrollbar{width:6px}.log-view::-webkit-scrollbar-thumb{background:#4a5568;border-radius:3px}.log-item{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #2d3748;padding:8px 0}.log-item:last-child{border-bottom:none}.log-item .info{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:10px}.log-item .actions{display:flex;gap:8px;flex-shrink:0}.log-action-btn{color:#63b3ed;cursor:pointer;text-decoration:none;padding:2px 8px;background:#63b3ed1a;border:none;border-radius:4px;font-size:11px;transition:all .2s}.log-action-btn:hover{background:#63b3ed33}.log-action-btn.download{color:#68d391;background:#68d3911a}.log-action-btn.download:hover{background:#68d39133}.preview-modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.preview-modal{background:#fff;border-radius:12px;width:100%;max-width:900px;height:85vh;display:flex;flex-direction:column;overflow:hidden}.preview-header{padding:16px 20px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.preview-header h3{margin:0;font-size:16px;color:#2d3748}.close-preview-btn{background:transparent;border:none;font-size:24px;color:#a0aec0;cursor:pointer;padding:0;line-height:1}.close-preview-btn:hover{color:#4a5568}.preview-content{flex:1;background:#718096;padding:20px;overflow:hidden}.preview-content iframe{width:100%;height:100%;border:none;background:#fff;border-radius:4px}.pdf-mobile-view{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;padding:30px 20px;text-align:center;background:#fff;border-radius:4px}.pdf-mobile-icon{font-size:64px;margin-bottom:8px}.pdf-mobile-view h4{margin:0;font-size:16px;color:#2d3748;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 10px}.pdf-mobile-view p{color:#4a5568;font-size:14px;margin:0;line-height:1.5}.pdf-mobile-hint{color:#a0aec0!important;font-size:13px!important}.download-mobile-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#3b82f6;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:15px;transition:all .2s;margin-top:8px;border:none;cursor:pointer}.download-mobile-btn:hover{background:#2563eb;transform:translateY(-1px)}.download-mobile-btn:active{transform:translateY(0)}.try-preview-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;background:transparent;color:#3b82f6;text-decoration:none;border:1px solid #3b82f6;border-radius:8px;font-weight:500;font-size:14px;transition:all .2s;cursor:pointer}.try-preview-btn:hover{background:#eff6ff}.try-preview-btn:active{background:#dbeafe}.invoice-footer{text-align:center;color:#a0aec0;font-size:12px;margin-top:40px}@media (max-width: 768px){.invoice-stamp-page{padding:12px}.invoice-header{margin-bottom:16px;padding:18px 16px;background:linear-gradient(135deg,#6366f1,#8b5cf6,#a855f7);border-radius:16px;box-shadow:0 8px 24px #6366f140}.invoice-header h1{font-size:20px;margin-bottom:6px;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.1)}.invoice-header p{font-size:13px;color:#fffffff2}.invoice-card{padding:18px;margin-bottom:16px;background:linear-gradient(135deg,#fff,#fafafa);border:1.5px solid rgba(99,102,241,.15);box-shadow:0 4px 16px #6366f11a;border-radius:16px}.btn-group{flex-direction:column;gap:12px;margin-top:18px}.start-btn{width:100%;padding:14px;font-size:15px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;font-weight:700;box-shadow:0 4px 12px #6366f14d;transition:all .25s cubic-bezier(.4,0,.2,1)}.start-btn:hover:not(:disabled){background:linear-gradient(135deg,#5558e3,#7c4ee8);transform:translateY(-2px);box-shadow:0 6px 16px #6366f166}.start-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #6366f14d}.start-btn:disabled{background:linear-gradient(135deg,#cbd5e0,#a0aec0);box-shadow:none}.download-all-btn{width:100%;padding:14px;font-size:15px;background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;font-weight:700;box-shadow:0 4px 12px #10b9814d;transition:all .25s cubic-bezier(.4,0,.2,1)}.download-all-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 16px #10b98166}.download-all-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #10b9814d}.download-all-btn:disabled{background:linear-gradient(135deg,#cbd5e0,#a0aec0);box-shadow:none}.log-section{margin-top:18px}.log-header{font-size:14px;margin-bottom:12px;font-weight:700;color:#6366f1}.log-view{height:160px;font-size:12px;padding:14px;background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:12px;border:1.5px solid rgba(99,102,241,.2);box-shadow:0 4px 12px #0003}.log-item{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 0;border-bottom:1px solid rgba(99,102,241,.1)}.log-item .info{white-space:normal;word-break:break-word;padding-right:0;color:#a5f3fc}.log-item .actions{width:100%;justify-content:flex-start;gap:10px}.log-action-btn{font-size:12px;padding:6px 12px;border-radius:8px;font-weight:600;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;min-width:60px;line-height:1.4}.log-action-btn{background:#63b3ed26;border:1px solid rgba(99,179,237,.3);color:#63b3ed}.log-action-btn:active{transform:scale(.95)}.log-action-btn.download{background:#68d39126;border:1px solid rgba(104,211,145,.3);color:#68d391}.preview-modal{width:100%;height:92vh;border-radius:20px 20px 0 0;margin:0;box-shadow:0 -8px 32px #0000004d}.preview-modal-overlay{padding:0;align-items:flex-end;background:#000000b3;backdrop-filter:blur(8px)}.preview-header{padding:16px 18px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-bottom:none}.preview-header h3{font-size:16px;color:#fff;font-weight:700}.close-preview-btn{font-size:22px;color:#fff;background:#fff3;border-radius:8px;padding:6px;transition:all .2s}.close-preview-btn:hover{background:#ffffff4d}.close-preview-btn:active{transform:scale(.95)}.preview-content{padding:14px;background:#f8f9fa}.pdf-mobile-view{padding:32px 20px;background:linear-gradient(135deg,#fff,#fafafa);border-radius:12px;border:1.5px solid rgba(99,102,241,.15);box-shadow:0 4px 16px #6366f11a}.pdf-mobile-icon{font-size:72px;filter:drop-shadow(0 4px 8px rgba(99,102,241,.2))}.pdf-mobile-view h4{font-size:17px;color:#1e293b;font-weight:700}.pdf-mobile-view p{font-size:14px;color:#64748b;line-height:1.6}.download-mobile-btn{padding:16px 32px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;font-size:16px;font-weight:700;box-shadow:0 4px 12px #6366f14d;margin-top:12px;transition:all .25s cubic-bezier(.4,0,.2,1)}.download-mobile-btn:hover{background:linear-gradient(135deg,#5558e3,#7c4ee8);transform:translateY(-2px);box-shadow:0 6px 16px #6366f166}.download-mobile-btn:active{transform:translateY(0);box-shadow:0 2px 8px #6366f14d}.try-preview-btn{padding:14px 28px;border:1.5px solid #6366f1;border-radius:12px;font-size:15px;font-weight:600;color:#6366f1;transition:all .25s}.try-preview-btn:hover{background:#6366f114}.try-preview-btn:active{background:#6366f126;transform:scale(.98)}.invoice-footer{font-size:12px;margin-top:28px;line-height:1.6;padding:0 4px;color:#8b5cf6;opacity:.7}}@media (max-width: 480px){.invoice-stamp-page{padding:10px}.invoice-header{padding:16px 14px}.invoice-header h1{font-size:18px}.invoice-header p{font-size:12px}.invoice-card{padding:14px}.start-btn,.download-all-btn{padding:12px;font-size:14px}.log-view{height:140px;font-size:11px;padding:12px}.log-action-btn{font-size:11px;padding:5px 10px;min-width:55px}.download-mobile-btn{padding:14px 28px;font-size:15px}.try-preview-btn{padding:12px 24px;font-size:14px}}.price-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000d;cursor:pointer;transition:all .2s ease;border:2px solid transparent;display:flex;flex-direction:column;gap:12px;min-width:200px}.price-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.price-card.selected{background:#fff;box-shadow:0 4px 12px #0000001a}.card-header{display:flex;align-items:center;gap:12px}.metal-info{display:flex;flex-direction:column}.metal-name{margin:0;font-size:16px;font-weight:600;color:#1f2937}.metal-symbol{font-size:12px;color:#6b7280}.price-main{display:flex;align-items:baseline;gap:4px}.price-value{font-size:24px;font-weight:700;color:#111827;font-family:Roboto Mono,monospace}.price-unit{font-size:12px;color:#6b7280}.price-change{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:500}.price-change.up{color:#10b981}.price-change.down{color:#ef4444}.price-change.flat{color:#6b7280}.price-details{display:flex;gap:12px;font-size:12px;color:#6b7280;padding-top:8px;border-top:1px solid #f3f4f6}.no-data{text-align:center;color:#9ca3af;padding:20px 0;font-size:14px}.card-footer{margin-top:auto;display:flex;justify-content:flex-end}.market-label{font-size:10px;color:#9ca3af;background:#f3f4f6;padding:2px 6px;border-radius:4px}@media (max-width: 768px){.price-card{padding:10px;gap:8px;min-width:auto;border-radius:8px}.card-header{gap:8px}.metal-icon{font-size:20px}.metal-name{font-size:13px}.metal-symbol{font-size:10px}.price-main{gap:3px}.price-value{font-size:18px}.price-unit{font-size:10px}.price-change{font-size:11px;gap:3px}.price-details{gap:8px;font-size:10px;padding-top:6px}.market-label{font-size:9px;padding:1px 4px}}@media (max-width: 480px){.price-card{padding:8px;gap:6px}.card-header{gap:6px}.metal-icon{font-size:18px}.metal-name{font-size:12px}.price-value{font-size:16px}.price-change{font-size:10px}.price-details{gap:6px;font-size:9px;padding-top:4px}}.price-chart-container{position:relative;height:350px;width:100%;background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000d}.price-chart-container.loading,.price-chart-container.empty{display:flex;align-items:center;justify-content:center;background:#f9fafb}.chart-loader,.chart-empty{color:#9ca3af;font-size:14px}@media (max-width: 768px){.price-chart-container{height:250px;padding:12px}}.chart-controls{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:16px;gap:16px}.chart-type-selector{display:flex;gap:8px}.chart-type-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.chart-type-btn:hover:not(:disabled){border-color:#f59e0b;color:#f59e0b;background:#fffbeb}.chart-type-btn.active{border-color:#f59e0b;background:#f59e0b;color:#fff}.chart-type-btn:disabled{opacity:.5;cursor:not-allowed}.chart-options{display:flex;align-items:center;gap:12px}.volume-toggle{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#6b7280;font-size:14px;cursor:pointer;transition:all .2s;user-select:none}.volume-toggle:hover{border-color:#d1d5db;background:#f9fafb}.volume-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer}.volume-toggle input[type=checkbox]:checked{accent-color:#f59e0b}.volume-toggle input[type=checkbox]:disabled{cursor:not-allowed}.chart-actions{display:flex;gap:8px;margin-left:auto}.action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#6b7280;cursor:pointer;transition:all .2s}.action-btn:hover:not(:disabled){border-color:#f59e0b;color:#f59e0b;background:#fffbeb}.action-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.chart-controls{flex-wrap:wrap;padding:10px 12px;gap:12px}.chart-type-selector{flex:1;min-width:100%}.chart-type-btn{flex:1;justify-content:center;padding:10px 12px;font-size:13px}.chart-type-btn span{display:none}.chart-options{flex:1}.volume-toggle{flex:1;justify-content:center;padding:10px 12px}.volume-toggle span{display:none}.chart-actions{margin-left:0}}@media (max-width: 480px){.chart-controls{padding:8px 10px;gap:8px}.chart-type-btn,.volume-toggle,.action-btn{padding:8px 10px}}.enhanced-price-chart{width:100%;background:#fff;border-radius:16px;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;overflow:hidden;border:1px solid #f3f4f6}.chart-container{position:relative;background:#fff;border-radius:0 0 16px 16px;padding:16px 0}.chart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:#6b7280;background:linear-gradient(to bottom,#fafafa,#fff)}.empty-icon{font-size:56px;margin-bottom:20px;opacity:.4;filter:grayscale(100%)}.chart-empty p{margin:6px 0;font-size:16px;font-weight:500;color:#374151}.empty-hint{font-size:14px!important;color:#9ca3af!important;font-weight:400!important}.chart-legend{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:linear-gradient(to bottom,#fafafa,#f9fafb);border-top:1px solid #e5e7eb;font-size:13px}.legend-item{display:flex;align-items:center;gap:8px}.legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px #fffc}.legend-dot.volume-legend{background:linear-gradient(135deg,#10b981 50%,#ef4444 50%)}.legend-text{color:#374151;font-weight:600;font-size:13px}.legend-info{display:flex;align-items:center;gap:12px;color:#6b7280;font-size:12px;margin-left:auto}.data-count,.chart-type-info{padding:5px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-weight:500;color:#374151;box-shadow:0 1px 2px #0000000a}.chart-container.loading{position:relative}.chart-container.loading:before{content:"";position:absolute;inset:0;background:#ffffffe6;z-index:10;backdrop-filter:blur(2px)}.enhanced-price-chart.fullscreen{position:fixed;inset:0;z-index:9999;border-radius:0;box-shadow:none;border:none}.enhanced-price-chart.fullscreen .chart-container{height:calc(100vh - 140px);border-radius:0}@media (max-width: 768px){.enhanced-price-chart{border-radius:12px;box-shadow:0 1px 2px #0000000f}.chart-container{border-radius:0 0 12px 12px;padding:12px 0}.chart-empty{height:300px;padding:20px}.empty-icon{font-size:48px;margin-bottom:16px}.chart-empty p{font-size:15px;text-align:center}.chart-legend{flex-wrap:wrap;gap:10px;padding:12px 16px}.legend-info{flex:1;min-width:100%;justify-content:center;margin-left:0;margin-top:8px}.data-count,.chart-type-info{font-size:11px;padding:4px 8px}}@media (max-width: 480px){.enhanced-price-chart{border-radius:10px;margin:0 -8px}.chart-container{border-radius:0 0 10px 10px;padding:8px 0}.chart-empty{height:250px;padding:16px}.empty-icon{font-size:40px;margin-bottom:12px}.chart-empty p{font-size:14px}.chart-legend{padding:10px 12px;font-size:12px}.legend-dot{width:8px;height:8px}.legend-info{gap:8px}}@media (prefers-color-scheme: dark){.enhanced-price-chart{background:#1f2937;box-shadow:0 1px 3px #0006;border-color:#374151}.chart-container{background:#1f2937}.chart-empty{background:linear-gradient(to bottom,#111827,#1f2937);color:#9ca3af}.chart-empty p{color:#d1d5db}.chart-legend{background:linear-gradient(to bottom,#111827,#1a1f2e);border-top-color:#374151}.legend-text{color:#e5e7eb}.legend-info{color:#9ca3af}.data-count,.chart-type-info{background:#1f2937;border-color:#374151;color:#d1d5db}}.time-range-selector{display:flex;background:#f3f4f6;padding:4px;border-radius:8px;gap:4px}.time-button{flex:1;padding:6px 12px;border:none;background:transparent;border-radius:6px;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.time-button:hover{background:#ffffff80;color:#374151}.time-button.active{background:#fff;color:#2563eb;box-shadow:0 1px 2px #0000000d;font-weight:600}.price-alert-panel{position:relative}.alert-trigger-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.alert-trigger-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.alert-form-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.alert-form-container{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0003;max-width:420px;width:90%;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.alert-form-header{display:flex;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid #e5e7eb;color:#f59e0b}.alert-form-header h3{margin:0;font-size:18px;font-weight:600;color:#1f2937}.alert-form{padding:24px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#374151}.form-select,.form-input{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:all .2s ease;box-sizing:border-box}.current-price-info{background:linear-gradient(135deg,#fef3c7,#fde68a);padding:12px 16px;border-radius:8px;font-size:14px;color:#92400e;margin-bottom:20px}.current-price-info strong{font-size:16px}.condition-buttons{display:flex;gap:12px}.condition-btn{flex:1;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.condition-btn:hover{border-color:#d1d5db}.condition-btn.active.above{border-color:#10b981;background:#ecfdf5;color:#059669}.condition-btn.active.below{border-color:#ef4444;background:#fef2f2;color:#dc2626}.price-input-wrapper{display:flex;align-items:center;border:1px solid #d1d5db;border-radius:8px;overflow:hidden;transition:all .2s ease}.price-input-wrapper:focus-within{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1a}.price-prefix,.price-suffix{padding:12px;background:#f3f4f6;font-size:14px;color:#6b7280}.price-input-wrapper .form-input{border:none;border-radius:0;flex:1}.price-input-wrapper .form-input:focus{box-shadow:none}.form-actions{display:flex;gap:12px;margin-top:24px}.btn-cancel,.btn-submit{flex:1;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-cancel{background:#f3f4f6;border:1px solid #e5e7eb;color:#6b7280}.btn-cancel:hover{background:#e5e7eb}.btn-submit{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;color:#fff}.btn-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.btn-submit:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 480px){.alert-form-container{width:95%;max-width:none;margin:16px}.alert-form{padding:16px}.condition-buttons{flex-direction:column;gap:8px}}.alerts-list{background:#fff;border-radius:12px;overflow:hidden}.alerts-list:not(.compact){box-shadow:0 2px 8px #00000014}.alerts-header{display:flex;align-items:center;gap:10px;padding:16px 20px;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.alerts-header h3{margin:0;font-size:16px;font-weight:600}.no-alerts{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#9ca3af}.no-alerts p{margin:12px 0 0;font-size:14px}.alerts-items{padding:8px}.compact .alerts-items{padding:0}.alert-item{display:flex;align-items:center;gap:16px;padding:12px 16px;border-radius:8px;background:#f9fafb;margin-bottom:8px;transition:all .2s ease}.alert-item:last-child{margin-bottom:0}.alert-item:hover{background:#f3f4f6}.alert-item.triggered{background:#ecfdf5;border:1px solid #a7f3d0}.alert-info{flex:1;display:flex;flex-direction:column;gap:4px}.alert-metal{display:flex;align-items:center;gap:8px}.metal-icon{font-size:16px}.metal-name{font-size:14px;font-weight:600;color:#1f2937}.alert-condition{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280}.icon-above{color:#10b981}.icon-below{color:#ef4444}.target-price{font-weight:600;color:#f59e0b}.alert-status{flex-shrink:0}.status-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500}.status-badge.waiting{background:#fef3c7;color:#d97706}.delete-btn{flex-shrink:0;padding:8px;border:none;background:transparent;color:#9ca3af;border-radius:6px;cursor:pointer;transition:all .2s ease}.delete-btn:hover:not(:disabled){background:#fee2e2;color:#ef4444}.delete-btn:disabled{opacity:.5;cursor:not-allowed}.compact .alert-item{padding:10px 12px;margin-bottom:4px;border-radius:6px}.compact .metal-icon{font-size:14px}.compact .metal-name{font-size:13px}.compact .alert-condition{font-size:12px}@media (max-width: 480px){.alert-item{flex-wrap:wrap;gap:8px}.alert-info{flex:1 0 100%}.alert-status{flex:1}.delete-btn{flex:0 0 auto}}.metal-prices-page{max-width:1200px;margin:0 auto;padding:24px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.header-content h1{margin:0;font-size:28px;font-weight:700;color:#1f2937}.subtitle{margin:4px 0 0;color:#6b7280;font-size:14px}.refresh-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#4b5563;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.refresh-button:hover{background:#f9fafb;color:#1f2937;border-color:#d1d5db}.refresh-button:disabled{opacity:.7;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}.header-actions{display:flex;gap:12px;flex-wrap:wrap}.alert-toggle-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#4b5563;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.alert-toggle-btn:hover,.alert-toggle-btn.active{background:#fef3c7;border-color:#f59e0b;color:#92400e}.alerts-section{margin-bottom:32px}.price-cards-section{margin-bottom:32px;overflow-x:auto;padding-bottom:8px}.price-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.chart-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;margin-bottom:32px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.section-title{margin:0;font-size:18px;font-weight:600;color:#1f2937;display:flex;align-items:baseline;gap:8px}.section-subtitle{font-size:14px;font-weight:400;color:#9ca3af}.statistics-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:32px}.stat-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 1px 3px #0000001a;text-align:center}.stat-label{color:#6b7280;font-size:14px;margin-bottom:8px}.stat-value{color:#1f2937;font-size:24px;font-weight:700;font-family:Roboto Mono,monospace}.history-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;margin-bottom:32px}.history-table{overflow-x:auto}.history-table table{width:100%;border-collapse:collapse}.history-table th{text-align:left;padding:12px;color:#6b7280;font-size:13px;font-weight:600;border-bottom:2px solid #f3f4f6}.history-table td{padding:12px;border-bottom:1px solid #f3f4f6;font-size:14px;color:#374151}.change-up{color:#10b981}.change-down{color:#ef4444}.disclaimer{background:#fdf2f8;border-radius:8px;padding:16px;color:#be185d;font-size:13px}.disclaimer-content p{margin:0 0 8px}.disclaimer-content ul{margin:0;padding-left:20px}.disclaimer-content li{margin-bottom:4px}@media (max-width: 768px){.metal-prices-page{padding:12px}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.header-content h1{font-size:22px}.subtitle{font-size:13px}.refresh-button{align-self:flex-end;padding:6px 12px;font-size:13px}.price-cards-section{margin-bottom:24px}.price-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.chart-section{padding:16px;margin-bottom:24px}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.section-title{font-size:16px}.time-range-selector{width:100%}.statistics-section{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.stat-card{padding:16px}.stat-label{font-size:12px}.stat-value{font-size:20px}.history-section{padding:16px;margin-bottom:24px}.history-table{font-size:13px}.history-table th,.history-table td{padding:8px;font-size:12px}.disclaimer{padding:12px;font-size:12px}}@media (max-width: 480px){.price-cards{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.statistics-section{grid-template-columns:1fr}.section-title{font-size:15px}}@media (max-width: 768px) and (orientation: landscape){.page-header{flex-direction:row;align-items:center}.price-cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid;overflow-x:visible}.statistics-section{grid-template-columns:repeat(4,1fr)}}.stamp-panel{width:100%;max-width:100%;background:#fff;border-left:1px solid #ddd;display:flex;flex-direction:column;overflow-y:auto}.stamp-panel h3{padding:16px;margin:0;border-bottom:1px solid #eee;font-size:16px;color:#333;background:#fafafa;position:sticky;top:0;z-index:1}.stamp-input-section{padding:16px;border-bottom:1px solid #eee;background:#fff}.input-group{margin-bottom:14px}.input-group:last-child{margin-bottom:0}.input-group label{display:block;font-size:13px;color:#666;margin-bottom:6px;font-weight:500}.input-group input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.input-group input:focus{outline:none;border-color:#1890ff;box-shadow:0 0 0 2px #1890ff1a}.stamp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:16px}.stamp-grid-item{display:flex;flex-direction:column;align-items:center;padding:12px;border:2px solid #eee;border-radius:10px;cursor:pointer;transition:all .2s}.stamp-grid-item:hover{border-color:#1890ff;background:#f0f7ff}.stamp-grid-item.selected{border-color:#1890ff;background:#e6f7ff}.stamp-preview-small{width:70px;height:70px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.stamp-preview-small img{max-width:100%;max-height:100%;object-fit:contain}.stamp-label{font-size:13px;color:#333;text-align:center}.stamp-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f5f5f5;border-radius:4px;font-size:14px;color:#999}.stamp-effects-section{padding:16px;border-top:1px solid #eee;background:#fafafa}.stamp-effects-section h4{margin:0 0 12px;font-size:14px;color:#333;font-weight:500}.effect-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.effect-option{display:flex;align-items:center;gap:6px;cursor:pointer;padding:6px 8px;border-radius:4px;transition:background .2s}.effect-option:hover{background:#f0f0f0}.effect-option input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#1890ff}.effect-option span{font-size:13px;color:#333;user-select:none}.apply-effects-btn{width:100%;margin-top:14px;padding:10px 16px;background:linear-gradient(135deg,#1890ff,#096dd9);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px}.apply-effects-btn:hover{background:linear-gradient(135deg,#40a9ff,#1890ff);transform:translateY(-1px);box-shadow:0 4px 12px #1890ff59}.apply-effects-btn:active{transform:translateY(0);box-shadow:0 2px 6px #1890ff40}.stamp-adjust-section{padding:16px;border-top:1px solid #eee;background:#fff}.stamp-adjust-section h4{margin:0 0 16px;font-size:14px;color:#333;font-weight:500}.adjust-group{margin-bottom:20px}.adjust-group:last-child{margin-bottom:0}.adjust-group label{display:block;font-size:13px;color:#666;margin-bottom:10px;font-weight:500}.adjust-group input[type=range]{width:100%;height:6px;border-radius:3px;background:linear-gradient(to right,#e8e8e8,#d0d0d0);outline:none;cursor:pointer;-webkit-appearance:none;appearance:none}.adjust-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#1890ff,#096dd9);cursor:pointer;box-shadow:0 2px 6px #1890ff66;transition:transform .15s ease}.adjust-group input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}.rotation-control{padding:16px 20px;border-top:1px solid #eee}.rotation-control h4{margin:0 0 12px;font-size:14px;color:#333}.rotation-slider{display:flex;align-items:center;gap:12px;margin-bottom:12px}.rotation-slider input[type=range]{flex:1;height:6px}.rotation-slider span{min-width:40px;text-align:right;font-size:14px;color:#666}.rotation-presets{display:flex;gap:8px;margin-top:12px}.rotation-presets button{flex:1;padding:8px 4px;border:1px solid #ddd;border-radius:6px;background:#fafafa;cursor:pointer;font-size:13px;font-weight:500;color:#666;transition:all .2s}.rotation-presets button:hover{border-color:#1890ff;color:#1890ff;background:#f0f7ff}.stamp-tip{padding:12px 20px;background:#f5f5f5;font-size:13px;color:#666;text-align:center;margin-top:auto}.stamp-hover-tooltip{position:fixed;z-index:9999;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000040;padding:16px;pointer-events:none;animation:tooltipFadeIn .15s ease-out}@keyframes tooltipFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.stamp-hover-tooltip img{width:200px;height:200px;object-fit:contain;display:block}@media (max-width: 768px){.stamp-panel{width:100%!important;max-width:100%;max-height:45vh;min-height:200px;border-left:none;border-top:2px solid #ddd;overflow-y:auto;flex-shrink:0}.stamp-panel h3{padding:12px 16px;font-size:14px}.stamp-input-section{padding:12px 16px}.input-group{margin-bottom:10px}.input-group label{font-size:12px;margin-bottom:4px}.input-group input{padding:8px 10px;font-size:13px}.stamp-grid{padding:12px 16px;gap:8px}.stamp-grid-item{padding:8px}.stamp-preview-small{width:50px;height:50px;margin-bottom:6px}.stamp-label{font-size:11px}.stamp-effects-section{padding:12px 16px}.stamp-effects-section h4{font-size:13px;margin-bottom:10px}.effect-options{gap:6px}.effect-option{padding:4px 6px}.effect-option input[type=checkbox]{width:14px;height:14px}.effect-option span{font-size:12px}.apply-effects-btn{padding:8px 14px;font-size:13px;margin-top:10px}.stamp-adjust-section{padding:12px 16px}.stamp-adjust-section h4{font-size:13px;margin-bottom:12px}.adjust-group{margin-bottom:14px}.adjust-group label{font-size:12px;margin-bottom:8px}.rotation-control{padding:12px 16px}.rotation-control h4{font-size:13px;margin-bottom:10px}.rotation-slider span{font-size:12px}.rotation-presets button{padding:6px 4px;font-size:11px}.stamp-tip{padding:10px 16px;font-size:12px}.stamp-hover-tooltip{display:none}}@media (min-width: 769px){.stamp-panel{width:360px;max-width:360px}}@media (max-width: 480px){.stamp-panel{min-height:35vh}.stamp-grid{grid-template-columns:repeat(2,1fr);gap:6px;padding:10px 12px}.stamp-preview-small{width:45px;height:45px}.stamp-label{font-size:10px}.effect-options{grid-template-columns:1fr}}.pdf-toolbar{display:flex;align-items:center;padding:10px 20px;background:#fff;border-bottom:1px solid #e2e8f0;gap:12px;flex-wrap:wrap}.toolbar-group{display:flex;align-items:center;gap:8px}.toolbar-divider{width:1px;height:24px;background:#e2e8f0;margin:0 8px}.tool-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer;font-size:14px;color:#4a5568;transition:all .2s}.tool-btn:hover:not(:disabled){background:#f7fafc;color:#2d3748}.tool-btn:disabled{opacity:.5;cursor:not-allowed;color:#cbd5e0}.icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer;color:#4a5568;transition:all .2s}.icon-btn:hover:not(:disabled){background:#f7fafc;color:#2d3748}.icon-btn:disabled{opacity:.5;cursor:not-allowed;color:#cbd5e0}.zoom-group{margin-left:auto}.zoom-value{min-width:48px;text-align:center;font-size:14px;color:#4a5568;font-variant-numeric:tabular-nums}@media (max-width: 768px){.pdf-toolbar{padding:10px;gap:8px;overflow-x:auto}.tool-btn span{display:none}.tool-btn{padding:8px}.zoom-group{margin-left:0}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.cross-page-modal{background:#fff;border-radius:8px;width:450px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eee}.modal-header h3{margin:0;font-size:18px;color:#333}.close-btn{width:32px;height:32px;border:none;background:none;font-size:24px;color:#999;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px}.close-btn:hover{background:#f5f5f5;color:#333}.modal-body{padding:20px;overflow-y:auto;flex:1}.warning-message{padding:20px;text-align:center;color:#ff4d4f;background:#fff2f0;border-radius:4px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-size:14px;color:#333;font-weight:500}.form-group input[type=text],.form-group input[type=number],.form-group select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-group input:focus,.form-group select:focus{outline:none;border-color:#1890ff}.radio-group{display:flex;gap:20px}.radio-group label{display:flex;align-items:center;gap:6px;font-weight:400;cursor:pointer}.page-range{display:flex;align-items:center;gap:10px}.page-range input{width:80px!important}.page-range span{color:#666}.form-group input[type=range]{width:100%}.stamp-preview-container{width:100%;height:120px;display:flex;align-items:center;justify-content:center;background:#f5f5f5;border-radius:4px;margin-bottom:8px}.stamp-preview-container img{max-width:100px;max-height:100px;object-fit:contain}.no-preset-warning{color:#ff4d4f;font-size:14px;text-align:center}.preview-hint{margin:0;font-size:12px;color:#666;text-align:center}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #eee}.btn-cancel,.btn-apply{padding:8px 20px;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s}.btn-cancel{border:1px solid #ddd;background:#fff;color:#666}.btn-cancel:hover{border-color:#1890ff;color:#1890ff}.btn-apply{border:none;background:#1890ff;color:#fff}.btn-apply:hover:not(:disabled){background:#40a9ff}.btn-apply:disabled{background:#d9d9d9;cursor:not-allowed}.stamp-preview-container{flex-direction:column;gap:10px}.btn-regenerate{padding:6px 12px;border:1px solid #ddd;background:#fff;color:#666;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.btn-regenerate:hover{border-color:#1890ff;color:#1890ff;background:#f0f7ff}@media (max-width: 768px){.cross-page-modal{width:95%;max-width:400px;margin:10px}.modal-header{padding:12px 16px}.modal-header h3{font-size:16px}.modal-body{padding:16px}.form-group{margin-bottom:16px}.form-group label{font-size:13px;margin-bottom:6px}.form-group input[type=text],.form-group input[type=number],.form-group select{padding:8px 10px;font-size:13px}.radio-group{flex-direction:column;gap:10px}.page-range{flex-wrap:wrap;gap:8px}.page-range input{width:60px!important}.stamp-preview-container{height:100px}.stamp-preview-container img{max-width:80px;max-height:80px}.modal-footer{padding:12px 16px;gap:10px}.btn-cancel,.btn-apply{padding:8px 16px;font-size:13px}}@media (max-width: 480px){.cross-page-modal{width:100%;max-width:none;margin:0;border-radius:12px 12px 0 0;max-height:85vh;position:fixed;bottom:0;left:0;right:0}.modal-overlay{align-items:flex-end}.modal-header{padding:14px 16px}.modal-footer{flex-direction:column}.btn-cancel,.btn-apply{width:100%;padding:12px}}.save-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.save-modal{background:#fff;border-radius:16px;padding:28px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.save-modal h2{margin:0 0 24px;font-size:20px;color:#1a1a2e}.save-modal .form-group{margin-bottom:20px}.save-modal .form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#374151}.save-modal .form-group input[type=text]{width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;box-sizing:border-box}.save-modal .form-group input[type=text]:focus{outline:none;border-color:#667eea}.preset-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.preset-btn{display:flex;flex-direction:column;align-items:center;padding:12px 8px;border:2px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer;transition:all .2s}.preset-btn:hover{border-color:#667eea;background:#f8f9ff}.preset-btn.active{border-color:#667eea;background:linear-gradient(135deg,#667eea15,#764ba215)}.preset-icon{font-size:24px;margin-bottom:4px}.preset-name{font-size:13px;font-weight:600;color:#1a1a2e}.preset-desc{font-size:11px;color:#94a3b8;margin-top:2px}.advanced-toggle{padding:10px 0;color:#667eea;font-size:14px;cursor:pointer;user-select:none}.advanced-toggle:hover{color:#764ba2}.advanced-options{background:#f8f9fa;border-radius:10px;padding:16px;margin-bottom:16px}.option-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.option-row:last-child{margin-bottom:0}.option-row label{width:80px;font-size:13px;color:#64748b}.option-row input[type=range]{flex:1;height:6px;-webkit-appearance:none;background:#e2e8f0;border-radius:3px;cursor:pointer}.option-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;background:#667eea;border-radius:50%;cursor:pointer}.option-row span{width:45px;text-align:right;font-size:13px;color:#64748b}.option-row select{flex:1;padding:6px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;cursor:pointer}.scan-notice{background:#fef3c7;color:#92400e;padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:20px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #f1f5f9}.btn-cancel{padding:10px 20px;background:#f1f5f9;color:#64748b;border:none;border-radius:8px;font-size:14px;cursor:pointer}.btn-cancel:hover:not(:disabled){background:#e2e8f0}.btn-save{padding:10px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.btn-save:hover:not(:disabled){filter:brightness(1.05)}.btn-save:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 560px){.save-modal{margin:16px;padding:20px}.preset-buttons{grid-template-columns:repeat(2,1fr)}}.pdf-tool-page{height:100%;display:flex;flex-direction:column}.pdf-tool-workspace{flex:1;display:flex;overflow:hidden}.pdf-viewer-container{flex:1;position:relative;background:#f5f7fa;min-width:0;z-index:1}.pdf-empty-state{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#a0aec0;padding:20px}.pdf-empty-icon{font-size:64px;margin-bottom:20px}.pdf-empty-title{font-size:24px;margin-bottom:10px;color:#4a5568}.pdf-empty-description{margin-bottom:20px;text-align:center}.pdf-open-button{padding:10px 24px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:16px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s}.pdf-open-button:hover{background:#2563eb}@media (max-width: 768px){.pdf-tool-page{display:block;height:auto;overflow-y:auto;background:#fff;-webkit-overflow-scrolling:touch;padding-bottom:80px}.pdf-tool-workspace{display:block;height:auto;overflow:visible}.pdf-viewer-container{display:block;width:100%;height:auto;min-height:60vh;background:#f0f2f5;border-bottom:1px solid #e2e8f0}.pdf-empty-state{min-height:400px;height:auto}.pdf-empty-icon{font-size:48px;margin-bottom:16px}.pdf-empty-title{font-size:20px;margin-bottom:8px}.pdf-empty-description{font-size:14px;margin-bottom:16px}.pdf-open-button{padding:10px 20px;font-size:15px;width:80%;justify-content:center}}@media (max-width: 480px){.pdf-empty-icon{font-size:40px;margin-bottom:12px}.pdf-empty-title{font-size:18px}.pdf-empty-description{font-size:13px}}.processing-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(2px)}.processing-modal{background:#fff;padding:40px;border-radius:12px;text-align:center;min-width:320px;max-width:400px;box-shadow:0 20px 40px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.processing-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.processing-text{font-size:1.1rem;color:#333;margin-bottom:20px;font-weight:500}.progress-bar{width:100%;height:8px;background:#f3f3f3;border-radius:4px;overflow:hidden;margin-bottom:12px}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease;border-radius:4px}.progress-percentage{font-size:.9rem;color:#6b7280;font-weight:500;margin-bottom:20px}.cancel-button{background:#ef4444;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background-color .2s ease}.cancel-button:hover{background:#dc2626}@media (max-width: 480px){.processing-modal{margin:20px;padding:30px 20px;min-width:auto}.processing-text{font-size:1rem}}.simple-pdf-viewer{display:flex;flex-direction:column;height:100%;background:#f1f5f9;width:100%;touch-action:pan-y pinch-zoom}.simple-pdf-toolbar{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px;background:#fff;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;flex-shrink:0;z-index:10}@media (max-width: 600px){.simple-pdf-toolbar{justify-content:center;gap:8px;padding:10px 12px}}.simple-pdf-toolbar button{padding:8px 16px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;cursor:pointer;white-space:nowrap;flex-shrink:0;font-size:14px;min-height:36px;min-width:36px;display:flex;align-items:center;justify-content:center;transition:all .2s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.simple-pdf-toolbar button:disabled{opacity:.5;cursor:not-allowed;background:#f8fafc}.simple-pdf-toolbar button:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.simple-pdf-toolbar button:active:not(:disabled){background:#e2e8f0;transform:scale(.95)}.simple-pdf-toolbar span{font-size:14px;color:#475569;white-space:nowrap;user-select:none}.simple-pdf-toolbar .divider{color:#cbd5e1;font-size:16px;user-select:none}.simple-pdf-canvas-container{flex:1;overflow:auto;display:flex;justify-content:center;align-items:flex-start;padding:24px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;position:relative}@media (max-width: 768px){.simple-pdf-canvas-container{padding:12px;align-items:flex-start}}.simple-pdf-canvas-container canvas{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;background:#fff;max-width:100%;height:auto!important;display:block;touch-action:pan-x pan-y pinch-zoom;user-select:none;-webkit-user-select:none}.simple-pdf-loading,.simple-pdf-error{display:flex;align-items:center;justify-content:center;height:100%;color:#64748b;padding:20px;text-align:center;font-size:14px}.simple-pdf-error{color:#dc2626}@media (max-width: 768px){.simple-pdf-toolbar button{padding:6px 12px;font-size:13px;min-height:40px;min-width:40px}.simple-pdf-toolbar span{font-size:13px}.simple-pdf-toolbar button[title=上一页],.simple-pdf-toolbar button[title=下一页]{font-size:18px;font-weight:700}.simple-pdf-toolbar button[title=缩小],.simple-pdf-toolbar button[title=放大]{font-size:20px;font-weight:700}}@media (max-width: 375px){.simple-pdf-toolbar{gap:6px;padding:8px}.simple-pdf-toolbar button{padding:6px 10px;font-size:12px;min-height:36px;min-width:36px}.simple-pdf-toolbar span{font-size:12px}.simple-pdf-canvas-container{padding:8px}}@media (max-width: 768px) and (orientation: landscape){.simple-pdf-toolbar{padding:6px 12px}.simple-pdf-toolbar button{padding:4px 10px;min-height:32px;min-width:32px}.simple-pdf-canvas-container{padding:8px}}.pdf-preview-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.pdf-preview-modal-content{background:#fff;width:90%;height:90%;border-radius:8px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 4px 6px #0000001a}.pdf-preview-modal-header{padding:16px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.pdf-preview-modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1a202c}.pdf-preview-controls{display:flex;gap:8px}.pdf-preview-controls button{padding:4px 12px;border:1px solid #e2e8f0;background:#fff;border-radius:4px;cursor:pointer;font-size:14px}.pdf-preview-controls button:hover{background:#f7fafc}.pdf-preview-close{background:transparent;border:none;font-size:20px;cursor:pointer;color:#718096}.pdf-preview-close:hover{color:#2d3748}.pdf-preview-body{flex:1;overflow:hidden;background:#f7fafc}.pdf-merger{width:100%}.merger-header{text-align:left;margin-bottom:24px}.merger-header h2{font-size:20px;color:var(--text-main);margin:0 0 4px}.merger-header p{color:var(--text-secondary);margin:0;font-size:14px}.upload-area{border:2px dashed var(--border);border-radius:12px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .2s ease;background:var(--bg-main);min-height:200px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.upload-area:hover{border-color:var(--primary);background:var(--hover);color:var(--primary)}.upload-content h3{font-size:18px;font-weight:600;color:var(--text-main);margin:0 0 8px}.upload-content p{font-size:14px;color:var(--text-secondary);margin:0 0 16px;line-height:1.5}.upload-hint{font-size:14px;color:var(--primary);font-weight:500;margin-bottom:8px}.upload-limit{font-size:12px;color:var(--text-secondary)}.files-section{background:var(--bg-main);border:1px solid var(--border);border-radius:12px;padding:20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h3{font-size:16px;color:var(--text-main);font-weight:600;margin:0}.section-actions{display:flex;gap:8px}.files-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin-top:16px}.file-item{position:relative;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;padding:12px;transition:all .2s;cursor:grab;user-select:none;color:var(--text-main)}.file-item:active{cursor:grabbing}.file-item.dragging{opacity:.5;border-style:dashed;background:var(--hover)}.file-item:hover{border-color:var(--primary);box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-2px);z-index:1}.file-preview{width:100%;aspect-ratio:3/4;background:var(--bg-main);border-radius:4px;margin-bottom:12px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--border)}.file-preview img{width:100%;height:100%;object-fit:contain}.preview-placeholder{font-size:32px;color:var(--border)}.file-info{text-align:center;flex:1;display:flex;flex-direction:column}.file-name{font-size:13px;color:var(--text-main);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.file-details{font-size:11px;color:var(--text-secondary)}.btn-remove{position:absolute;top:8px;right:8px;width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-surface);border:1px solid var(--border);color:#e53e3e;cursor:pointer;transition:all .2s}.merge-section{background:transparent;padding:24px 0;text-align:center}.merge-hint{color:var(--text-secondary);font-size:13px;margin-top:12px}.btn-primary{background:var(--primary);color:#fff;padding:10px 24px;border-radius:6px;font-weight:500;border:none;cursor:pointer}.btn-primary:disabled{opacity:.5;background:var(--border);cursor:not-allowed}.btn-secondary{background:var(--bg-surface);color:var(--text-main);border:1px solid var(--border);padding:6px 16px;border-radius:6px;font-size:13px;cursor:pointer}.pdf-splitter{width:100%}.splitter-header{text-align:left;margin-bottom:24px}.splitter-header h2{font-size:20px;color:#2d3748;margin:0 0 4px}.splitter-header p{color:#718096;margin:0;font-size:14px}.upload-area{border:2px dashed #e2e8f0;border-radius:12px;padding:40px 20px;text-align:center;cursor:pointer;transition:all .2s ease;background:#f8fafc;min-height:200px;display:flex;align-items:center;justify-content:center}.upload-area:hover{border-color:#3b82f6;background:#ebf8ff}.upload-icon{font-size:48px;margin-bottom:16px;opacity:1}.upload-content h3{font-size:18px;font-weight:600;color:#2d3748;margin:0 0 8px}.upload-content p{font-size:14px;color:#718096;margin:0 0 16px;line-height:1.5}.upload-hint{font-size:14px;color:#3b82f6;font-weight:500;margin-bottom:8px}.upload-limit{font-size:12px;color:#a0aec0}.splitter-content{display:flex;flex-direction:column;gap:30px}.document-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.doc-header h3{font-size:16px;color:#2d3748;font-weight:600}.doc-details{font-size:14px;color:#718096}.split-modes h4{font-size:16px;color:#2d3748;margin:0 0 16px;font-weight:600}.mode-option{border:1px solid #e2e8f0}.mode-option:hover{border-color:#3b82f6;background:#f7fafc}.mode-option.active{border-color:#3b82f6;background:#ebf8ff;color:#3b82f6}.fixed-input{background:#f8fafc;border:1px solid #e2e8f0}.fixed-input input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.page-selection{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.selection-header h4{font-size:16px;color:#2d3748;font-weight:600}.range-input-row input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.btn-link{color:#3b82f6}.btn-link:hover{color:#2563eb}.page-item{border:2px solid transparent;box-shadow:0 1px 2px #0000000d;cursor:pointer;border-radius:8px;overflow:hidden;transition:all .2s;background:#fff;padding:10px;display:flex;flex-direction:column;align-items:center;gap:8px}.pages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px;margin-top:20px}.page-preview{width:100%;aspect-ratio:1 / 1.414;background:#f1f5f9;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:4px}.page-preview img{width:100%;height:100%;object-fit:contain}.page-number{font-size:14px;color:#4a5568;font-weight:500}.page-item.selected{border-color:#3b82f6;background:#ebf8ff}.split-section{background:#fff;border:none;padding:20px 0}.btn-primary{background:#3b82f6}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-secondary{background:#fff;color:#4a5568;border:1px solid #cbd5e0}.btn-secondary:hover{background:#f7fafc;border-color:#a0aec0}@media (max-width: 768px){.doc-header{flex-direction:column;align-items:stretch}.mode-options{flex-direction:column}.selection-header{flex-direction:column;align-items:stretch}.pages-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px}.page-preview{width:60px;height:80px}.split-section{padding:20px}.btn-split{width:100%;min-width:auto}}@media (max-width: 480px){.pages-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.page-preview{width:50px;height:65px}}.pdf-to-image{display:flex;flex-direction:column;gap:1.5rem;width:100%}.file-info{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.file-details h3{margin:0 0 .25rem;font-size:16px;color:#2d3748;font-weight:600}.file-details p{margin:0;color:#718096;font-size:14px}.reset-button{padding:.5rem 1rem;background:#fff;color:#4a5568;border:1px solid #cbd5e0;border-radius:6px;cursor:pointer;font-size:14px;transition:background-color .2s}.reset-button:hover{background:#f7fafc;border-color:#a0aec0}.format-button,.dpi-button{padding:.5rem 1rem;border:1px solid #e2e8f0;background:#fff;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s;color:#4a5568}.format-button:hover,.dpi-button:hover{border-color:#3b82f6;background:#f7fafc}.format-button.active,.dpi-button.active{background:#ebf8ff;color:#3b82f6;border-color:#3b82f6}.page-selection{background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0;padding:20px}.selection-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid #e2e8f0;margin-bottom:1rem}.selection-header h3{font-size:16px;color:#2d3748;font-weight:600;margin:0}.selection-controls{display:flex;align-items:center;gap:12px}.selection-controls button{padding:4px 12px;background:#fff;color:#3b82f6;border:1px solid #3b82f6;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.selection-controls button:hover{background:#ebf8ff;border-color:#2563eb;color:#2563eb}.selection-count{font-size:13px;color:#718096;margin-left:8px}.page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.5rem;margin-top:1.5rem}.page-item{border:2px solid transparent;background:#fff;box-shadow:0 1px 2px #0000000d;cursor:pointer;border-radius:8px;overflow:hidden;transition:all .2s;display:flex;flex-direction:column;gap:.5rem;padding:.5rem}.page-item:hover{border-color:#cbd5e0}.page-item.selected{background:#ebf8ff;border-color:#3b82f6}.page-preview{border:1px solid #e2e8f0;background:#fff}.page-item.selected .page-checkbox{background:#3b82f6;border-color:#3b82f6}@media (max-width: 768px){.conversion-settings{flex-direction:column;gap:1rem}.page-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.page-preview{width:120px;height:160px}.selection-header{flex-direction:column;align-items:flex-start;gap:.5rem}.selection-controls{align-self:stretch;justify-content:space-between}.action-buttons{flex-direction:column;align-items:stretch}.file-info{flex-direction:column;align-items:flex-start;gap:1rem}}@media (prefers-color-scheme: dark){.file-info,.conversion-settings{background:#2d3748;border-color:#4a5568}.file-details h3{color:#e2e8f0}.file-details p{color:#a0aec0}.setting-group label{color:#e2e8f0}.format-button,.dpi-button{background:#4a5568;border-color:#718096;color:#e2e8f0}.format-button:hover,.dpi-button:hover{background:#2d3748;border-color:#63b3ed}.page-item:hover{background:#2d3748;border-color:#4a5568}.page-preview{border-color:#4a5568;background:#1a202c}.selection-header{border-color:#4a5568}.selection-header h3{color:#e2e8f0}.selection-count,.page-info span{color:#a0aec0}}.image-to-pdf{display:flex;flex-direction:column;gap:1.5rem;width:100%}.conversion-workspace{display:flex;flex-direction:column;gap:1.5rem}.conversion-settings{display:flex;gap:2rem;padding:1rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.setting-group label{font-weight:500;color:#2d3748;font-size:14px}.size-button,.orientation-button{padding:.5rem 1rem;border:1px solid #e2e8f0;background:#fff;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s;color:#4a5568}.size-button:hover,.orientation-button:hover{border-color:#3b82f6;background:#f7fafc}.size-button.active,.orientation-button.active{background:#ebf8ff;color:#3b82f6;border-color:#3b82f6}.list-header{border-bottom:1px solid #e2e8f0}.list-header h3{font-size:16px;color:#2d3748;font-weight:600}.clear-button{background:#fee2e2;color:#e53e3e}.clear-button:hover{background:#fed7d7}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.5rem;margin-top:1.5rem}.image-item{position:relative;border:1px solid #e2e8f0;background:#fff;box-shadow:0 1px 2px #0000000d;border-radius:8px;overflow:hidden;transition:all .2s;cursor:grab;display:flex;flex-direction:column}.image-item:hover{border-color:#3b82f6;box-shadow:0 4px 6px -1px #3b82f61a}.image-preview{border:1px solid #e2e8f0;background:#f8fafc}.image-name{color:#2d3748}.image-dimensions{color:#718096}.image-order{color:#3b82f6}.drag-hint{color:#718096;background:#f8fafc;border:1px dashed #e2e8f0}.convert-button{background:#3b82f6;color:#fff}.convert-button:hover:not(:disabled){background:#2563eb}.download-button{background:#10b981;color:#fff}.download-button:hover:not(:disabled){background:#059669}.error-message{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:6px;margin-top:1rem}.error-icon{font-size:1.2rem}@media (max-width: 768px){.conversion-settings{flex-direction:column;gap:1rem}.page-size-options,.orientation-options{flex-wrap:wrap}.size-button,.orientation-button{flex:1;min-width:0}.image-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.image-preview{height:120px}.list-header{flex-direction:column;align-items:flex-start;gap:.5rem}.action-buttons{flex-direction:column;align-items:stretch}}@media (prefers-color-scheme: dark){.conversion-settings{background:#2d3748;border-color:#4a5568}.setting-group label{color:#e2e8f0}.size-button,.orientation-button{background:#4a5568;border-color:#718096;color:#e2e8f0}.size-button:hover,.orientation-button:hover{background:#2d3748;border-color:#63b3ed}.list-header{border-color:#4a5568}.list-header h3{color:#e2e8f0}.image-item{background:#2d3748;border-color:#4a5568}.image-item:hover{border-color:#63b3ed}.image-preview{background:#1a202c;border-color:#4a5568}.image-name{color:#e2e8f0}.image-dimensions{color:#a0aec0}.drag-hint{background:#2d3748;border-color:#4a5568;color:#a0aec0}}.context-menu-overlay{position:fixed;inset:0;z-index:999}.context-menu{position:fixed;z-index:1000;background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;padding:4px 0;animation:contextMenuFadeIn .15s ease-out}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{padding:10px 16px;cursor:pointer;font-size:14px;color:#333;display:flex;align-items:center;gap:8px;transition:background-color .15s}.context-menu-item:hover{background:#f0f4ff;color:#007bff}.context-menu-item:first-child{border-radius:6px 6px 0 0}.context-menu-item:last-child{border-radius:0 0 6px 6px}.context-menu-divider{height:1px;background:#e9ecef;margin:4px 0}.rotation-badge{position:absolute;bottom:4px;left:4px;background:#007bffe6;color:#fff;font-size:11px;padding:2px 6px;border-radius:4px;font-weight:500}@media (prefers-color-scheme: dark){.context-menu{background:#2d3748;border-color:#4a5568}.context-menu-item{color:#e2e8f0}.context-menu-item:hover{background:#4a5568;color:#63b3ed}.context-menu-divider{background:#4a5568}}.signature-canvas-container{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px}.signature-canvas{border:2px dashed #d1d5db;border-radius:8px;cursor:crosshair;touch-action:none;background:#fff;max-width:100%}.signature-canvas:hover{border-color:#667eea}.signature-canvas-controls{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.control-btn{display:flex;align-items:center;gap:4px;padding:8px 16px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-size:14px;cursor:pointer;transition:all .2s}.control-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.control-btn:disabled{opacity:.5;cursor:not-allowed}.control-btn.clear-btn:hover:not(:disabled){background:#fef2f2;border-color:#ef4444;color:#ef4444}.control-btn.save-btn:hover:not(:disabled){background:#f0fdf4;border-color:#22c55e;color:#22c55e}.signature-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#9ca3af;font-size:18px;pointer-events:none;user-select:none}@media (max-width: 768px){.signature-canvas-container{width:100%;padding:0 10px;box-sizing:border-box}.signature-canvas{width:100%;height:auto;min-height:150px}.signature-canvas-controls{width:100%}.control-btn{flex:1;min-width:80px;justify-content:center;padding:10px 12px}.signature-placeholder{font-size:16px}}.signature-tool{padding:0}.signature-tool-layout{display:grid;grid-template-columns:350px 1fr;gap:24px;min-height:500px}.signature-create-section,.pdf-preview-section{background:#f8fafc;border-radius:12px;padding:20px;border:1px solid #e2e8f0;box-shadow:none}.signature-create-section h3,.pdf-preview-section h3{margin:0 0 16px;font-size:16px;color:#2d3748;padding-bottom:12px;border-bottom:1px solid #e2e8f0;font-weight:600}.pen-settings{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.setting-group{display:flex;flex-direction:column;gap:8px}.setting-group label{font-size:14px;color:#4a5568;font-weight:500}.color-options{display:flex;gap:8px}.color-btn{width:28px;height:28px;border-radius:50%;border:2px solid white;cursor:pointer;transition:all .2s;box-shadow:0 0 0 1px #e2e8f0}.color-btn:hover{transform:scale(1.1)}.color-btn.active{box-shadow:0 0 0 2px #3b82f6}.width-options{display:flex;gap:8px}.width-btn{width:36px;height:32px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.width-btn:hover{border-color:#3b82f6;background:#f7fafc}.width-btn.active{border-color:#3b82f6;background:#ebf8ff}.saved-signatures{margin-top:24px;border-top:1px solid #e2e8f0;padding-top:20px}.saved-signatures h4{font-size:14px;color:#4a5568;margin:0 0 12px;font-weight:500}.signatures-list{display:flex;flex-wrap:wrap;gap:12px}.saved-signature-item{position:relative;width:100%;height:60px;border:1px solid #e2e8f0;border-radius:8px;padding:8px;cursor:pointer;transition:all .2s;background:#fff;display:flex;align-items:center;justify-content:center}.saved-signature-item:hover{border-color:#3b82f6;box-shadow:0 2px 4px #0000000d}.saved-signature-item.selected{border-color:#3b82f6;background:#ebf8ff}.saved-signature-item img{max-width:100%;max-height:100%;object-fit:contain}.delete-signature-btn{position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;border:none;background:#e53e3e;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;box-shadow:0 1px 2px #0000001a}.saved-signature-item:hover .delete-signature-btn{opacity:1}.pdf-controls{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.pdf-controls button{padding:6px 12px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;transition:all .2s;font-size:14px;color:#4a5568}.pdf-controls button:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0}.change-file-btn{margin-left:auto;color:#3b82f6!important;border-color:#3b82f6!important}.change-file-btn:hover{background:#ebf8ff!important}.pdf-preview-container{border:1px solid #e2e8f0;background:#e2e8f0;display:flex;justify-content:center;align-items:flex-start;overflow:hidden;position:relative}.pdf-page-wrapper{position:relative;display:inline-block;line-height:0;max-width:100%}.pdf-page-image{max-width:100%;height:auto;display:block}.signature-placement{position:absolute;border:2px dashed #3b82f6;background:#3b82f61a;box-sizing:border-box}.signature-placement img{width:100%;height:100%;object-fit:contain;pointer-events:none}.resize-handle{position:absolute;background:#3b82f6;width:10px;height:10px;border-radius:50%;border:1px solid white;z-index:10}.resize-handle.nw{top:-5px;left:-5px;cursor:nw-resize}.resize-handle.ne{top:-5px;right:-5px;cursor:ne-resize}.resize-handle.sw{bottom:-5px;left:-5px;cursor:sw-resize}.resize-handle.se{bottom:-5px;right:-5px;cursor:se-resize}.delete-placement-btn{position:absolute;top:-24px;right:-10px;background:#e53e3e;color:#fff;border:none;border-radius:4px;width:20px;height:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;z-index:11}.signature-actions{margin-top:20px;padding-top:20px;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:16px}.scale-control{display:flex;align-items:center;gap:12px}.scale-control label{font-size:14px;color:#4a5568;font-weight:500}.scale-control input[type=range]{flex:1;max-width:200px}.scale-control span{color:#2d3748;font-size:14px;font-weight:500;min-width:40px}.scale-hint{font-size:12px;color:#718096}.placement-info{display:flex;justify-content:space-between;align-items:center}.placement-count{font-size:13px;color:#4a5568;background:#f7fafc;padding:4px 8px;border-radius:4px}.action-buttons{display:flex;gap:12px;margin-top:8px}.action-buttons button{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.action-buttons button:disabled{opacity:.6;cursor:not-allowed}.place-btn{background:#3b82f6;color:#fff;flex:1;justify-content:center}.place-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 2px 4px #3b82f64d}.clear-btn{background:#fff;color:#4a5568;border:1px solid #e2e8f0!important}.clear-btn:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0!important;color:#e53e3e}.apply-btn{background:#10b981;color:#fff;flex:2;justify-content:center}.apply-btn:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 2px 4px #10b9814d}@media (max-width: 768px){.signature-tool-layout{display:flex;flex-direction:column;grid-template-columns:none;gap:20px;width:100%;overflow-x:hidden}.signature-create-section,.pdf-preview-section{width:100%;max-width:100%;padding:12px;box-sizing:border-box;display:block;overflow-x:hidden}.pdf-preview-container{width:100%;max-width:100%;min-height:300px;overflow:auto;display:flex;justify-content:center;background:#f1f5f9}.pdf-page-wrapper{width:100%;display:flex;justify-content:center;position:relative}.pdf-page-image{width:100%;max-width:100%;height:auto;object-fit:contain}.pdf-controls{flex-direction:column;align-items:stretch;gap:8px}.pdf-controls span{text-align:center;padding:4px 0}.change-file-btn{width:100%;margin-left:0}.action-buttons{flex-direction:column;gap:10px}.action-buttons button{width:100%;padding:12px}.scale-control{flex-direction:column;align-items:stretch}.scale-control input[type=range]{width:100%;max-width:none}}.pdf-toolkit{-webkit-overflow-scrolling:touch}@media (max-width: 768px){.pdf-toolkit{padding:10px 10px 30px}}.toolkit-container{max-width:1200px;margin:0 auto}.toolkit-header{padding:0 0 24px;text-align:left;background:transparent;color:inherit;display:flex;align-items:center;gap:16px}.header-content{flex:1}.toolkit-header h1{font-size:24px;margin:0 0 8px;font-weight:600;color:var(--text-main)}.toolkit-header p{font-size:14px;margin:0;color:var(--text-secondary)}.back-button{display:flex;align-items:center;gap:8px;background:transparent;border:none;color:var(--text-secondary);font-size:16px;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:8px;transition:all .2s}.back-button:hover{background:var(--hover);color:var(--text-main)}.toolkit-dashboard{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;padding-top:10px}.tool-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:24px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:12px}.tool-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:var(--primary)}.tool-icon{font-size:40px;margin-bottom:8px}.tool-card h3{font-size:18px;font-weight:600;color:var(--text-main);margin:0}.tool-card p{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5}.toolkit-tabs{display:flex;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none;background:transparent;margin-bottom:24px}.toolkit-tabs::-webkit-scrollbar{display:none}.tab-button{display:flex;align-items:center;gap:8px;padding:10px 20px;border:1px solid var(--border);border-radius:8px;background:var(--bg-surface);cursor:pointer;transition:all .2s ease;font-size:14px;color:var(--text-secondary);font-weight:500;min-width:auto;white-space:nowrap}.tab-button:hover{border-color:var(--primary);background:var(--hover);color:var(--text-main)}.tab-button.active{background:var(--hover);color:var(--primary);border-color:var(--primary)}.tab-icon{font-size:18px}.tab-name{font-weight:500}.toolkit-main{background:var(--bg-surface);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;border:1px solid var(--border);min-height:400px}.tool-content{max-width:800px;margin:0 auto}.tool-header{text-align:center;margin-bottom:40px}.tool-header h2{font-size:2rem;margin:0 0 10px;color:var(--text-main)}.tool-header p{font-size:1.1rem;color:var(--text-secondary);margin:0}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state .empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-state h3{font-size:1.5rem;margin:0 0 10px;color:var(--text-main)}.empty-state p{font-size:1rem;margin:0}.processing-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.processing-modal{background:var(--bg-surface);padding:40px;border-radius:12px;text-align:center;min-width:300px;box-shadow:0 10px 30px #0000004d;color:var(--text-main)}.processing-spinner{width:40px;height:40px;border:4px solid var(--border);border-top:4px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.processing-text{font-size:1.1rem;color:var(--text-main);margin-bottom:20px}.progress-bar{width:100%;height:8px;background:var(--border);border-radius:4px;overflow:hidden;margin-bottom:10px}.progress-fill{height:100%;background:var(--primary);transition:width .3s ease}.progress-percentage{font-size:.9rem;color:var(--text-secondary)}@media (max-width: 768px){.pdf-toolkit{padding:10px}.toolkit-container{padding:0}.toolkit-header{padding:10px 0 20px;flex-direction:row;gap:12px}.toolkit-header h1{font-size:20px;margin-bottom:4px}.toolkit-header p{font-size:13px;display:none}.back-button{padding:6px 10px;font-size:14px}.tab-button{min-width:100px;padding:10px 12px;font-size:13px}.tab-icon{font-size:18px}.toolkit-main{padding:16px;min-height:300px}.tool-header h2{font-size:20px;margin-bottom:8px}.tool-header p{font-size:14px}.tool-content{max-width:100%}.empty-state{padding:40px 20px}.empty-state .empty-icon{font-size:3rem}.empty-state h3{font-size:18px}.processing-modal{margin:20px;padding:30px}.toolkit-dashboard{grid-template-columns:1fr;gap:16px}.tool-card{padding:20px}.tool-icon{font-size:32px}.tool-card h3{font-size:16px}.tool-card p{font-size:13px}}@media (max-width: 480px){.pdf-toolkit{padding:8px}.toolkit-header h1{font-size:18px}.toolkit-tabs{flex-wrap:nowrap;justify-content:flex-start;gap:8px;padding-bottom:12px;margin-bottom:16px}.tab-button{flex:0 0 auto;min-width:auto;padding:8px 12px;font-size:12px}.tab-icon{font-size:16px}.toolkit-main{padding:12px}.tool-header{margin-bottom:24px}.tool-header h2{font-size:18px}.tool-header p{font-size:13px}.toolkit-dashboard{grid-template-columns:1fr;gap:12px}.tool-card{padding:16px}.tool-icon{font-size:28px;margin-bottom:6px}.tool-card h3{font-size:15px}.tool-card p{font-size:12px}}.qrcode-generator{display:flex;flex-direction:column;background:var(--bg-surface);border-radius:12px;overflow:hidden;border:1px solid var(--border)}.qr-main-tabs{display:flex;background:var(--bg-main);border-bottom:1px solid var(--border);padding:0 12px}.main-tab{padding:16px 24px;border:none;background:transparent;font-size:15px;font-weight:600;color:var(--text-secondary);cursor:pointer;position:relative;transition:all .2s}.main-tab:hover,.main-tab.active{color:var(--primary)}.main-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--primary);border-radius:3px 3px 0 0}.qr-template-bar{display:flex;gap:10px;padding:16px;overflow-x:auto;background:var(--bg-surface);scrollbar-width:none}.qr-template-bar::-webkit-scrollbar{display:none}.qr-template-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px;min-width:70px;border:1px solid var(--border);border-radius:12px;background:var(--bg-surface);color:var(--text-main);cursor:pointer;transition:all .2s}.qr-template-btn:hover{border-color:var(--primary);background:var(--hover)}.qr-template-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 12px #0000001a}.template-icon{font-size:20px}.template-name{font-size:12px;font-weight:500}.qr-main-content{display:grid;grid-template-columns:1fr 360px;min-height:600px}.qr-left-panel{padding:24px;background:var(--bg-main);display:flex;flex-direction:column;gap:20px;overflow-y:auto;max-height:800px}.panel-section{background:var(--bg-surface);border-radius:16px;padding:20px;box-shadow:0 1px 3px #0000000d;border:1px solid var(--border)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:var(--text-main)}.section-title svg{color:var(--primary)}.qr-mode-card{margin-top:16px;background:var(--hover);border:1px solid var(--border);border-radius:12px;padding:16px}.mode-card-info{display:flex;gap:10px;margin-bottom:12px;color:var(--text-secondary);font-size:13px;line-height:1.5}.mode-options{display:flex;gap:12px}.mode-option{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border:2px solid var(--border);border-radius:10px;background:var(--bg-surface);color:var(--text-main);cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.mode-option.active{border-color:var(--primary);background:var(--hover);color:var(--primary)}.qr-textarea{width:100%;padding:14px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-main);border-radius:10px;font-size:15px;line-height:1.6;resize:vertical;min-height:120px;transition:all .2s;box-sizing:border-box}.qr-textarea:focus{outline:none;border-color:var(--primary)}.qr-input{width:100%;padding:12px 14px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-main);border-radius:8px;font-size:14px;transition:all .2s;box-sizing:border-box}.qr-input:focus{outline:none;border-color:var(--primary)}.style-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px}.style-item{display:flex;flex-direction:column;gap:8px}.style-item label{font-size:12px;font-weight:600;color:var(--text-secondary)}.color-picker-wrapper{display:flex;align-items:center;gap:10px;padding:6px;border:1px solid var(--border);background:var(--bg-surface);border-radius:8px}.color-picker-wrapper input[type=color]{width:30px;height:30px;border:none;border-radius:4px;cursor:pointer}.qr-right-panel{padding:24px;border-left:1px solid var(--border);display:flex;flex-direction:column;gap:24px;background:var(--bg-surface)}.sticky-preview{position:sticky;top:24px;display:flex;flex-direction:column;gap:20px}.preview-container{aspect-ratio:1;background:var(--bg-main);border:1px solid var(--border);border-radius:20px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.preview-image{width:80%;height:80%;object-fit:contain;filter:drop-shadow(0 10px 15px rgba(0,0,0,.1))}.preview-placeholder{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-secondary)}.preview-placeholder svg{opacity:.3}.action-group{display:flex;flex-direction:column;gap:12px}.download-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px;border:none;border-radius:12px;background:var(--primary);color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s}.download-btn:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.download-btn:disabled{background:var(--border);color:var(--text-secondary);cursor:not-allowed}.secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action-sub-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface);font-size:14px;font-weight:600;color:var(--text-main);cursor:pointer;transition:all .2s}.action-sub-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--hover)}@media (max-width: 1024px){.qr-main-content{grid-template-columns:1fr}.qr-right-panel{border-left:none;border-top:1px solid var(--border)}.sticky-preview{position:static}}@media (max-width: 768px){.qrcode-generator{border-radius:8px}.qr-main-tabs{padding:0 8px;overflow-x:auto;scrollbar-width:none}.qr-main-tabs::-webkit-scrollbar{display:none}.main-tab{padding:12px 16px;font-size:14px;white-space:nowrap}.qr-template-bar{padding:12px;gap:8px}.qr-template-btn{min-width:60px;padding:10px 8px;border-radius:10px}.template-icon{font-size:18px}.template-name{font-size:11px}.qr-main-content{min-height:auto}.qr-left-panel{padding:16px;gap:16px;max-height:none}.panel-section{padding:16px;border-radius:12px}.section-title{font-size:15px}.qr-mode-card{padding:12px}.mode-card-info{font-size:12px}.mode-options{flex-direction:column;gap:8px}.mode-option{padding:12px;font-size:13px}.qr-textarea{padding:12px;font-size:15px;min-height:100px;border-radius:8px}.qr-input{padding:10px 12px;font-size:15px;border-radius:8px}.style-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px}.style-item label{font-size:11px}.color-picker-wrapper{padding:4px}.color-picker-wrapper input[type=color]{width:28px;height:28px}.qr-right-panel{padding:16px;gap:16px}.preview-container{border-radius:16px}.preview-image{width:85%;height:85%}.download-btn{padding:12px;font-size:15px;border-radius:10px}.secondary-actions{grid-template-columns:1fr 1fr;gap:10px}.action-sub-btn{padding:10px 8px;font-size:13px;border-radius:8px}.form-field{margin-bottom:12px}.form-field label{font-size:13px;margin-bottom:6px;display:block}select.qr-input{font-size:15px;padding:10px 12px}input[type=checkbox],input[type=radio]{min-width:20px;min-height:20px}}@media (max-width: 375px){.qr-left-panel{padding:12px;gap:12px}.panel-section{padding:12px}.section-title{font-size:14px}.qr-template-btn{min-width:55px;padding:8px 6px}.template-icon{font-size:16px}.template-name{font-size:10px}.main-tab{padding:10px 12px;font-size:13px}.qr-right-panel{padding:12px}.download-btn{font-size:14px;padding:10px}.action-sub-btn{font-size:12px;padding:8px 6px}.style-grid{grid-template-columns:1fr 1fr}}.batch-page-container{display:flex;flex-direction:column;height:700px;background:#fff}.batch-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.toolbar-left{display:flex;align-items:center;gap:16px}.toolbar-info{font-size:13px;color:#10b981;font-weight:600;padding:4px 12px;background:#ecfdf5;border-radius:20px}.toolbar-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;font-size:14px;font-weight:600;color:#475569;cursor:pointer;transition:all .2s}.toolbar-btn.primary{background:#3b82f6;color:#fff;border:none}.toolbar-btn.danger{color:#ef4444}.batch-main{display:grid;grid-template-columns:320px 1fr;flex:1;overflow:hidden}.batch-config{padding:20px;background:#f8fafc;border-right:1px solid #e2e8f0;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.batch-preview{display:flex;flex-direction:column;background:#fff;overflow:hidden}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e2e8f0}.preview-title{font-size:15px;font-weight:700;color:#1e293b}.preview-list{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.preview-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.preview-item.done{border-color:#10b981;background:#f0fdf4}.item-num{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border-radius:6px;font-size:12px;font-weight:700;color:#64748b}.item-content{flex:1;min-width:0}.item-text{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1e293b}.item-status .status{font-size:12px;padding:2px 8px;border-radius:4px}.item-qr{width:32px;height:32px;border-radius:4px}.config-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px}.card-title{display:block;font-size:12px;font-weight:700;color:#64748b;margin-bottom:12px;text-transform:uppercase}.field-chips{display:flex;flex-wrap:wrap;gap:6px}.field-chip{padding:4px 10px;background:#eff6ff;color:#3b82f6;border:1px solid #dbeafe;border-radius:6px;font-size:12px;cursor:pointer}.template-input{width:100%;padding:10px;border:1px solid #e2e8f0;border-radius:8px;font-size:13px;resize:none}.params-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.param-field label{display:block;font-size:11px;color:#64748b;margin-bottom:4px}.param-input-group{display:flex;align-items:center;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.param-input-group input{width:100%;padding:6px;border:none;font-size:13px;text-align:center}.param-input-group span{padding:0 6px;background:#f1f5f9;font-size:11px;color:#94a3b8}.empty-hint-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#94a3b8}.empty-hint-card p{margin-top:12px;font-size:14px;color:#64748b}.preview-empty{display:flex;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#94a3b8;font-size:14px}.progress-text{font-size:13px;color:#3b82f6;font-weight:600}@media (max-width: 768px){.batch-page-container{height:auto;min-height:calc(100vh - 200px)}.batch-toolbar{padding:12px;flex-wrap:wrap;gap:8px}.toolbar-left{gap:8px;flex-wrap:wrap}.toolbar-btn{padding:6px 12px;font-size:13px}.toolbar-info{font-size:12px;padding:3px 10px}.batch-main{grid-template-columns:1fr;grid-template-rows:auto 1fr;max-height:none}.batch-config{padding:12px;border-right:none;border-bottom:1px solid #e2e8f0;max-height:none;overflow-y:visible}.batch-preview{min-height:400px}.preview-header{padding:12px;flex-wrap:wrap;gap:8px}.preview-title{font-size:14px}.progress-text{font-size:12px}.preview-list{padding:12px;gap:8px}.preview-item{padding:10px;gap:10px}.item-num{width:20px;height:20px;font-size:11px}.item-text{font-size:12px}.item-qr{width:28px;height:28px}.config-card{padding:12px;border-radius:10px}.card-title{font-size:11px;margin-bottom:10px}.field-chips{gap:4px}.field-chip{padding:3px 8px;font-size:11px}.template-input{padding:8px;font-size:13px}.params-grid{grid-template-columns:1fr;gap:10px}.param-field label{font-size:11px}.param-input-group input{padding:5px;font-size:12px}.param-input-group span{padding:0 5px;font-size:10px}.download-btn,.action-sub-btn{font-size:13px;padding:8px 12px}.mode-options{flex-direction:row;gap:6px}.mode-option{flex:1;justify-content:center;font-size:12px;padding:8px 6px}.empty-hint-card{padding:30px 15px}.empty-hint-card p{font-size:13px}.preview-empty{padding:30px 15px;font-size:13px}.qr-input{font-size:15px;padding:8px 10px}select.qr-input{font-size:15px}}.qrcode-page{max-width:1200px;margin:0 auto}.qrcode-page-header{margin-bottom:30px}.qrcode-page-header h1{font-size:28px;font-weight:700;color:var(--text-main);margin-bottom:8px}.qrcode-page-header p{color:var(--text-secondary);font-size:16px}.qrcode-page-card{background:var(--bg-surface);border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;border:1px solid var(--border)}.qrcode-page-footer{margin-top:40px;padding:24px;background:var(--bg-main);border-radius:12px;border:1px solid var(--border);color:var(--text-secondary);font-size:14px;line-height:1.6}.qrcode-page-footer h3{font-size:16px;font-weight:600;margin-bottom:12px;color:var(--text-main)}.qrcode-page-footer ul{margin:0;padding-left:20px}.qrcode-page-footer li{margin-bottom:8px}.qrcode-page-footer strong{color:var(--text-main)}@media (max-width: 768px){.qrcode-page{padding:0}.qrcode-page-header{margin-bottom:20px}.qrcode-page-header h1{font-size:22px}.qrcode-page-header p{font-size:14px}.qrcode-page-card{border-radius:12px}.qrcode-page-footer{margin-top:30px;padding:16px;border-radius:10px;font-size:13px}.qrcode-page-footer h3{font-size:15px;margin-bottom:10px}.qrcode-page-footer ul{padding-left:16px}.qrcode-page-footer li{margin-bottom:6px}}@media (max-width: 375px){.qrcode-page-header h1{font-size:20px}.qrcode-page-header p{font-size:13px}.qrcode-page-card{border-radius:10px}.qrcode-page-footer{padding:12px;font-size:12px}.qrcode-page-footer h3{font-size:14px}}.shortlink-page{max-width:100%;padding:0}.shortlink-header{margin-bottom:24px}.shortlink-header h1{font-size:24px;margin-bottom:8px;color:var(--text-main)}.shortlink-header p{color:var(--text-secondary);font-size:15px}.shortlink-input-card{background:var(--bg-surface);padding:24px;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:30px}.shortlink-input-wrapper{display:flex;gap:12px;align-items:stretch}.shortlink-input{flex:1;padding:12px 16px;border-radius:8px;border:1px solid var(--border);font-size:16px;outline:none;box-sizing:border-box;background:var(--bg-surface);color:var(--text-main);transition:border-color .2s}.shortlink-input:focus{border-color:var(--primary)}.shortlink-submit-btn{padding:0 24px;cursor:pointer;background:var(--primary);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;white-space:nowrap;transition:all .2s;min-height:48px}.shortlink-submit-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.shortlink-submit-btn:disabled{opacity:.7;cursor:not-allowed}.shortlink-filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.shortlink-filter-header h2{font-size:18px;margin:0;color:var(--text-main)}.filter-toggle-btn{display:flex;align-items:center;gap:6px;background:var(--bg-surface);border:1px solid var(--border);padding:8px 16px;border-radius:6px;cursor:pointer;color:var(--text-main);font-weight:500;transition:all .2s}.filter-toggle-btn.active{background:var(--hover);border-color:var(--primary);color:var(--primary)}.filter-panel{background:var(--bg-surface);padding:20px;border-radius:12px;margin-bottom:20px;border:1px solid var(--border);box-shadow:0 2px 4px #0000000d}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.filter-field label{display:block;margin-bottom:6px;font-size:14px;color:var(--text-secondary);font-weight:500}.filter-field input,.filter-field select{width:100%;padding:8px;border-radius:6px;border:1px solid var(--border);box-sizing:border-box;font-size:14px;background:var(--bg-surface);color:var(--text-main)}.filter-actions{display:flex;justify-content:flex-end}.clear-filter-btn{display:flex;align-items:center;gap:6px;background:var(--bg-surface);border:1px solid var(--border);padding:6px 16px;border-radius:6px;cursor:pointer;color:var(--text-secondary);font-size:14px;transition:all .2s}.clear-filter-btn:hover{border-color:var(--primary);color:var(--primary)}.shortlink-list{display:grid;gap:16px}.shortlink-item{padding:20px;background:var(--bg-surface);border-radius:12px;border:1px solid var(--border);display:flex;gap:24px;align-items:center;transition:all .2s}.shortlink-item.expired{background:#fff5f5;border-color:#fed7d7;opacity:.8}.shortlink-qr{background:#fff;padding:8px;border-radius:8px;border:1px solid var(--border);flex-shrink:0}.shortlink-info{flex:1;min-width:0}.shortlink-url-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.shortlink-url{font-weight:700;font-size:18px;color:var(--primary);text-decoration:none;word-break:break-all}.shortlink-url:hover{text-decoration:underline}.expired-badge{background:#e53e3e;color:#fff;font-size:10px;padding:2px 6px;border-radius:4px;white-space:nowrap}.shortlink-content{color:var(--text-main);margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shortlink-meta{font-size:13px;color:var(--text-secondary);display:flex;gap:16px;align-items:center;flex-wrap:wrap}.shortlink-delete-btn{background:none;border:none;cursor:pointer;padding:8px;border-radius:6px;color:#e53e3e;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.shortlink-delete-btn:hover{background:#fff5f5}.empty-state{text-align:center;padding:40px;color:var(--text-secondary);background:var(--bg-surface);border-radius:12px}@media (max-width: 768px){.shortlink-header h1{font-size:20px}.shortlink-header p{font-size:14px}.shortlink-input-card{padding:16px;border-radius:10px;margin-bottom:20px}.shortlink-input-wrapper{flex-direction:column;gap:10px}.shortlink-input{padding:12px 14px;font-size:15px;border-radius:8px}.shortlink-submit-btn{width:100%;padding:12px 20px;font-size:15px;min-height:44px}.shortlink-filter-header h2{font-size:16px}.filter-toggle-btn{padding:8px 12px;font-size:13px}.filter-panel{padding:16px}.filter-grid{grid-template-columns:1fr;gap:16px}.filter-field label{font-size:13px}.filter-field input,.filter-field select{font-size:15px;padding:10px}.shortlink-item{flex-direction:column;padding:16px;gap:16px;align-items:flex-start}.shortlink-qr{align-self:center;width:100%;max-width:200px;display:flex;justify-content:center}.shortlink-info{width:100%}.shortlink-url-row{flex-direction:column;align-items:flex-start;gap:8px}.shortlink-url{font-size:15px;word-break:break-all}.shortlink-content{white-space:normal;word-break:break-all;font-size:14px}.shortlink-meta{font-size:12px;gap:12px;flex-direction:column;align-items:flex-start}.shortlink-delete-btn{position:absolute;top:12px;right:12px}.shortlink-item{position:relative}.empty-state{padding:30px 20px;font-size:14px}}@media (max-width: 375px){.shortlink-header h1{font-size:18px}.shortlink-input-card{padding:12px}.shortlink-input{padding:10px 12px;font-size:15px}.shortlink-submit-btn{padding:10px 16px;font-size:14px}.shortlink-item{padding:12px}.shortlink-qr{max-width:150px}.shortlink-url{font-size:14px}.filter-panel{padding:12px}}.tax-code-page{min-height:100vh;background:linear-gradient(180deg,#f8fafc,#edf2f7);padding:40px 20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.tax-code-container{max-width:1200px;margin:0 auto}.tax-code-header{margin-bottom:32px;text-align:center}.toolbar-title{color:#2d3748;font-size:30px;font-weight:700;letter-spacing:-.5px}.tax-code-card{background:#fff;border-radius:12px;padding:32px;box-shadow:0 10px 15px -3px #0000000d,0 4px 6px -2px #00000006;min-height:600px;border:1px solid #e2e8f0;position:relative;overflow:hidden}.tax-code-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#4299e1,#667eea)}.search-bar{display:flex;gap:12px;margin-bottom:32px;max-width:800px;margin-left:auto;margin-right:auto}.search-bar input{flex:1;padding:12px 20px;border:2px solid #edf2f7;border-radius:10px;font-size:16px;outline:none;transition:all .2s;background:#fff}.search-bar input:focus{border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.search-bar .search-btn{padding:12px 32px;background:#4299e1;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 6px #4299e133}.search-bar .search-btn:hover{background:#3182ce;transform:translateY(-1px)}.search-bar .clear-btn{padding:12px 20px;background:#fff;color:#718096;border:2px solid #e2e8f0;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.highlight{color:#2b6cb0;font-weight:700;background:#4299e11a;padding:0 2px;border-radius:2px}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;background:#f7fafc;border-radius:8px;margin-bottom:24px;font-size:14px;border:1px solid #edf2f7}.breadcrumb-tag{display:inline-flex;align-items:center;padding:4px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;color:#4a5568;cursor:pointer;transition:all .2s ease;font-weight:500}.breadcrumb-tag:hover,.breadcrumb-tag.active{color:#3182ce;border-color:#bee3f8;background:#ebf8ff}.stats-bar{font-size:13px;color:#718096;margin-bottom:12px;text-align:right}.code-list{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#fff}.code-item{padding:16px 24px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:all .15s}.code-item:hover{background:#f8fafc}.code-item.selected{background:#ebf8ff;border-left:4px solid #4299e1;padding-left:20px}.code-main{display:flex;align-items:center;gap:16px}.code-number{font-family:Consolas,Monaco,monospace;font-size:14px;color:#2b6cb0;background:#ebf8ff;padding:4px 12px;border-radius:6px;min-width:160px;text-align:center;font-weight:600}.code-name{flex:1;font-size:16px;font-weight:500;color:#2d3748}.expand-icon{font-size:14px;color:#cbd5e0}.code-meta{display:flex;gap:16px;font-size:13px;color:#718096;margin-top:8px;padding-left:176px}.code-meta .tax-rate{color:#38a169;font-weight:600;background:#f0fff4;padding:2px 8px;border-radius:4px}.code-meta .has-policy{color:#d69e2e;background:ivory;padding:2px 8px;border-radius:4px;border:1px solid #fefcbf}.detail-panel-inline{background:#f8fafc;margin:12px 0 16px;border-radius:8px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:inset 0 2px 4px #00000005}.detail-header-compact{padding:10px 24px;background:#f1f5f9;color:#4a5568;font-size:13px;font-weight:600;display:flex;justify-content:space-between;border-bottom:1px solid #e2e8f0}.detail-content{padding:20px 24px;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-row{padding:12px;background:#fff;border-radius:6px;border:1px solid #e2e8f0;display:flex;flex-direction:column}.detail-row.full-width{grid-column:1 / -1}.detail-row label{font-size:12px;color:#718096;margin-bottom:4px;font-weight:600}.detail-row span,.detail-row p{color:#2d3748;font-size:14px;line-height:1.5}.copy-btn{padding:2px 8px;background:#edf2f7;color:#4a5568;border:1px solid #cbd5e0;font-size:11px;border-radius:4px;cursor:pointer;margin-left:8px}.tax-rate-value{color:#38a169!important;font-weight:700;font-size:16px!important}.policy-text{color:#d69e2e!important;font-weight:500}.policy-ref{color:#3182ce!important}.parent-link{color:#4299e1!important;font-weight:500;text-decoration:none}.tax-code-footer{text-align:center;color:#a0aec0;font-size:13px;margin-top:40px;border-top:1px solid #edf2f7;padding-top:20px;display:flex;justify-content:center;gap:24px}@media (max-width: 768px){.tax-code-page{padding:0;background:#fff}.tax-code-container{padding:0}.tax-code-card{padding:0;border:none;border-radius:0;box-shadow:none}.tax-code-card:before{display:none}.tax-code-header{display:none}.search-bar{padding:12px 16px;background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 10px #0000000d;margin-bottom:0;gap:8px}.search-bar input{background:#f3f4f6;border:none;border-radius:6px;padding:8px 12px;font-size:14px;height:36px}.search-bar .search-btn{padding:0 16px;height:36px;border-radius:6px;font-size:14px}.search-bar .clear-btn{display:none}.breadcrumb{margin:0;border:none;border-bottom:1px solid #f3f4f6;border-radius:0;padding:10px 16px;background:#fff;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.breadcrumb-tag{flex-shrink:0;font-size:12px;padding:4px 10px}.stats-bar{padding:8px 16px;margin:0;background:#f9fafb;text-align:left;font-size:12px}.code-list{border:none;border-radius:0}.code-item{padding:16px;position:relative}.code-item.selected{background:#f0f9ff;border-left:none;padding-left:16px}.code-main{flex-direction:column;align-items:flex-start;gap:6px}.code-name{font-size:16px;color:#111827;line-height:1.4;width:100%;padding-right:20px}.code-number{font-size:13px;color:#6b7280;background:transparent;padding:0;min-width:auto;text-align:left;font-family:-apple-system,sans-serif;letter-spacing:.5px}.expand-icon{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:12px;color:#9ca3af}.code-meta{padding-left:0;margin-top:8px;gap:8px;flex-wrap:wrap}.code-meta .tax-rate{font-size:11px;padding:2px 6px}.detail-panel-inline{margin:12px 0 0;background:#fff;border:1px solid #e5e7eb;box-shadow:0 4px 6px -1px #0000000d}.detail-header-compact{padding:10px 12px;background:#f9fafb}.detail-content{padding:12px;grid-template-columns:1fr;gap:10px}.detail-row{padding:10px;border:none;background:#f9fafb}.detail-row label{font-size:11px;color:#6b7280;margin-bottom:2px}.detail-row span,.detail-row p{font-size:14px;color:#374151}.tax-code-footer{padding-bottom:40px;flex-direction:column;gap:8px}}.alerts-page{padding:24px}.alerts-page .page-header{margin-bottom:24px}.alerts-page .page-header h1{display:flex;align-items:center;gap:12px;margin:0 0 8px;font-size:24px;font-weight:600;color:#1f2937}.alerts-page .subtitle{margin:0;color:#6b7280;font-size:14px}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin-bottom:24px}.stats-row .stat-card{display:flex;align-items:center;gap:16px;background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #00000014}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.stat-icon.active{background:#fef3c7;color:#d97706}.stat-icon.triggered{background:#d1fae5;color:#059669}.stat-icon.total{background:#dbeafe;color:#2563eb}.stat-info .stat-value{font-size:28px;font-weight:700;color:#1f2937}.stat-info .stat-label{font-size:14px;color:#6b7280}.alerts-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.alerts-container .section-header{padding:20px 24px;border-bottom:1px solid #e5e7eb}.alerts-container .section-header h2{margin:0;font-size:18px;font-weight:600;color:#1f2937}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#9ca3af}.empty-state p{margin:16px 0 8px;font-size:16px;font-weight:500;color:#6b7280}.empty-state span{font-size:14px}.alerts-table{width:100%;border-collapse:collapse}.alerts-table th{padding:12px 16px;text-align:left;font-size:13px;font-weight:600;color:#6b7280;background:#f9fafb;border-bottom:1px solid #e5e7eb}.alerts-table td{padding:12px 16px;font-size:14px;color:#374151;border-bottom:1px solid #f3f4f6}.alerts-table tr:hover{background:#f9fafb}.alerts-table tr.triggered{background:#f0fdf4}.alerts-table tr.triggered:hover{background:#ecfdf5}.metal-cell{display:flex;align-items:center;gap:8px}.metal-cell .metal-icon{font-size:18px}.condition-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500}.condition-badge.above{background:#ecfdf5;color:#059669}.condition-badge.below{background:#fef2f2;color:#dc2626}.price-cell{font-family:Roboto Mono,monospace;font-weight:500}.diff-up{color:#10b981;font-weight:500}.diff-down{color:#ef4444;font-weight:500}.email-cell{color:#6b7280;font-size:13px}.date-cell{color:#9ca3af;font-size:13px;white-space:nowrap}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:500}.status-badge.active{background:#fef3c7;color:#d97706}.status-badge.triggered{background:#d1fae5;color:#059669}.alerts-table .delete-btn{padding:8px;border:none;background:transparent;color:#9ca3af;border-radius:6px;cursor:pointer;transition:all .2s ease}.alerts-table .delete-btn:hover:not(:disabled){background:#fee2e2;color:#ef4444}.alerts-table .delete-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1024px){.alerts-table{display:block;overflow-x:auto}}@media (max-width: 768px){.alerts-page{padding:16px}.stats-row{grid-template-columns:1fr;gap:12px}.alerts-table th,.alerts-table td{padding:10px 12px;font-size:13px}}.gb-admin-page{padding:24px}.gb-admin-header{margin-bottom:24px}.gb-admin-header h1{margin:0 0 16px;font-size:24px;color:#2d3748}.gb-admin-tabs{display:flex;gap:8px;border-bottom:2px solid #e2e8f0}.gb-admin-tab{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;color:#718096;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:-2px}.gb-admin-tab:hover{color:#4299e1}.gb-admin-tab.active{color:#2b6cb0;border-bottom-color:#4299e1}.gb-stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.gb-stat-card{background:#fff;padding:20px;border-radius:8px;box-shadow:0 1px 3px #0000001a;border-left:4px solid #4299e1}.gb-stat-label{font-size:14px;color:#718096;margin-bottom:8px}.gb-stat-value{font-size:32px;font-weight:700;color:#2d3748}.gb-filters-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:16px;flex-wrap:wrap}.gb-status-filters{display:flex;gap:8px}.gb-filter-btn{padding:8px 16px;border:1px solid #e2e8f0;background:#fff;border-radius:6px;font-size:14px;color:#4a5568;cursor:pointer;transition:all .2s}.gb-filter-btn:hover{border-color:#4299e1;color:#4299e1}.gb-filter-btn.active{background:#4299e1;color:#fff;border-color:#4299e1}.gb-search-bar{display:flex;gap:8px}.gb-search-bar input{padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;min-width:250px}.gb-search-bar button{padding:8px 20px;background:#4299e1;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background .2s}.gb-search-bar button:hover{background:#3182ce}.gb-requests-table,.gb-standards-table{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.gb-requests-table table,.gb-standards-table table{width:100%;border-collapse:collapse}.gb-requests-table th,.gb-standards-table th{background:#f7fafc;padding:12px 16px;text-align:left;font-size:13px;font-weight:600;color:#4a5568;border-bottom:2px solid #e2e8f0}.gb-requests-table td,.gb-standards-table td{padding:12px 16px;border-bottom:1px solid #e2e8f0;font-size:14px;color:#2d3748}.gb-requests-table tr:last-child td,.gb-standards-table tr:last-child td{border-bottom:none}.gb-std-name{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gb-hcno{font-family:monospace;font-size:12px;color:#718096}.gb-status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.gb-status-badge.pending{background:#fef5e7;color:#d68910}.gb-status-badge.fulfilled{background:#f0fff4;color:#22543d}.gb-status-badge.rejected{background:#fff5f5;color:#742a2a}.gb-pdf-status{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.gb-pdf-status.downloadable{background:#f0fff4;color:#22543d}.gb-pdf-status.no_access{background:#fff5f5;color:#742a2a}.gb-actions{display:flex;gap:8px}.gb-action-btn{padding:6px 12px;border:none;border-radius:4px;font-size:13px;cursor:pointer;transition:all .2s}.gb-action-btn.primary{background:#4299e1;color:#fff}.gb-action-btn.primary:hover{background:#3182ce}.gb-action-btn.success{background:#48bb78;color:#fff}.gb-action-btn.success:hover{background:#38a169}.gb-action-btn.danger{background:#f56565;color:#fff}.gb-action-btn.danger:hover{background:#e53e3e}.gb-pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px;padding:16px;background:#fff;border-radius:8px}.gb-pagination button{padding:8px 16px;border:1px solid #e2e8f0;background:#fff;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.gb-pagination button:hover:not(:disabled){border-color:#4299e1;color:#4299e1}.gb-pagination button:disabled{opacity:.5;cursor:not-allowed}.gb-pagination span{font-size:14px;color:#4a5568}.gb-loading,.gb-empty{text-align:center;padding:60px 20px;color:#718096;font-size:15px}.gb-search-section{background:#fff;padding:24px;border-radius:8px;margin-bottom:20px;box-shadow:0 1px 3px #0000001a}.gb-hint{margin:0 0 16px;color:#718096;font-size:14px}.gb-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.gb-modal{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow:auto;box-shadow:0 20px 25px -5px #0000001a}.gb-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e2e8f0}.gb-modal-header h3{margin:0;font-size:18px;color:#2d3748}.gb-modal-close{background:none;border:none;font-size:28px;color:#a0aec0;cursor:pointer;line-height:1;padding:0;width:32px;height:32px}.gb-modal-close:hover{color:#4a5568}.gb-modal-body{padding:24px}.gb-form-group{margin-bottom:20px}.gb-form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#4a5568}.gb-form-group input,.gb-form-group select{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px}.gb-form-group input:disabled{background:#f7fafc;color:#a0aec0}.gb-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0}.gb-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.gb-btn.primary{background:#4299e1;color:#fff}.gb-btn.primary:hover{background:#3182ce}.gb-btn.secondary{background:#e2e8f0;color:#4a5568}.gb-btn.secondary:hover{background:#cbd5e0}.gb-share-url{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gb-share-url a{color:#667eea;text-decoration:none;font-size:14px}.gb-share-url a:hover{text-decoration:underline}.metal-config-page{padding:24px;max-width:1400px;margin:0 auto}.page-header{margin-bottom:32px}.page-header h1{margin:0 0 8px;font-size:28px;font-weight:700;color:#1f2937}.subtitle{margin:0;color:#6b7280;font-size:14px}.config-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow-x:auto;margin-bottom:32px}.config-table{width:100%;border-collapse:collapse;min-width:1200px}.config-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.config-table th{padding:16px 12px;text-align:left;font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.config-table td{padding:16px 12px;border-bottom:1px solid #f3f4f6;font-size:14px;color:#374151}.config-table tr.editing{background:#fef3c7}.config-table tr:hover:not(.editing){background:#f9fafb}.metal-info{display:flex;align-items:center;gap:12px}.metal-icon{font-size:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border-radius:8px}.metal-name{font-weight:600;color:#1f2937}.metal-code{font-size:12px;color:#9ca3af;font-family:Courier New,monospace}.form-select,.form-input{width:100%;padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;color:#374151;background:#fff}.form-input.small{width:80px}.form-select:focus,.form-input:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1a}.price-range{display:flex;align-items:center;gap:8px}.status-badges{display:flex;gap:6px;flex-wrap:wrap}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.badge-success{background:#d1fae5;color:#065f46}.badge-gray{background:#f3f4f6;color:#6b7280}.action-buttons{display:flex;gap:8px}.btn{padding:8px 16px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;background:#fff;color:#374151}.btn-sm{padding:6px 12px;font-size:12px}.btn-primary{background:#f59e0b;color:#fff;border-color:#f59e0b}.btn-primary:hover:not(:disabled){background:#d97706;border-color:#d97706}.btn-secondary{background:#6b7280;color:#fff;border-color:#6b7280}.btn-secondary:hover{background:#4b5563;border-color:#4b5563}.btn:disabled{opacity:.6;cursor:not-allowed}.config-help{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.config-help h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#1f2937}.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.help-item h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#374151}.help-item ul{margin:0;padding-left:20px}.help-item li{margin-bottom:8px;font-size:13px;color:#6b7280;line-height:1.6}.help-item strong{color:#1f2937}.text-sm{font-size:13px;color:#6b7280}@media (max-width: 768px){.metal-config-page{padding:16px}.config-table-container{overflow-x:scroll}.help-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}}.metal-manager-page{padding:24px}.metal-manager-page .page-header{margin-bottom:24px}.metal-manager-page .page-header h1{font-size:24px;font-weight:600;color:#111827;margin:0 0 8px}.metal-manager-page .page-header .subtitle{margin:0;color:#6b7280;font-size:14px}.metal-manager-tabs{display:flex;gap:24px;border-bottom:1px solid #e5e7eb;margin-bottom:24px}.metal-tab-btn{padding:12px 4px;font-size:14px;font-weight:500;color:#6b7280;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease;white-space:nowrap}.metal-tab-btn:hover{color:#374151;border-bottom-color:#d1d5db}.metal-tab-btn.active{color:#4f46e5;border-bottom-color:#4f46e5}.metal-tab-btn svg{margin-right:8px;vertical-align:text-bottom}
