:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#172033;background:#f5f7fa;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--brand-color: #1f4f82;--brand-text: #ffffff;--footer-color: #172033}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,textarea{font:inherit}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;gap:16px;padding:16px clamp(16px,4vw,40px);background:var(--brand-color);color:var(--brand-text)}.brand-mark{width:108px;min-width:108px;min-height:48px;display:flex;align-items:center}.brand-mark img{display:block;max-width:108px;max-height:52px;object-fit:contain}.brand-mark a{display:inline-flex;align-items:center}.brand-mark a:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-text),transparent 35%);outline-offset:4px}.brand-mark span{font-size:.95rem;font-weight:700;line-height:1.2}.eyebrow{margin:0 0 2px;font-size:.74rem;font-weight:700;letter-spacing:0;text-transform:uppercase;opacity:.78}h1,h2,p{margin-top:0}.app-header h1{margin:0;font-size:clamp(1.1rem,3.8vw,1.55rem);line-height:1.2;letter-spacing:0}.approval-layout{width:min(1180px,100%);margin:0 auto;padding:clamp(16px,4vw,32px);display:grid;gap:18px}.proof-section{position:relative;min-height:220px;border:1px solid #d9e0ea;background:#fff;overflow:hidden}.center-state{min-height:260px;display:flex;align-items:center;justify-content:center;gap:12px;color:#526071}.proof-image{display:block;width:100%;height:auto;opacity:0}.proof-image.loaded{opacity:1}.proof-skeleton{position:absolute;inset:0;z-index:1;display:grid;gap:16px;align-content:start;min-height:260px;padding:18px;background:#fff}.skeleton-line,.skeleton-grid div,.skeleton-proof{border-radius:6px;background:linear-gradient(90deg,#eef2f6 25%,#dfe6ef 37%,#eef2f6 63%);background-size:400% 100%;animation:skeleton-pulse 1.25s ease-in-out infinite}.skeleton-title{width:min(260px,60%);height:24px}.skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.skeleton-grid.two{grid-template-columns:repeat(2,1fr)}.skeleton-grid div{min-height:64px}.skeleton-proof{min-height:180px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.action-panel,.status-panel{background:#fff;border:1px solid #d9e0ea;padding:18px}.action-panel{display:grid;gap:16px;align-content:start}.action-panel p{margin-bottom:0;line-height:1.55}.action-panel p span{display:block;margin-top:8px;color:#526071}.comment-field{display:grid;gap:8px;font-weight:700}.comment-field textarea{width:100%;resize:vertical;min-height:132px;border:1px solid #b9c4d2;padding:12px;color:#172033;font-weight:400}.comment-field textarea:focus{outline:3px solid color-mix(in srgb,var(--brand-color),transparent 72%);border-color:var(--brand-color)}.comment-field textarea[aria-invalid=true]{border-color:#c53030}.field-error{margin:0;color:#9f1d20;font-size:.92rem;font-weight:700;line-height:1.35}.button-stack{display:grid;gap:10px}.primary-button,.secondary-button,.danger-button{min-height:48px;border:1px solid var(--brand-color);padding:10px 16px;font-weight:700;cursor:pointer}.primary-button{background:var(--brand-color);color:var(--brand-text)}.secondary-button{background:#fff;color:var(--brand-color)}.danger-button{border-color:#b42318;background:#b42318;color:#fff}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.58}.inline-error{color:#9f1d20;font-weight:700}.approval-countdown{border:1px solid #fecaca;background:#fef2f2;padding:12px;color:#7f1d1d;font-size:.94rem;font-weight:700;line-height:1.45}.approval-countdown span{display:block;margin-top:6px;color:#7f1d1d}.warning-cancel-button{border-color:#f2b8b5;color:#7f1d1d}.status-panel{width:min(720px,calc(100% - 32px));margin:clamp(32px,9vw,80px) auto}.status-panel h2{margin-bottom:8px;font-size:1.35rem}.status-panel p{margin-bottom:0;line-height:1.5;color:#526071}.status-panel.success{border-left:5px solid #18864b}.status-panel.warning{border-left:5px solid #b7791f}.status-panel.error{border-left:5px solid #c53030}.spinner{width:22px;height:22px;border:3px solid #c5cfda;border-top-color:var(--brand-color);border-radius:999px;animation:spin .8s linear infinite}.app-footer{margin-top:auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 18px;padding:14px clamp(16px,4vw,40px);background:var(--footer-color);color:#fff;font-size:.86rem}.footer-contact{display:flex;flex-wrap:wrap;gap:8px 18px}.footer-reseller-name{font-weight:700}.footer-copyright{margin-left:auto;white-space:nowrap}@media(min-width:900px){.approval-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start}.action-panel{position:sticky;top:18px}}@media(max-width:560px){.app-header{align-items:flex-start}.brand-mark{width:82px;min-width:82px}.brand-mark img{max-width:82px;max-height:42px}.action-panel{position:sticky;bottom:0;z-index:2;border-right:0;border-left:0;margin-right:-16px;margin-left:-16px}.skeleton-grid,.skeleton-grid.two{grid-template-columns:1fr}}@keyframes skeleton-pulse{0%{background-position:100% 50%}to{background-position:0 50%}}@keyframes spin{to{transform:rotate(360deg)}}
