:root{--navy: #1a2b5c;--navy-dark: #101b3d;--navy-tint: #2a3d7c;--gold: #c9a227;--gold-dark: #a9840f;--cream: #faf8f3;--paper: #ffffff;--ink: #1c1f2a;--ink-soft: #4a4f5e;--line: #e4e0d4;--radius: 10px;--shadow: 0 4px 16px rgba(16, 27, 61, .08)}*,*:before,*:after{box-sizing:border-box}html{font-size:87.5%}html,body{height:100%}body{margin:0;font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.45}h1,h2,h3{font-family:Georgia,Times New Roman,serif;color:var(--navy-dark)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:.65rem .85rem;box-shadow:var(--shadow)}.panel h2{margin:0 0 .25rem;font-size:1.05rem}.hint{color:var(--ink-soft);font-size:.8rem;margin:0 0 .5rem}.status{color:var(--ink-soft);font-size:.9rem}.error{background:#fdecea;color:#9a2a1f;border:1px solid #f3c3bd;border-radius:var(--radius);padding:.6rem .9rem;font-size:.9rem;margin:.75rem 0}.empty-state{color:var(--ink-soft);font-style:italic;font-size:.92rem}.dropzone{border:2px dashed var(--navy-tint);border-radius:var(--radius);padding:.6rem .85rem;text-align:center;background:#f5f6fb;cursor:pointer;color:var(--ink);font-size:.88rem}.dropzone.dragover,.dropzone:hover,.dropzone:focus-visible{border-color:var(--gold);background:#f8f3e3;outline:none}.link{color:var(--navy);text-decoration:underline;font-weight:600}.btn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border-radius:var(--radius);font-weight:600;font-size:.85rem;border:2px solid transparent;cursor:pointer;font-family:inherit}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-gold{background:var(--gold);color:var(--navy-dark)}.btn-gold:hover:not(:disabled){background:var(--gold-dark);color:#fff}.btn-navy{background:var(--navy);color:#fff}.btn-navy:hover:not(:disabled){background:var(--navy-tint)}.btn-outline{background:transparent;color:var(--navy);border-color:var(--navy)}.btn-outline:hover:not(:disabled){background:#f5f6fb}.btn-text{background:none;border:none;color:var(--navy);text-decoration:underline;cursor:pointer;font-size:.88rem;padding:0;font-family:inherit}.btn-text:hover{color:var(--gold-dark)}.badge{display:inline-block;padding:.3rem .75rem;border-radius:999px;font-size:.82rem;font-weight:600}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}.data-table{border-collapse:collapse;width:100%;font-size:.88rem}.data-table th,.data-table td{padding:.5rem .7rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.data-table thead th{background:var(--navy);color:#fff;white-space:nowrap}.data-table tbody tr:nth-child(2n){background:#f7f7fb}.type-chip{display:inline-block;background:#f0f1f8;border:1px solid var(--line);border-radius:6px;padding:.15rem .5rem;font-size:.78rem;margin:.15rem .25rem .15rem 0;white-space:nowrap}.status-badge{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:.15rem .55rem;border-radius:4px}.status-badge.blocked{background:#fdecea;color:#9a2a1f}.status-badge.ok{background:#e4f3e6;color:#226b3a}.status-badge.pending{background:#fdf5e0;color:var(--gold-dark)}label{display:block;font-size:.78rem;font-weight:600;color:var(--ink-soft);margin-bottom:.2rem}input[type=text],input[type=number],select,textarea{width:100%;padding:.35rem .5rem;border-radius:6px;border:1px solid var(--line);font-family:inherit;font-size:.85rem;background:#fff;color:var(--ink)}.field{margin-bottom:.45rem}.field-row{display:flex;gap:.85rem;flex-wrap:wrap}.field-row>.field{flex:1;min-width:160px}.field-hint{font-size:.8rem;color:var(--ink-soft);margin:.35rem 0 0}.checkbox-list{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem}.checkbox-label{display:inline-flex;align-items:center;gap:.4rem;font-weight:400;font-size:.9rem;color:var(--ink);cursor:pointer}.checkbox-label input{width:auto}.preview-wrap{margin-top:.75rem;padding-top:.6rem;border-top:1px solid var(--line)}textarea{resize:vertical;font-family:inherit}.expression-field{position:relative}.suggestion-list{list-style:none;margin:.25rem 0 0;padding:.25rem;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:var(--shadow);max-height:180px;overflow-y:auto}.suggestion-list button{width:100%;text-align:left;background:none;border:none;padding:.35rem .5rem;border-radius:4px;cursor:pointer;font-family:inherit;font-size:.88rem;color:var(--ink)}.suggestion-list button:hover{background:#f0f1f8}.suggestion-kind{display:inline-block;font-size:.68rem;text-transform:uppercase;color:var(--ink-soft);width:4.5em}.report-box{background:#f5f6fb;border:1px solid var(--line);border-radius:var(--radius);padding:.6rem .8rem;margin:.5rem 0;font-size:.86rem}.report-box dl{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:.4rem 1rem;margin:0}.report-box dt{color:var(--ink-soft);font-size:.78rem}.report-box dd{margin:0;font-weight:600;color:var(--navy-dark)}.warning-box{background:#fdf5e0;border:1px solid var(--gold);color:var(--gold-dark);border-radius:var(--radius);padding:.75rem 1rem;font-size:.88rem;margin:.75rem 0}
