/* ASPECT SITE-LEADS Red2 dialog (approved layout: 740 px dialog, full screen ≤ 600 px, 44/48 px targets). Scoped to #lead-dialog;
   works on the homepage (body[data-scene=night]) and on /kontakty/ (:root[data-theme=night]). No review panel, no demo states. */
@font-face{font-family:AspectDisplay;src:url('brand/assets/aspect-display.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:AspectText;src:url('brand/assets/roboto.ttf') format('truetype');font-display:swap;font-weight:100 900}
#lead-dialog{--paper:#f8f9fb;--ink:#002554;--text:#203449;--muted:#465763;--line:#c6d0d8;--hover:#e9eef3;--focus:#256eaf;--button:#fff;--field:#fff;--field-line:#8294a5;--error:#a31926;--accent-bg:#002554;--accent-fg:#fff;--soft:#eaf0f5;color-scheme:light;
 padding:0;width:min(740px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 40px);border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--text);box-shadow:0 18px 64px #0004;overflow:hidden;font:400 16px/1.55 AspectText,Roboto,Arial,sans-serif;text-align:left}
:root[data-theme=night] #lead-dialog,body[data-scene=night] #lead-dialog{--paper:#202326;--ink:#f2f3f5;--text:#e2e8ed;--muted:#c0c9d0;--line:#56626c;--hover:#354b60;--focus:#9acbf2;--button:#2d353c;--field:#2c353d;--field-line:#83929e;--error:#ffc1c5;--accent-bg:#dbe9f5;--accent-fg:#002554;--soft:#29343e;color-scheme:dark}
#lead-dialog[open]{display:flex;flex-direction:column}#lead-dialog::backdrop{background:#14233180;backdrop-filter:blur(3px)}
#lead-dialog *{letter-spacing:0;box-sizing:border-box}#lead-dialog :is(button,input,select,textarea){font:inherit}#lead-dialog button{touch-action:manipulation;cursor:pointer}#lead-dialog :is(button,select,input,textarea){border-radius:4px}
#lead-dialog svg{width:20px;height:20px;flex:none;stroke-width:1.7}#lead-dialog button svg{pointer-events:none}#lead-dialog [hidden]{display:none!important}#lead-dialog button:disabled{opacity:.6;cursor:wait}
#lead-dialog :is(h2,h3){font-family:AspectDisplay,Arial,sans-serif;font-weight:400;color:var(--ink)}#lead-dialog p{margin:0}
#lead-dialog summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:10px;list-style:none}#lead-dialog summary::-webkit-details-marker{display:none}#lead-dialog summary::after{content:'+';margin-left:auto;font:400 23px Arial}#lead-dialog details[open]>summary::after{content:'−'}
#lead-dialog :focus-visible{outline:2px solid var(--focus);outline-offset:3px}
#lead-dialog .dialog-scroll{overflow:auto;overscroll-behavior:contain;scroll-padding-block:20px;min-height:0}
#lead-dialog .dialog-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 28px 14px;border-bottom:1px solid var(--line);flex:none}#lead-dialog .dialog-top h2{font-size:28px;line-height:1.25;margin:0}
#lead-dialog .close{width:44px;height:44px;min-width:44px;display:grid;place-items:center;background:transparent;color:var(--ink);border:1px solid var(--line);padding:10px}#lead-dialog .close:hover{background:var(--hover)}
#lead-dialog .form-wrap{padding:24px 28px 20px}
#lead-dialog .mode-switch{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--field-line);padding:4px;border-radius:6px;gap:4px;margin-bottom:22px}#lead-dialog .mode-switch button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:0;background:transparent;color:var(--ink);padding:10px 12px;font-size:16px;line-height:1.35}#lead-dialog .mode-switch button[aria-pressed=true]{background:var(--accent-bg);color:var(--accent-fg)}
#lead-dialog .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}#lead-dialog .field{display:flex;flex-direction:column;gap:6px;min-width:0}#lead-dialog .full,#lead-dialog .field.full{grid-column:1/-1}
#lead-dialog .field>label{font-size:15px;line-height:1.4;color:var(--ink);display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px}#lead-dialog .optional{font-size:12px;color:var(--muted);font-weight:400}
#lead-dialog .field :is(input,select,textarea){display:block;width:100%;min-width:0;background:var(--field);color:var(--ink);border:1px solid var(--field-line);padding:11px 12px;font-size:16px;line-height:1.4;min-height:48px;margin:0}#lead-dialog .field textarea{resize:vertical;min-height:108px}#lead-dialog .field :is(input,textarea)::placeholder{color:var(--muted);opacity:1}#lead-dialog :is(input,textarea){user-select:text}
#lead-dialog .hint{font-size:13px;line-height:1.5;color:var(--muted)}#lead-dialog .error{font-size:14px;line-height:1.45;color:var(--error);overflow-wrap:anywhere}#lead-dialog .error:empty{display:none}#lead-dialog [aria-invalid=true]{border-color:var(--error)!important}
#lead-dialog .counter-row{display:flex;justify-content:space-between;gap:12px}#lead-dialog .counter-row .counter{white-space:nowrap;margin-left:auto}#lead-dialog .contact-rule{margin:14px 0 0}
#lead-dialog .additional{border-block:1px solid var(--line);margin-top:22px;padding:3px 0}#lead-dialog :is(.additional,.survey,.files)>summary{font-size:15px;color:var(--ink)}#lead-dialog .additional[open]{padding-bottom:18px}#lead-dialog .additional .form-grid{padding-top:16px}
#lead-dialog .survey{border-bottom:1px solid var(--line);padding:5px 0}#lead-dialog .survey .form-grid{padding:16px 0}#lead-dialog .survey label{font-size:14px}#lead-dialog .check-group{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}#lead-dialog .check{display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:6px 0;font-size:15px;line-height:1.4;color:var(--text);cursor:pointer}#lead-dialog .check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent-bg);flex:none}#lead-dialog .field .other-text{margin-top:4px}#lead-dialog .result .receipt{font-size:17px;color:var(--ink);font-weight:500}#lead-dialog .file-overflow a,#lead-dialog .file-error a{display:inline-block;min-height:44px;line-height:44px;padding:0 4px;margin:-14px 0;color:var(--ink);text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}#lead-dialog .file-error a{color:var(--error)}
#lead-dialog .files{border-bottom:1px solid var(--line);padding:5px 0}#lead-dialog .file-body{padding:12px 0 18px}
#lead-dialog .file-drop{border:1px dashed var(--field-line);padding:16px;display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:12px;border-radius:4px}#lead-dialog .file-drop.dragging{outline:2px solid var(--focus);background:var(--soft)}#lead-dialog .file-drop .hint{flex:1;min-width:130px}
#lead-dialog .command{border:1px solid var(--line);background:var(--button);color:var(--ink);border-radius:4px;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:10px 15px;text-decoration:none;font:500 14px/1.4 AspectText,Arial,sans-serif;margin:0}#lead-dialog .command:hover{background:var(--hover)}
#lead-dialog .file-picker{position:relative;overflow:hidden;cursor:pointer}#lead-dialog .file-picker:focus-within{outline:2px solid var(--focus);outline-offset:3px}#lead-dialog .file-picker input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
#lead-dialog .file-list{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:0}#lead-dialog .file-row{display:grid;grid-template-columns:24px minmax(0,1fr) 44px;gap:10px;align-items:center;border-top:1px solid var(--line);padding:8px 0}
#lead-dialog .file-name{font-size:14px;overflow-wrap:anywhere;line-height:1.45}#lead-dialog .file-size{font-size:12px;color:var(--muted)}#lead-dialog .file-row button{width:44px;height:44px;border:0;color:var(--ink);background:transparent;display:grid;place-items:center}#lead-dialog .file-row button:hover{background:var(--hover)}
#lead-dialog .file-total{display:flex;justify-content:space-between;gap:8px;margin-top:12px}#lead-dialog .file-security{display:flex;gap:8px;align-items:start;margin-top:12px}#lead-dialog .file-security svg{width:16px;height:16px;margin-top:2px}
#lead-dialog .consent{display:flex;align-items:flex-start;gap:10px;min-height:44px;margin-top:20px;font-size:14px;line-height:1.5;cursor:pointer;color:var(--text)}#lead-dialog .consent input{width:20px;height:20px;margin:3px 0 0;accent-color:var(--accent-bg);flex:none}
#lead-dialog .policy-action{display:inline-flex;align-items:center;max-width:100%;min-height:44px;background:none;border:0;border-radius:0;color:var(--ink);text-decoration:underline;text-underline-offset:3px;padding:0;font-size:14px;text-align:left}
#lead-dialog .policy-note{padding:10px 12px;border-left:2px solid var(--focus);margin:6px 0 12px;font-size:12px;line-height:1.5;color:var(--muted)}
#lead-dialog .submit{width:100%;min-height:48px;border:1px solid var(--accent-bg);background:var(--accent-bg);color:var(--accent-fg);font-weight:500;font-size:16px;padding:12px 16px;display:flex;justify-content:center;align-items:center;gap:10px;margin-top:16px}#lead-dialog .submit:hover{filter:brightness(1.1)}
#lead-dialog .form-status{margin:12px 0 0;padding:12px;border-left:3px solid var(--error);background:var(--soft);font-size:14px}#lead-dialog .form-status:empty{display:none}
#lead-dialog .direct-contact{border-top:1px solid var(--line);margin-top:22px;padding-top:16px;display:flex;flex-wrap:wrap;gap:4px 18px;justify-content:space-between}#lead-dialog .direct-contact :is(button,a){min-height:44px;display:flex;align-items:center;gap:8px;font-size:14px;border:0;padding:4px 0;background:transparent;color:var(--ink);text-decoration:none;user-select:text}#lead-dialog .direct-contact :is(a,button):hover{text-decoration:underline}#lead-dialog .direct-contact button span{overflow-wrap:anywhere}#lead-dialog .direct-contact .email-compose{font-size:13px;text-decoration:underline}
#lead-dialog .copy-status{margin:8px 0 0;font-size:13px;color:var(--text)}#lead-dialog .copy-status:empty{display:none}
#lead-dialog .result{padding:34px 0 16px;text-align:center}#lead-dialog .result>svg{width:42px;height:42px;color:var(--ink);margin-bottom:18px}#lead-dialog .result h3{font-size:28px;line-height:1.3;margin:0 0 16px}#lead-dialog .result p{max-width:460px;margin:0 auto 12px}#lead-dialog .result .command{margin-top:16px}
#lead-dialog .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#lead-dialog .hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
#lead-dialog .busy-icon{animation:lead-spin 1.4s linear infinite}@keyframes lead-spin{to{transform:rotate(360deg)}}
@media(max-width:600px){#lead-dialog{width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;margin:0}#lead-dialog .dialog-top{padding:14px 18px 12px}#lead-dialog .dialog-top h2{font-size:26px}#lead-dialog .form-wrap{padding:20px 18px 26px}#lead-dialog .form-grid{grid-template-columns:1fr;gap:16px}#lead-dialog .check-group{grid-template-columns:1fr}#lead-dialog .mode-switch button{font-size:14px;padding:10px 6px;gap:6px}#lead-dialog .mode-switch svg{width:18px;height:18px}#lead-dialog .mode-switch{margin-bottom:20px}#lead-dialog .direct-contact{display:block}#lead-dialog .direct-contact :is(button,a){width:100%}#lead-dialog .file-drop{padding:12px}}
@media(max-width:350px){#lead-dialog :is(.form-wrap,.dialog-top){padding-left:14px;padding-right:14px}#lead-dialog .mode-switch button svg{display:none}#lead-dialog .dialog-top h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){#lead-dialog *,#lead-dialog *::before,#lead-dialog *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){#lead-dialog :is(button,.mode-switch,.file-drop){border:1px solid ButtonText}#lead-dialog .mode-switch button[aria-pressed=true]{outline:2px solid Highlight}}
/* Entry buttons on /kontakty/ */
.lead-entry{margin-top:12px}
