:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#171717;background:#ececec;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button,.upload-button,.button-link{border:0;border-radius:8px;padding:10px 14px;background:#d41111;color:#fff;font-weight:700;cursor:pointer;text-decoration:none}button.secondary,.upload-button.secondary{background:#222}button.ghost{background:#eee;color:#222}button.danger{background:#8f1010}button.active{box-shadow:0 0 0 3px #ffffff59 inset}button:disabled{opacity:.45;cursor:not-allowed}.app-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 22px;background:#191919;color:#fff;position:sticky;top:0;z-index:10}.app-header h1{margin:0;font-size:22px}.app-header p{margin:3px 0 0;color:#bdbdbd;font-size:13px}.header-actions{display:flex;gap:8px;align-items:center}.header-actions select{padding:9px;border-radius:7px}.workspace{display:grid;grid-template-columns:minmax(620px,720px) minmax(560px,1fr);gap:18px;padding:18px;align-items:start}.editor-column{display:flex;flex-direction:column;gap:14px}.preview-column{position:sticky;top:90px}.single-column{padding:18px;max-width:1200px;margin:0 auto}.card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 12px #00000012}.card h2{margin:0 0 12px;font-size:18px}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.field-grid{display:grid;grid-template-columns:1fr 120px 120px;gap:10px}label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:700}input{width:100%;min-width:0;border:1px solid #d5d5d5;border-radius:7px;padding:9px 10px;background:#fff}.match-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.match-editor{display:grid;grid-template-columns:58px minmax(150px,1.4fr) 72px 72px minmax(110px,1fr) 36px;gap:7px;align-items:center}.small-button{padding:8px 5px}.tiny{padding:5px 8px;font-size:12px}.action-bar{display:flex;flex-wrap:wrap;gap:8px}.poster-frame{background:#202020;padding:10px;border-radius:12px;box-shadow:0 4px 20px #0000002e}.poster-canvas{display:block;width:100%;max-height:calc(100vh - 145px);object-fit:contain;background:#fff}.status{margin-bottom:8px;padding:9px 12px;border-radius:8px;background:#fff;font-weight:700;box-shadow:0 2px 10px #0000000f}.logo-actions{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:10px;margin:14px 0}.upload-button{display:inline-flex;align-items:center;justify-content:center}.upload-button input{display:none}.logo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:10px}.logo-card{border:1px solid #e0e0e0;border-radius:9px;padding:10px;background:#fafafa;text-align:center}.logo-card img{width:72px;height:72px;object-fit:contain}.logo-card-name{font-weight:800;font-size:13px;margin-top:6px}.logo-card-meta{color:#777;font-size:11px;margin:4px 0}@media (max-width: 1100px){.workspace{grid-template-columns:1fr}.preview-column{position:static}.poster-canvas{max-height:none}}@media (max-width: 650px){.app-header{align-items:flex-start;flex-direction:column}.workspace,.single-column{padding:10px}.field-grid,.logo-actions{grid-template-columns:1fr}.match-editor{grid-template-columns:55px 1fr 70px}}.match-editor-card{border:1px solid #e1e1e1;border-radius:10px;padding:10px;background:#fbfbfb}.match-editor-top{display:grid;grid-template-columns:70px minmax(260px,1fr) 42px;gap:8px;align-items:center}.match-editor-bottom{display:grid;grid-template-columns:minmax(300px,1.8fr) 88px 102px minmax(150px,1fr);gap:8px;margin-top:8px;align-items:end}.logo-picker-inline{display:grid;grid-template-columns:64px minmax(210px,1fr);gap:8px;align-items:end}.logo-picker-inline select{width:100%;min-width:0;border:1px solid #d5d5d5;border-radius:7px;padding:9px 8px;background:#fff}.logo-preview-small{width:64px;height:64px;border:1px solid #d7d7d7;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.logo-preview-small img{width:58px;height:58px;object-fit:contain}.logo-preview-small span{font-size:10px;font-weight:900;color:#777}.logo-help-strip{background:#fff3f3;border:1px solid #efbaba;border-radius:10px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.logo-help-strip strong{color:#8d1010}.venue-field{min-width:0}@media (max-width: 700px){.match-editor-bottom{grid-template-columns:1fr 1fr}.logo-picker-inline,.venue-field{grid-column:1 / -1}.logo-help-strip{align-items:stretch;flex-direction:column}}.logo-empty-warning{padding:14px;margin:10px 0;border:1px solid #d41111;border-radius:8px;background:#fff1f1;color:#8b0000;font-weight:800}.logo-picker-inline{display:block}.logo-select-button{width:100%;min-height:66px;display:grid;grid-template-columns:56px minmax(0,1fr) 22px;gap:9px;align-items:center;padding:5px 8px;border:1px solid #d6d6d6;border-radius:8px;background:#fff;color:#171717;text-align:left}.logo-select-button:hover{border-color:#d41111;background:snow}.logo-select-button .logo-preview-small{width:54px;height:54px}.logo-select-button .logo-preview-small img{width:49px;height:49px}.logo-select-text{min-width:0;display:flex;flex-direction:column;gap:2px}.logo-select-text small{color:#666;font-size:11px;line-height:1}.logo-select-text strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.logo-chevron{font-size:11px;color:#777;text-align:center}.logo-picker-panel{margin-top:10px;border-top:1px solid #e1e1e1;padding-top:10px;display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px;max-height:280px;overflow-y:auto}.logo-choice{min-height:116px;padding:8px;border:2px solid transparent;border-radius:9px;background:#f4f4f4;color:#1a1a1a;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;text-align:center}.logo-choice:hover{background:#fff1f1;border-color:#ef9c9c}.logo-choice.selected{background:#fff0f0;border-color:#d41111}.logo-choice img{width:62px;height:62px;object-fit:contain}.logo-choice span{font-size:11px;font-weight:800;line-height:1.15}.logo-choice em{font-size:9px;font-style:normal;color:#777}.auto-logo-choice{width:62px;height:62px;border:1px dashed #aaa;border-radius:8px;display:flex!important;align-items:center;justify-content:center;background:#fff;font-size:11px!important;color:#666}@media (max-width: 900px){.logo-picker-panel{grid-template-columns:repeat(3,minmax(100px,1fr))}}@media (max-width: 650px){.logo-picker-panel{grid-template-columns:repeat(2,minmax(100px,1fr))}}.logo-manager-subtitle{margin:-5px 0 0;color:#666;font-size:13px;font-weight:500}.add-logo-panel{margin:16px 0 12px;padding:16px;border:1px solid #dedede;border-radius:12px;background:#f8f8f8;display:grid;grid-template-columns:minmax(360px,1fr) 210px;gap:20px;align-items:stretch}.add-logo-form{display:flex;flex-direction:column;gap:12px}.file-picker-row{display:flex;align-items:center;gap:10px;min-height:42px}.selected-file-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#555;font-weight:500}.logo-size-info{padding:10px 12px;border-radius:8px;background:#fff;border:1px solid #ddd;display:flex;flex-direction:column;gap:3px}.logo-size-info strong{color:#b30d0d}.logo-size-info span{color:#666;line-height:1.35;font-size:12px}.add-logo-save{align-self:flex-start;min-width:160px}.normalized-logo-preview{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center}.normalized-logo-preview-box{width:190px;height:190px;padding:8px;border-radius:12px;border:1px solid #d5d5d5;background:linear-gradient(45deg,#eee 25%,transparent 25%),linear-gradient(-45deg,#eee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eee 75%),linear-gradient(-45deg,transparent 75%,#eee 75%),#fff;background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px;display:flex;align-items:center;justify-content:center;overflow:hidden}.normalized-logo-preview-box img{width:100%;height:100%;object-fit:contain}.empty-logo-preview{width:100%;height:100%;background:#ffffffd1;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#888}.empty-logo-preview span{font-size:26px;font-weight:900}.empty-logo-preview small{margin-top:3px}.logo-manager-message{margin:10px 0 14px;border-radius:8px;background:#eef9ee;border:1px solid #aad2aa;color:#285928;padding:10px 12px;font-weight:700}.logo-import-section{margin:12px 0 16px;padding:12px;border-radius:9px;background:#f2f2f2;display:flex;align-items:center;justify-content:space-between;gap:12px}.logo-import-section>div{display:flex;flex-direction:column;gap:2px}.logo-import-section span{color:#666;font-size:12px}.logo-list-header{margin:10px 0}@media (max-width: 780px){.add-logo-panel{grid-template-columns:1fr}.logo-import-section,.file-picker-row{align-items:stretch;flex-direction:column}.normalized-logo-preview-box{width:170px;height:170px}}.add-logo-panel.editing-mode{border-color:#d41111;box-shadow:0 0 0 2px #d411110f}.logo-form-buttons{display:flex;gap:8px;flex-wrap:wrap}.zip-import-controls{display:flex;align-items:center;gap:8px}.zip-import-controls select{min-width:200px;padding:9px 10px;border:1px solid #d1d1d1;border-radius:8px;background:#fff}.logo-list-toolbar{margin:14px 0 10px;padding:10px 12px;background:#f4f4f4;border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:12px}.logo-list-toolbar>div:first-child{display:flex;flex-direction:column;gap:2px}.selected-logo-count{font-size:12px;color:#666}.bulk-logo-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.editable-logo-card{position:relative;transition:border-color .15s ease,background .15s ease}.editable-logo-card.selected-for-delete{border-color:#d41111;background:#fff1f1}.logo-select-checkbox{position:absolute;top:7px;left:7px;width:24px;height:24px;z-index:2}.logo-select-checkbox input{position:absolute;opacity:0;pointer-events:none}.logo-select-checkbox span{width:22px;height:22px;border-radius:6px;border:2px solid #bbb;background:#fff;display:block;cursor:pointer}.logo-select-checkbox input:checked+span{background:#d41111;border-color:#d41111}.logo-select-checkbox input:checked+span:after{content:"✓";color:#fff;font-weight:900;display:block;line-height:18px;text-align:center}.logo-card-actions{display:flex;gap:6px;justify-content:center;margin-top:7px}@media (max-width: 780px){.logo-list-toolbar,.logo-import-section,.zip-import-controls{align-items:stretch;flex-direction:column}.bulk-logo-actions{justify-content:stretch}.bulk-logo-actions button{flex:1}.zip-import-controls select{width:100%}}
