:root{--app-primary:#4f46e5;--app-primary-dark:#4338ca;--app-secondary:#059669;--app-warning:#f59e0b;--app-danger:#dc2626;--app-success:#10b981;--app-bg-primary:#fff;--app-bg-secondary:#f9fafb;--app-bg-tertiary:#f3f4f6;--app-text-primary:#111827;--app-text-secondary:#6b7280;--app-border:#e5e7eb;--app-token-bg:#fffbeb;--app-token-border:#f59e0b;--font-size-xs:11px;--font-size-sm:12px;--font-size-base:14px;--font-size-xl:18px;--font-size-2xl:20px;--font-weight-medium:500;--font-weight-semibold:550;--font-weight-bold:600;--space-2:2px;--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--radius-sm:6px;--radius-base:8px;--radius-lg:12px;--shadow-sm:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02);--shadow-md:0 4px 6px -1px rgba(0,0,0,.04),0 2px 4px -1px rgba(0,0,0,.02);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.04),0 4px 6px -2px rgba(0,0,0,.02);--duration-fast:150ms;--duration-normal:250ms;--ease-standard:cubic-bezier(0.16,1,0.3,1);--focus-ring:0 0 0 3px rgba(79,70,229,.4)}@media (prefers-color-scheme:dark){:root{--app-bg-primary:#1f2937;--app-bg-secondary:#111827;--app-bg-tertiary:#374151;--app-text-primary:#f9fafb;--app-text-secondary:#9ca3af;--app-border:#374151;--app-token-bg:#422006;--app-token-border:#f59e0b}}.app{height:100vh;display:flex;flex-direction:column;overflow:hidden;position:relative;padding-bottom:100px}.app-header{background:var(--app-bg-primary);border-bottom:1px solid var(--app-border);padding:var(--space-16) var(--space-24);box-shadow:var(--shadow-sm);justify-content:space-between}.app-header,.app-header-right{display:flex;align-items:flex-start;gap:var(--space-16)}.header-buttons{display:flex;gap:var(--space-8);flex-shrink:0}.app-header h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--app-primary);margin:0}.app-header p{font-size:var(--font-size-sm);color:var(--app-text-secondary);margin-top:var(--space-4)}.app-header-credits{text-align:right;margin-top:0}.app-header-credits p{font-size:var(--font-size-xs);color:var(--app-text-secondary);margin:var(--space-2) 0;line-height:1.3}.app-header-credits p:first-child{margin-top:0}.app-header-credits p:last-child{margin-bottom:0}.credit-link{color:var(--app-text-secondary);text-decoration:none;transition:color var(--duration-fast) var(--ease-standard)}.credit-link:hover{color:var(--app-primary);text-decoration:underline}.database-update-info{color:var(--app-primary)!important}.database-update-info,.update-label{font-weight:var(--font-weight-medium)}.update-label{color:var(--app-text-secondary)}.help-button{width:40px;height:40px;border-radius:50%;background:var(--app-bg-secondary);border:1px solid var(--app-border);color:var(--app-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-standard);flex-shrink:0}.help-button:hover{background:var(--app-primary);color:#fff;border-color:var(--app-primary);transform:scale(1.05)}.help-button:active{transform:scale(.95)}.help-button svg{pointer-events:none}.feedback-button{width:40px;height:40px;border-radius:50%;background:var(--app-bg-secondary);border:1px solid var(--app-border);color:var(--app-success);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-standard);flex-shrink:0}.feedback-button:hover{background:var(--app-success);color:#fff;border-color:var(--app-success);transform:scale(1.05)}.feedback-button:active{transform:scale(.95)}.feedback-button svg{pointer-events:none}@media (max-width:768px){.app-header{padding:var(--space-8) var(--space-16);flex-direction:column;gap:var(--space-8)}.app-header h1{font-size:var(--font-size-xl)}.app-header>div>p{font-size:var(--font-size-xs);margin-top:var(--space-2)}.app-header-credits{text-align:left;align-self:flex-end}.app-header-credits p{font-size:9px}}.tab-bar{display:none;background:var(--app-bg-primary);border-bottom:1px solid var(--app-border);overflow-x:auto}.tab-bar-inner{display:flex;min-width:-moz-min-content;min-width:min-content}.tab-button{flex:1;min-width:80px;padding:var(--space-16);background:none;border:none;border-bottom:2px solid transparent;color:var(--app-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);white-space:nowrap}.tab-button:hover{color:var(--app-text-primary);background:var(--app-bg-secondary)}.tab-button.active{color:var(--app-primary);border-bottom-color:var(--app-primary);font-weight:var(--font-weight-semibold)}.app-content{gap:var(--space-16);padding:var(--space-16) 180px;position:relative;max-width:100%}.app-content,.column{flex:1;display:flex;overflow:hidden}.column{background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-lg);flex-direction:column;box-shadow:var(--shadow-sm)}.column-header{padding:var(--space-16);border-bottom:1px solid var(--app-border);background:var(--app-bg-secondary)}.column-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-16)}.column-header h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--app-text-primary);margin:0}.column-header .subtitle{font-size:var(--font-size-sm);color:var(--app-text-secondary);margin-top:var(--space-4);margin-bottom:0}.column-body{flex:1;padding:var(--space-16);overflow-y:auto}.column-footer{padding:var(--space-16);border-top:1px solid var(--app-border);background:var(--app-bg-secondary)}.form-group{margin-bottom:var(--space-16)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-8)}.form-control,.form-label{color:var(--app-text-primary)}.form-control{width:100%;padding:var(--space-12);font-size:var(--font-size-base);background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-base);transition:all var(--duration-fast) var(--ease-standard);font-family:inherit}.form-control:focus{outline:none;border-color:var(--app-primary);box-shadow:var(--focus-ring)}textarea.form-control{resize:vertical;min-height:200px}.checkbox-group{display:flex;align-items:center;gap:var(--space-8);margin-bottom:var(--space-16)}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--app-primary)}.checkbox-group label{font-size:var(--font-size-base);color:var(--app-text-primary);cursor:pointer}.radio-group{flex-direction:column;margin-bottom:var(--space-16)}.radio-group,.radio-option{display:flex;gap:var(--space-8)}.radio-option{align-items:center}.radio-option input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--app-primary)}.radio-option label{color:var(--app-text-primary)}.btn,.radio-option label{font-size:var(--font-size-base);cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-12) var(--space-20);font-weight:var(--font-weight-medium);border-radius:var(--radius-base);border:none;transition:all var(--duration-normal) var(--ease-standard);text-decoration:none;gap:var(--space-8);min-height:44px}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn-primary{background:var(--app-primary);color:#fff}.btn-primary:hover{background:var(--app-primary-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--app-bg-tertiary);color:var(--app-text-primary);border:1px solid var(--app-border)}.btn-secondary:hover{background:var(--app-border)}.btn-success{background:var(--app-secondary);color:#fff}.btn-success:hover{background:#047857}.btn-full{width:100%}.btn-group,.card-list{display:flex;flex-direction:column;gap:var(--space-8)}.card-row{display:grid;grid-template-columns:60px 1fr 90px;gap:var(--space-12);align-items:center;padding:var(--space-12);background:var(--app-bg-secondary);border:1px solid var(--app-border);border-radius:var(--radius-base);transition:all var(--duration-fast) var(--ease-standard)}.card-row.draggable{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.card-row.draggable:active{cursor:grabbing;opacity:.7}.card-list{min-height:100px}.card-row:hover{box-shadow:var(--shadow-md);border-color:var(--app-primary)}.card-row.token{background:var(--app-token-bg);border-left:3px solid var(--app-token-border)}.card-name{font-weight:var(--font-weight-medium);color:var(--app-text-primary);cursor:pointer;position:relative;font-size:var(--font-size-sm)}.card-name:hover{color:var(--app-primary);text-decoration:underline}.card-badge{display:inline-block;padding:2px var(--space-8);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:var(--app-warning);color:#fff;border-radius:var(--radius-sm);margin-left:var(--space-8);text-transform:uppercase;letter-spacing:.5px}.card-badge-bad{background:var(--app-danger);color:#fff}.card-badge-clickable{cursor:pointer;padding:var(--space-4) var(--space-10);transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:var(--font-weight-semibold);display:inline-flex;align-items:center;gap:var(--space-4)}.card-badge-clickable:after{content:"›";font-size:24px;font-weight:700;line-height:1}.card-badge-clickable:hover{background:#dc2626;transform:scale(1.05);box-shadow:0 2px 4px rgba(220,38,38,.3)}.card-badge-clickable:active{transform:scale(.98)}.card-input{width:100%;padding:var(--space-8);font-size:var(--font-size-sm);color:var(--app-text-primary);background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-sm);text-align:center}.card-input:focus{outline:none;border-color:var(--app-primary)}.btn-delete{width:32px;height:32px;padding:0;background:var(--app-bg-tertiary);border:1px solid var(--app-border);border-radius:var(--radius-sm);color:var(--app-text-secondary);cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);display:flex;align-items:center;justify-content:center}.btn-delete:hover{background:var(--app-danger);color:#fff;border-color:var(--app-danger)}.summary{display:flex;justify-content:space-between;padding:var(--space-12);background:var(--app-bg-tertiary);border-radius:var(--radius-base);margin-bottom:var(--space-16)}.summary-item{text-align:center}.summary-label{font-size:var(--font-size-xs);color:var(--app-text-secondary);text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--app-text-primary);margin-top:var(--space-4)}.empty-state{text-align:center;padding:var(--space-32);color:var(--app-text-secondary)}.empty-state-icon{font-size:48px;margin-bottom:var(--space-16)}.loading-progress{margin-bottom:var(--space-16);padding:var(--space-20);background:var(--app-bg-secondary);border-radius:var(--radius-base);border:1px solid var(--app-border);box-shadow:var(--shadow-sm)}.progress-bar-container{width:100%;height:12px;background:var(--app-bg-tertiary);margin-bottom:var(--space-12);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar,.progress-bar-container{border-radius:var(--radius-sm);overflow:hidden}.progress-bar{height:100%;background:linear-gradient(90deg,var(--app-primary),var(--app-primary-dark));transition:width .3s ease;box-shadow:0 0 8px rgba(79,70,229,.4);position:relative}.progress-bar:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.progress-text{text-align:center;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--app-text-primary);margin:0}@media (min-width:769px){.loading-progress{padding:var(--space-24)}.progress-bar-container{height:14px}.progress-text{font-size:var(--font-size-base)}}.loading{text-align:center;padding:var(--space-32);color:var(--app-text-secondary)}.spinner{display:inline-block;width:40px;height:40px;border:4px solid var(--app-border);border-top-color:var(--app-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.disclaimer{gap:var(--space-8);padding:var(--space-12);color:#92400e;border:1px solid #fcd34d;font-size:var(--font-size-sm);margin-top:var(--space-16)}.disclaimer,.modal-overlay{display:flex;align-items:center}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(17,24,39,.85);justify-content:center;z-index:1000;padding:var(--space-16);backdrop-filter:blur(4px)}@media (prefers-color-scheme:light){.modal-overlay{background:rgba(249,250,251,.9)}}.modal-content{position:relative;max-width:90%;max-height:90%}.modal-image{max-width:100%;max-height:80vh;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.dual-faced-images{gap:var(--space-16)}.card-face-container,.dual-faced-images{display:flex;flex-direction:column;align-items:center}.card-face-container{gap:var(--space-8)}.card-face-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--app-text-secondary);text-transform:uppercase;letter-spacing:.5px}.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.3);z-index:1000;backdrop-filter:blur(2px)}.card-move-menu{background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:200px;max-width:300px;transform:translate(-50%,-100%);margin-top:-var(--space-8)}.menu-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-12) var(--space-16);border-bottom:1px solid var(--app-border)}.menu-card-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--app-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.menu-close{background:none;border:none;font-size:var(--font-size-xl);color:var(--app-text-secondary);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-standard)}.menu-close:hover{background:var(--app-bg-secondary);color:var(--app-text-primary)}.menu-options{padding:var(--space-8)}.menu-option{width:100%;padding:var(--space-12) var(--space-16);background:var(--app-bg-secondary);border:1px solid var(--app-border);border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--app-text-primary);cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);text-align:left;margin-bottom:var(--space-8)}.menu-option:last-child{margin-bottom:0}.menu-option:hover{background:var(--app-primary);color:#fff;border-color:var(--app-primary)}.menu-option:active{transform:scale(.98)}@media (max-width:768px){.loading-progress{margin-bottom:var(--space-12);padding:var(--space-12)}.progress-bar-container{height:10px}.progress-text{font-size:var(--font-size-sm)}.card-move-menu{position:fixed;bottom:var(--space-16);left:var(--space-16);right:var(--space-16);transform:none;margin-top:0;max-width:none}}.modal-close{position:absolute;top:-12px;right:-12px;width:40px;height:40px;background:#fff;border:none;border-radius:50%;cursor:pointer;font-size:20px;font-weight:700;color:var(--app-text-primary);box-shadow:var(--shadow-lg);transition:all var(--duration-fast) var(--ease-standard)}.modal-close:hover{background:var(--app-danger);color:#fff}.unmatched-modal{max-width:600px;width:90%;max-height:80vh;background:var(--app-bg-primary);border-radius:var(--radius-lg);display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.modal-header{padding:var(--space-20);border-bottom:1px solid var(--app-border);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--app-text-primary)}.modal-body{padding:var(--space-20);overflow-y:auto;flex:1}.modal-description{font-size:var(--font-size-sm);color:var(--app-text-secondary);margin-bottom:var(--space-16)}.unmatched-list{display:flex;flex-direction:column;gap:var(--space-8)}.unmatched-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-12);background:var(--app-bg-secondary);border:1px solid var(--app-border);border-radius:var(--radius-base);gap:var(--space-12)}.unmatched-info{display:flex;align-items:center;gap:var(--space-8);flex:1}.unmatched-quantity-input{width:60px;padding:var(--space-8);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--app-text-primary);background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-sm);text-align:center;font-family:inherit}.unmatched-quantity-input:focus{outline:none;border-color:var(--app-primary);box-shadow:var(--focus-ring)}.unmatched-name-input{flex:1;padding:var(--space-8);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--app-text-primary);background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-sm);font-family:inherit}.unmatched-name-input:focus{outline:none;border-color:var(--app-primary);box-shadow:var(--focus-ring)}.unmatched-set-input{width:120px;padding:var(--space-8);font-size:var(--font-size-sm);color:var(--app-text-secondary);background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-sm);font-family:inherit}.unmatched-set-input:focus{outline:none;border-color:var(--app-primary);box-shadow:var(--focus-ring)}.unmatched-set-input::-moz-placeholder{color:var(--app-text-tertiary)}.unmatched-set-input::placeholder{color:var(--app-text-tertiary)}.alternative-printings-modal{max-width:600px;max-height:80vh}.alternative-printings-modal,.help-modal{width:90%;background:var(--app-bg-primary);border-radius:var(--radius-lg);display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.help-modal{max-width:700px;max-height:85vh}.help-modal-body{max-height:70vh;overflow-y:auto}.help-content{display:flex;flex-direction:column;gap:var(--space-24)}.help-section{padding:var(--space-16);background:var(--app-bg-secondary);border-radius:var(--radius-base);border-left:3px solid var(--app-primary)}.help-section h3{margin:0 0 var(--space-12) 0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--app-text-primary)}.help-section p{margin:var(--space-8) 0;font-size:var(--font-size-base);color:var(--app-text-primary);line-height:1.6}.help-section p:first-of-type{margin-top:0}.help-section p:last-of-type{margin-bottom:0}.help-section ol,.help-section ul{margin:var(--space-8) 0;padding-left:var(--space-20)}.help-section li{margin:var(--space-8) 0;font-size:var(--font-size-base);color:var(--app-text-primary);line-height:1.6}.help-section strong{color:var(--app-primary);font-weight:var(--font-weight-semibold)}.help-tip{font-size:var(--font-size-sm);color:var(--app-text-secondary);font-style:italic;margin-top:var(--space-12)!important;padding-top:var(--space-12);border-top:1px solid var(--app-border)}.badge-example{display:inline-block;padding:2px var(--space-8);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px;margin:0 var(--space-4)}.badge-example.badge-bad{background:var(--app-danger);color:#fff}.feedback-modal{max-width:500px;width:90%;max-height:85vh;background:var(--app-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.feedback-form,.feedback-modal{display:flex;flex-direction:column}.feedback-form{gap:var(--space-20)}.feedback-textarea{min-height:150px;resize:vertical;font-family:inherit}.form-control.error{border-color:var(--app-danger)}.error-message{display:block;font-size:var(--font-size-sm);margin-top:var(--space-4)}.error-banner,.error-message,.required{color:var(--app-danger)}.error-banner{padding:var(--space-12);background:rgba(220,38,38,.1);border:1px solid var(--app-danger);border-radius:var(--radius-base);font-size:var(--font-size-sm)}.feedback-success{text-align:center;padding:var(--space-32)}.success-icon{width:64px;height:64px;margin:0 auto var(--space-20);background:var(--app-success);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;animation:scaleIn .3s var(--ease-standard)}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.feedback-success h3{margin:0 0 var(--space-12) 0;color:var(--app-text-primary);font-size:var(--font-size-xl)}.feedback-success p{margin:0;color:var(--app-text-secondary);font-size:var(--font-size-base)}.printings-list{display:flex;flex-direction:column;gap:var(--space-8)}.printing-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-12);background:var(--app-bg-secondary);border:1px solid var(--app-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease}.printing-item:hover{background:var(--app-bg-tertiary);border-color:var(--app-primary);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.printing-info{display:flex;flex-direction:column;gap:var(--space-4)}.printing-name{font-weight:var(--font-weight-semibold);color:var(--app-text-primary);font-size:var(--font-size-base)}.printing-set{font-size:var(--font-size-sm);color:var(--app-text-secondary);font-family:monospace}.printing-price{font-weight:var(--font-weight-bold);color:var(--app-primary);font-size:var(--font-size-lg)}.btn-sm{padding:var(--space-6) var(--space-12);font-size:var(--font-size-xs);min-height:32px}.btn-warning{background:var(--app-warning);color:#fff}.btn-warning:hover{background:#d97706}.card-preview{position:fixed;width:244px;pointer-events:none;z-index:999;display:none}.card-preview img{width:100%;border-radius:var(--radius-base);box-shadow:var(--shadow-lg);border:1px solid var(--app-border)}@media (max-width:768px){.app-header{flex-direction:column;gap:var(--space-12)}.app-header-right{width:100%;justify-content:space-between}.header-buttons{order:-1}.feedback-modal,.help-modal{max-width:95%;max-height:90vh}.help-modal-body{max-height:75vh}.help-section{padding:var(--space-12)}.help-section h3{font-size:var(--font-size-base)}.help-section li,.help-section p{font-size:var(--font-size-sm)}.app-header h1{font-size:var(--font-size-xl)}.tab-bar{display:block}.app-content{flex-direction:column;overflow-x:hidden;overflow-y:auto;padding:0;gap:0}.column{display:none;border-radius:0;border-left:none;border-right:none;min-height:calc(100vh - 140px)}.column.active{display:flex}.card-row{grid-template-columns:50px 1fr 80px;gap:var(--space-8)}.btn{font-size:var(--font-size-base)}.card-preview{display:none!important}}@media (min-width:769px) and (max-width:1024px){.app-content{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.column{min-height:400px}}.affiliate-panel{background:var(--app-bg-primary);border-radius:var(--radius-lg);max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.affiliate-panel-header{padding:var(--space-20);border-bottom:1px solid var(--app-border);display:flex;justify-content:space-between;align-items:center}.affiliate-panel-header h2{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--app-text-primary)}.affiliate-panel-body{padding:var(--space-20);overflow-y:auto;flex:1}.affiliate-list{display:flex;flex-direction:column;gap:var(--space-16)}.affiliate-item{padding:var(--space-16);background:var(--app-bg-secondary);border:1px solid var(--app-border);border-radius:var(--radius-base)}.affiliate-item-content{display:flex;flex-direction:column;gap:var(--space-12)}.affiliate-item-actions{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-8)}.form-hint{display:block;font-size:var(--font-size-xs);color:var(--app-text-secondary);margin-top:var(--space-4)}.card-price-display{display:flex;align-items:center;justify-content:flex-end;font-size:var(--font-size-sm)}.sort-controls{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-8) var(--space-12);background:var(--app-bg-tertiary);border-radius:var(--radius-base);flex-shrink:0}.sort-button,.sort-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--app-text-secondary)}.sort-button{padding:var(--space-4) var(--space-8);background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-standard)}.sort-button:hover{color:var(--app-text-primary)}.sort-button.active,.sort-button:hover{background:var(--app-bg-secondary);border-color:var(--app-primary)}.sort-button.active{color:var(--app-primary)}.split-mode-compact{flex-shrink:0;display:flex;flex-direction:column;gap:var(--space-8);padding:var(--space-8) var(--space-12);background:var(--app-bg-tertiary);border-radius:var(--radius-base)}.radio-group-inline{display:flex;gap:var(--space-12);align-items:center}.radio-option-inline{display:flex;align-items:center;gap:var(--space-4)}.radio-option-inline input[type=radio]{width:16px;height:16px;cursor:pointer;accent-color:var(--app-primary)}.radio-option-inline label{font-size:var(--font-size-xs);color:var(--app-text-primary);cursor:pointer;font-weight:var(--font-weight-medium)}.threshold-input-compact{display:flex;align-items:center;gap:var(--space-4)}.form-control-compact{width:100px;padding:var(--space-8) var(--space-8);font-size:var(--font-size-xs);color:var(--app-text-primary);background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-standard);font-family:inherit;text-align:left}.form-control-compact:focus{outline:none;border-color:var(--app-primary);box-shadow:var(--focus-ring)}.threshold-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--app-text-secondary)}.copy-menu-container{position:relative}.copy-menu-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.copy-menu-arrow{transition:transform var(--duration-normal) var(--ease-standard);font-size:var(--font-size-xs)}.copy-menu-arrow.open{transform:rotate(180deg)}.copy-menu{max-height:0;overflow:hidden;transition:max-height var(--duration-normal) var(--ease-standard);display:flex;flex-direction:column;gap:var(--space-8);margin-top:var(--space-8)}.copy-menu.open{max-height:500px}.copy-menu-item{animation:slideDown var(--duration-normal) var(--ease-standard)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.ad-side{position:fixed;top:50%;transform:translateY(-50%);width:160px;max-height:600px;background:var(--app-bg-primary);border:1px solid var(--app-border);border-radius:var(--radius-base);padding:var(--space-8);z-index:100;box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:center;overflow:hidden}.ad-side-left{left:var(--space-16)}.ad-side-right{right:var(--space-16)}.ad-side-content{height:100%;min-height:250px;color:var(--app-text-secondary);font-size:var(--font-size-sm);text-align:center}.ad-bottom,.ad-side-content{width:100%;display:flex;align-items:center;justify-content:center;padding:var(--space-8)}.ad-bottom{position:fixed;bottom:0;left:0;right:0;max-height:90px;background:var(--app-bg-primary);border-top:1px solid var(--app-border);z-index:50;box-shadow:0 -2px 8px rgba(0,0,0,.1);overflow:hidden}.ad-bottom-content{width:100%;max-width:728px;height:90px;display:flex;align-items:center;justify-content:center;color:var(--app-text-secondary);font-size:var(--font-size-sm);text-align:center;padding:var(--space-8)}@media (max-width:1200px){.ad-side{display:none}.app-content{padding-left:var(--space-16);padding-right:var(--space-16)}.app{padding-bottom:100px}}@media (min-width:1201px){.ad-side{display:flex}}.privacy-page{min-height:100vh;background:var(--app-bg-secondary);padding:var(--space-32) var(--space-16)}.privacy-container{max-width:800px;margin:0 auto;background:var(--app-bg-primary);padding:var(--space-32);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.privacy-container h1{font-size:32px;font-weight:var(--font-weight-bold);color:var(--app-primary);margin:0 0 var(--space-8) 0}.last-updated{font-size:var(--font-size-sm);color:var(--app-text-secondary);margin:0 0 var(--space-32) 0;font-style:italic}.privacy-container section{margin-bottom:var(--space-32)}.privacy-container h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--app-text-primary);margin:var(--space-24) 0 var(--space-16) 0;padding-top:var(--space-24);border-top:1px solid var(--app-border)}.privacy-container h2:first-child{margin-top:0;padding-top:0;border-top:none}.privacy-container h3{font-weight:var(--font-weight-semibold);margin:var(--space-16) 0 var(--space-8) 0}.privacy-container h3,.privacy-container p{font-size:var(--font-size-base);color:var(--app-text-primary)}.privacy-container p{line-height:1.7;margin:var(--space-12) 0}.privacy-container ul{margin:var(--space-12) 0;padding-left:var(--space-24)}.privacy-container li{font-size:var(--font-size-base);line-height:1.7;color:var(--app-text-primary);margin:var(--space-8) 0}.privacy-container a{color:var(--app-primary);text-decoration:none;transition:all var(--duration-fast) var(--ease-standard)}.privacy-container a:hover{text-decoration:underline;color:var(--app-primary-dark)}.back-link{display:inline-flex;align-items:center;gap:var(--space-8);padding:var(--space-8) var(--space-16);background:var(--app-bg-secondary);border:1px solid var(--app-border);border-radius:var(--radius-base);color:var(--app-text-primary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--duration-fast) var(--ease-standard);margin-bottom:var(--space-24)}.back-link:hover{background:var(--app-primary);color:#fff;border-color:var(--app-primary);text-decoration:none}.disclaimer{background:#fef3c7;padding:var(--space-20);border-radius:var(--radius-base);border:2px solid #f59e0b}@media (prefers-color-scheme:dark){.disclaimer{background:#422006;border-color:#f59e0b}}.footer-links{display:flex;align-items:center;justify-content:center;gap:var(--space-12);margin-top:var(--space-32);padding-top:var(--space-24);border-top:1px solid var(--app-border);font-size:var(--font-size-sm)}.footer-links span{color:var(--app-text-secondary)}@media (max-width:768px){.privacy-page{padding:var(--space-16)}.privacy-container{padding:var(--space-20)}.privacy-container h1{font-size:24px}.footer-links{flex-wrap:wrap}}