:root{--deep-black:#0f1113;--charcoal:#171c1d;--dark-olive:#2a2f1e;--field-green:#485534;--sage:#6e7760;--sand:#d6d2c4;--light-neutral:#f2f1eb;--accent-olive:#a4a45b;--alert-warning:#8c5a3c;--line:#d6d2c438;--bg:var(--deep-black);--surface:#141819;--surface-raised:var(--charcoal);--surface-muted:#202421;--preview-bg:var(--deep-black);--text:var(--sand);--text-strong:var(--light-neutral);--muted:#b9b8a3;--border:var(--line);--border-strong:var(--sage);--primary:var(--field-green);--primary-hover:var(--sage);--primary-text:var(--light-neutral);--focus:#a4b3826b;--warning-bg:#48553457;--warning-border:var(--accent-olive);--warning-text:var(--light-neutral);--shadow-soft:0 18px 50px #0f111357;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", ui-monospace, monospace;color:var(--text);background:var(--bg);font:16px/1.45 var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;letter-spacing:0}html{overflow-x:hidden}body{background:radial-gradient(circle at top left, #a4a45b14, transparent 30rem), linear-gradient(135deg, #111414, var(--deep-black));min-width:320px;min-height:100svh;margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit}.app-shell{box-sizing:border-box;width:min(1180px,100%);margin:0 auto;padding:22px}.app-header{border:1px solid var(--border);background:linear-gradient(135deg, var(--deep-black), var(--charcoal) 48%, var(--dark-olive)), var(--surface-raised);box-shadow:var(--shadow-soft);border-radius:18px;align-items:center;margin:0 0 18px;padding:18px;display:flex;position:relative;overflow:hidden}.app-header:after{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(#d6d2c40a 1px,#0000 1px),linear-gradient(90deg,#d6d2c40a 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:38px 38px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000);mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000)}.brand-copy{z-index:1;width:100%;min-width:0;position:relative}.title-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.app-header h1{color:var(--text-strong);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:clamp(1.85rem,6vw,2.7rem);line-height:.95}.header-status{border:1px solid var(--border);min-height:34px;color:var(--sand);white-space:nowrap;background:#0f11139e;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:.78rem;font-weight:700;display:flex}.status-icon{width:17px;height:17px;color:var(--accent-olive)}.app-description{max-width:680px;color:var(--sand);margin:6px 0 0;font-size:.9rem}.privacy-note{border:1px solid var(--warning-border);color:var(--warning-text);background:linear-gradient(90deg,#4855346b,#2a2f1eb8);border-radius:10px;margin:0 0 18px;padding:10px 13px;font-size:.9rem;font-weight:700;box-shadow:inset 0 0 0 1px #0f111333}.report-tabs{border:1px solid var(--border);max-width:420px;box-shadow:var(--shadow-soft);background:#0f1113b8;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:0 0 18px;padding:4px;display:grid}.report-tabs button,.primary-button,.secondary-button{min-height:44px;font:inherit;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:5px;font-size:.82rem;font-weight:800}.report-tabs button{color:var(--text);background:0 0}.report-tabs button.active{color:var(--primary-text);background:linear-gradient(180deg, var(--field-green), var(--dark-olive));border-color:#a4a45b5c}.workspace{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.report-form,.preview-panel{border:1px solid var(--border);min-width:0;box-shadow:var(--shadow-soft);background:#141918f5;border-radius:14px}.panel-header{border-bottom:1px solid var(--border);background:#0f1113ad;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.panel-header h2{color:var(--text-strong);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.82rem}.fields{gap:9px;padding:14px;display:grid}.field{gap:5px;display:grid}.field span{color:var(--text-strong);text-transform:uppercase;font-size:.78rem;font-weight:800}.field-label{align-items:center;gap:8px;display:flex}.field-label svg{width:15px;height:15px;color:var(--accent-olive);stroke-width:2.2px;flex:none}input,select,textarea{border:1px solid var(--border);width:100%;color:var(--text-strong);font:inherit;background:#0f1113bd;border-radius:5px;font-size:.88rem}input,select{min-height:40px;padding:8px 10px}textarea{resize:vertical;min-height:74px;padding:10px}select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.primary-button{color:var(--primary-text);background:linear-gradient(180deg, var(--field-green), var(--dark-olive));border-color:#a4a45b38;justify-content:center;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.primary-button:hover{background:linear-gradient(180deg, var(--sage), var(--field-green))}.secondary-button{color:var(--text-strong);border-color:var(--border-strong);background:#0f1113c7;justify-content:center;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.primary-button svg,.secondary-button svg{flex:none;width:16px;height:16px}.secondary-button:hover{background:var(--surface-muted)}.report-preview{min-height:420px;color:var(--text-strong);background:linear-gradient(#d6d2c406 1px, transparent 1px), var(--preview-bg);font:.92rem/1.55 var(--mono);white-space:pre-wrap;background-size:100% 28px;border-radius:0 0 14px 14px;margin:0;padding:16px;overflow:auto}@media (width>=900px){.app-shell{padding:28px 22px}.workspace{grid-template-columns:minmax(0,.95fr) minmax(320px,1fr);align-items:start}.preview-panel{position:sticky;top:24px}}@media (width<=640px){.app-header{align-items:flex-start}.title-row{flex-direction:column;align-items:flex-start;gap:8px}.header-status{white-space:normal}}@media (width<=520px){.app-shell{padding:16px}.panel-header{flex-direction:column;align-items:stretch}.primary-button,.secondary-button{width:100%}}
