/* Shares the homepage data-theme system and syn-theme preference. */
body.presentation-app {
 --bg:var(--syn-bg);--surface:var(--syn-panel-solid);--surface-2:var(--syn-bg-2);
 --text:var(--syn-text);--muted:var(--syn-muted);--line:var(--syn-line);
 --accent:var(--syn-blue);--accent-dark:var(--syn-violet);--shadow:var(--syn-shadow);
 --success:#137c4b;--success-bg:#e9f8f0;--warning:#735000;--warning-bg:#fff5df;--danger:#a52a2a;--danger-bg:#fff0f0;
 background:var(--syn-bg);color:var(--syn-text);
}
html[data-theme="dark"] body.presentation-app {--success:#94ebbd;--success-bg:#102a22;--warning:#ffdc99;--warning-bg:#302516;--danger:#ffb5b5;--danger-bg:#321a23;}
.presentation-app .hero {text-align:center;display:block;padding:48px 0 32px;background:none;border:0;}
.presentation-app .hero h1 {font-size:clamp(36px,4.6vw,62px);line-height:1.12;letter-spacing:-.04em;color:var(--text);margin:18px 0;}
.presentation-gradient {background:linear-gradient(110deg,var(--syn-blue),var(--syn-violet),#008b89);background-clip:text;-webkit-background-clip:text;color:transparent;}
html[data-theme="dark"] .presentation-gradient {background-image:linear-gradient(110deg,#929bff,#b791ff,#00eeb5);}
.presentation-app .hero p {max-width:740px;margin:0 auto;color:var(--muted);line-height:1.8;}
.presentation-app .eyebrow {color:var(--syn-blue);letter-spacing:.16em;font-size:11px;}
@keyframes presentationOrbit {to{--syn-angle:360deg}}
.presentation-app .card {border:1px solid transparent;border-radius:22px;background:linear-gradient(var(--surface),var(--surface)) padding-box,conic-gradient(from var(--syn-angle),var(--syn-line),var(--syn-cyan),var(--syn-line) 30%,var(--syn-line) 55%,var(--syn-violet),var(--syn-line) 82%) border-box;animation:presentationOrbit 12s linear infinite;box-shadow:var(--shadow);padding:28px;}
.presentation-app .button {border:1px solid transparent;border-radius:12px;color:var(--text);background:linear-gradient(var(--surface),var(--surface)) padding-box,conic-gradient(from var(--syn-angle),var(--syn-cyan),var(--syn-violet),var(--syn-green),var(--syn-cyan)) border-box;animation:presentationOrbit 5s linear infinite;box-shadow:0 8px 24px #5c33ff18;transition:transform .2s,box-shadow .2s;}
.presentation-app .button.primary {color:#fff;background:linear-gradient(115deg,#485aff,#7059ff) padding-box,conic-gradient(from var(--syn-angle),#fff,var(--syn-cyan),var(--syn-green),#fff) border-box;border-width:2px;}
.presentation-app .button:hover {transform:translateY(-2px);box-shadow:0 8px 26px #5c33ff32;}
.presentation-app .button:disabled {opacity:.6;transform:none;cursor:wait;}
.presentation-app .drop-zone {border:1px dashed var(--syn-violet);background:radial-gradient(ellipse at top,#8e5cff12,transparent 80%),var(--surface-2);border-radius:16px;padding:34px 20px;}
.presentation-app .drop-zone.dragging,.presentation-app .drop-zone:hover {border-color:var(--syn-cyan);box-shadow:inset 0 0 28px #00cfe814;}
.presentation-app .drop-zone strong {color:var(--text);}
.presentation-app .drop-zone span {color:var(--muted);}
.presentation-app input:not([type=checkbox]):not([type=radio]):not([type=file]),.presentation-app textarea,.presentation-app select {background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:12px;min-width:0;}
.presentation-app input[type=checkbox],.presentation-app input[type=radio] {accent-color:var(--syn-violet);}
.presentation-app .check-grid label {background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:12px;}
.presentation-app fieldset {border-color:var(--line);}
.presentation-app .metadata-grid label span,.presentation-app legend {color:var(--text);font-weight:650;}
.presentation-app .metadata-grid label {font-size:13px;}
.presentation-app #metadataStatus {color:var(--muted);}
.presentation-app .file-chip,.presentation-app .image-result,.presentation-app details {background:var(--surface-2);color:var(--text);border-color:var(--line);}
.presentation-app .cleaner-tabs {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.presentation-app .cleaner-tab {border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:14px;box-shadow:0 6px 20px #5c33ff0a;min-width:0;}
.presentation-app .cleaner-tab.active {color:var(--text);border-color:var(--syn-violet);background:linear-gradient(120deg,#8e5cff14,#00cfe80a),var(--surface);}
.presentation-app .cleaner-tab-copy small {color:var(--muted);}
.presentation-app table {width:100%;border-collapse:collapse;background:var(--surface);}
.presentation-app th,.presentation-app td {text-align:left;padding:12px;border-bottom:1px solid var(--line);color:var(--text);overflow-wrap:anywhere;}
.presentation-app th {background:var(--surface-2);}
.presentation-app a:focus-visible,.presentation-app button:focus-visible,.presentation-app input:focus-visible,.presentation-app summary:focus-visible {outline:2px solid var(--syn-violet);outline-offset:3px;}
@media(max-width:800px){.presentation-app .cleaner-tabs{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px){.presentation-app .card{padding:18px}.presentation-app .hero{padding-top:26px}.presentation-app .metadata-grid{grid-template-columns:1fr}.presentation-app .hero h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){.presentation-app *{animation:none!important;transition:none!important}.presentation-app:before,.presentation-app:after{animation:none!important}}
