:root{--background:#fff;--surface:#f7f7f8;--surface-strong:#eeeeef;--carbon:#171717;--muted:#62636a;--line:#dedee2;--red:#e11931;--red-dark:#b60f22;--white:#fff}*{box-sizing:border-box}html{background:var(--background)}body{background:var(--background);color:var(--carbon);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,a{font:inherit}a{color:inherit;text-decoration:none}.page{min-height:100vh;padding:18px}.hero{border-left:6px solid var(--red);color:var(--carbon);background:#f2f2f3;max-width:1180px;margin:0 auto;padding:18px 22px}.heroBrand{justify-content:space-between;align-items:center;gap:20px;display:flex}.heroTitle{align-items:center;gap:20px;min-width:0;display:flex}.brandLogo{flex:none;width:112px;height:auto;display:block}.hero h1{letter-spacing:0;max-width:720px;margin:0;font-size:clamp(1.8rem,3.4vw,3rem);line-height:1.05}.heroActions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:10px;display:flex}.logoutLink,.adminHeaderLink{background:var(--carbon);color:var(--white);border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:0 14px;font-size:.9rem;font-weight:900;display:inline-flex}.adminHeaderLink{background:var(--red)}.dataSourceBadge{color:var(--muted);max-width:1180px;margin:10px auto 0;font-size:.78rem;font-weight:700}.machoteSelector{background:var(--white);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(220px,.7fr) minmax(280px,1.3fr);align-items:end;gap:18px;max-width:1180px;margin:22px auto 0;padding:18px;display:grid}.machoteSelector h2{margin:0;font-size:1.35rem;line-height:1.15}.machoteSelector p{color:var(--muted);margin:6px 0 0;font-weight:700}.machoteSelector label{gap:8px;display:grid}.machoteSelector label span{color:var(--muted);text-transform:uppercase;font-size:.82rem;font-weight:900}.machoteSelector select{background:var(--surface);border:1px solid var(--line);color:var(--carbon);border-radius:8px;outline:none;width:100%;min-height:52px;padding:0 14px}.machoteSelector select:focus{border-color:var(--red);box-shadow:0 0 0 3px #e1193124}.selectedMachote{max-width:1180px;margin:18px auto 0;display:grid}.emptyMachotes{background:var(--white);border:1px solid var(--line);color:var(--muted);border-radius:8px;margin:0;padding:18px;font-weight:800}.machoteCard{background:0 0;gap:14px;display:grid}.previewShell{background:var(--surface);border:1px solid var(--line);-webkit-user-select:none;user-select:none;border-radius:8px;justify-content:center;align-items:center;height:560px;display:flex;position:relative;overflow:hidden}.previewImage{object-fit:contain;pointer-events:none;width:100%;height:100%;display:block}.previewPlaceholder{color:var(--muted);text-align:center;justify-content:center;align-items:center;padding:22px;font-size:.95rem;font-weight:800;display:flex;position:absolute;inset:0}.cardBody{background:var(--white);border:1px solid var(--line);border-radius:8px;gap:16px;padding:20px;display:grid}.cardHeader{gap:6px;display:grid}.category{color:var(--red);text-transform:uppercase;margin:0;font-size:.82rem;font-weight:900}.cardHeader h2{letter-spacing:0;margin:0;font-size:1.5rem;line-height:1.12}.tags{flex-wrap:wrap;gap:7px;display:flex}.tags span{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:700}.messageText{background:var(--surface);border:1px solid var(--line);color:var(--carbon);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin:0;padding:16px;font-family:Arial,Helvetica,sans-serif;font-size:.95rem;line-height:1.5;overflow-x:auto}.cardActions{grid-template-columns:.8fr 1.2fr;gap:10px;display:grid}.copyButton,.downloadButton{cursor:pointer;text-align:center;border-radius:8px;justify-content:center;align-items:center;min-height:54px;padding:0 16px;font-weight:900;display:inline-flex}.copyButton{background:var(--white);border:1px solid var(--carbon);color:var(--carbon)}.downloadButton{background:var(--red);border:1px solid var(--red);color:var(--white);font-size:1.02rem}.downloadButtonDisabled{background:var(--surface-strong);border-color:var(--line);color:var(--muted);cursor:not-allowed}.copyButton:hover,.copyButton:focus-visible{background:var(--carbon);color:var(--white)}.downloadButton:hover,.downloadButton:focus-visible{background:var(--red-dark);border-color:var(--red-dark)}.downloadButtonDisabled:hover,.downloadButtonDisabled:focus-visible{background:var(--surface-strong);border-color:var(--line)}.loginPage,.adminPage{background:var(--surface);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.loginPanel,.adminPanel{background:var(--white);border:1px solid var(--line);border-radius:8px;gap:22px;width:100%;max-width:460px;padding:28px;display:grid;box-shadow:0 18px 45px #17171714}.adminDashboard{gap:20px;width:100%;max-width:1180px;display:grid}.adminHeader{background:var(--white);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:18px;padding:22px;display:flex}.adminHeader p{color:var(--red);text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.adminHeader h1{margin:6px 0 0;font-size:2rem;line-height:1.05}.adminHeaderActions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.adminButton{background:var(--red);border:1px solid var(--red);color:var(--white);cursor:pointer;text-align:center;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:0 14px;font-weight:900;display:inline-flex}.adminButtonDark{background:var(--carbon);border-color:var(--carbon)}.adminButtonDisabled{background:var(--surface-strong);border-color:var(--line);color:var(--muted);cursor:not-allowed}.adminNotice,.adminEmpty{background:var(--white);border:1px solid var(--line);color:var(--muted);border-radius:8px;margin:0;padding:18px;font-weight:800}.adminTableWrap{background:var(--white);border:1px solid var(--line);border-radius:8px;overflow:auto}.adminTable{border-collapse:collapse;width:100%;min-width:1080px}.adminTable th,.adminTable td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px;font-size:.88rem;line-height:1.35}.adminTable th{background:var(--surface);color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:900}.adminTable tr:last-child td{border-bottom:0}.adminTableAction{background:var(--carbon);color:var(--white);border-radius:8px;justify-content:center;align-items:center;min-height:34px;padding:0 10px;font-size:.82rem;font-weight:900;display:inline-flex}.adminForm{background:var(--white);border:1px solid var(--line);border-radius:8px;gap:18px;padding:22px;display:grid}.adminForm fieldset{border:1px solid var(--line);border-radius:8px;gap:14px;margin:0;padding:18px;display:grid}.adminForm legend{color:var(--red);text-transform:uppercase;padding:0 8px;font-size:.78rem;font-weight:900}.adminForm label{gap:8px;display:grid}.adminForm label span{color:var(--carbon);font-size:.9rem;font-weight:800}.adminForm input,.adminForm select,.adminForm textarea{border:1px solid var(--line);color:var(--carbon);border-radius:8px;outline:none;width:100%;min-height:46px;padding:0 12px}.adminForm textarea{resize:vertical;min-height:180px;padding:12px;line-height:1.45}.adminForm input:focus,.adminForm select:focus,.adminForm textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px #e1193124}.adminFieldGrid,.adminAdvancedGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.adminAdvancedGrid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}.adminHelpText,.adminWarning{border-radius:8px;margin:0;padding:10px 12px;font-size:.88rem;line-height:1.4}.adminSectionLabel{color:var(--red);text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.adminHelpText{background:var(--surface);border:1px solid var(--line);color:var(--muted)}.adminWarning{color:#92400e;background:#fffbeb;border:1px solid #fde68a;font-weight:800}.adminMessagePreview{background:var(--surface);border:1px solid var(--line);border-radius:8px;gap:8px;padding:12px;display:grid}.adminMessagePreview span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:900}.adminMessagePreview pre{color:var(--carbon);white-space:pre-wrap;word-break:break-word;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:.9rem;line-height:1.45}.adminAdvanced{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:16px 18px}.adminAdvanced summary{color:var(--carbon);cursor:pointer;font-weight:900}.adminCheckbox{align-items:center;gap:10px;display:flex}.adminCheckbox input{width:auto;min-height:auto}.adminFormActions{flex-wrap:wrap;gap:10px;display:flex}.adminFormError,.adminFormSuccess{border-radius:8px;margin:0;padding:12px;font-weight:800}.adminFormError{color:var(--red-dark);background:#fff1f2;border:1px solid #fecdd3}.adminFormSuccess{color:#166534;background:#ecfdf5;border:1px solid #bbf7d0}.adminDiagnostic{background:var(--surface);border:1px solid var(--line);border-radius:8px;gap:10px;padding:14px;display:grid}.adminDiagnostic p{color:var(--carbon);margin:0;font-size:.86rem;font-weight:900}.adminDiagnostic dl{gap:8px;margin:0;display:grid}.adminDiagnostic div{grid-template-columns:190px 1fr;gap:4px;display:grid}.adminDiagnostic dt{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:900}.adminDiagnostic dd{color:var(--carbon);overflow-wrap:anywhere;margin:0;font-size:.86rem}.loginPanel p,.adminPanel p{color:var(--muted);margin:0;line-height:1.5}.loginPanel>div>p{color:var(--red);text-transform:uppercase;font-size:.78rem;font-weight:900}.loginPanel h1,.adminPanel h1{margin:6px 0 0;font-size:2rem;line-height:1.05}.loginForm{gap:16px;display:grid}.loginForm label{gap:8px;display:grid}.loginForm label span{font-size:.9rem;font-weight:800}.loginForm input{border:1px solid var(--line);color:var(--carbon);border-radius:8px;outline:none;min-height:48px;padding:0 14px}.loginForm input:focus{border-color:var(--red);box-shadow:0 0 0 3px #e1193124}.loginForm button,.adminPanel a{background:var(--red);border:1px solid var(--red);color:var(--white);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:50px;padding:0 16px;font-weight:900;display:inline-flex}.loginForm button:disabled{cursor:not-allowed;background:#9ca3af;border-color:#9ca3af}.loginError{color:var(--red-dark);background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;padding:10px 12px;font-size:.9rem;font-weight:800}.loginLoading{font-weight:800}.adminActions{gap:10px;display:grid}.adminPanel a:first-child{background:var(--carbon);border-color:var(--carbon)}@media (max-width:760px){.page{padding:12px}.hero{padding:16px}.heroBrand{flex-direction:column;align-items:stretch;gap:12px}.heroTitle{flex-direction:column;align-items:flex-start;gap:12px}.brandLogo{width:100px}.heroActions{grid-template-columns:1fr;width:100%;display:grid}.logoutLink,.adminHeaderLink{width:100%}.machoteSelector{grid-template-columns:1fr}.previewShell{height:380px}.cardBody{gap:14px;padding:16px}.cardHeader h2{font-size:1.28rem;line-height:1.18}.tags{gap:6px}.tags span{padding:5px 8px;font-size:.76rem}.messageText{padding:14px;font-size:.875rem;line-height:1.45}.cardActions{grid-template-columns:1fr}.adminHeader{flex-direction:column;align-items:stretch}.adminHeaderActions{justify-content:stretch}.adminButton{width:100%}.adminForm{padding:16px}.adminForm fieldset{padding:14px}.adminFieldGrid,.adminAdvancedGrid{grid-template-columns:1fr}.adminFormActions{grid-template-columns:1fr;display:grid}.adminDiagnostic div{grid-template-columns:1fr}.adminTableWrap{background:0 0;border:0;overflow:visible}.adminTable{border-collapse:separate;border-spacing:0 12px;min-width:0}.adminTable thead{display:none}.adminTable,.adminTable tbody,.adminTable tr,.adminTable td{width:100%;display:block}.adminTable tr{background:var(--white);border:1px solid var(--line);border-radius:8px;overflow:hidden}.adminTable td{border-bottom:1px solid var(--line);grid-template-columns:110px 1fr;gap:6px;padding:10px 12px;display:grid}.adminTable td:before{color:var(--muted);content:attr(data-label);text-transform:uppercase;font-size:.74rem;font-weight:900}}
