*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--bg-darkest);color:var(--text-primary);-webkit-font-smoothing:antialiased;background-image:radial-gradient(at 0 0,#6366f11f 0,#0000 50%),radial-gradient(at 100% 100%,#06b6d414 0,#0000 50%);background-attachment:fixed;min-height:100vh;line-height:1.5}a{color:var(--primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:#818cf8;text-decoration:underline}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-dark)}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff26}::-webkit-scrollbar-thumb:hover{background:#ffffff47}.app-container{max-width:1600px;margin:0 auto;padding:1.5rem 2rem}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.glass-panel:hover{border-color:#ffffff24}.badge{border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-obligation{background:var(--mod-obligation-bg);color:var(--mod-obligation);border:1px solid var(--mod-obligation-border)}.badge-prohibition{background:var(--mod-prohibition-bg);color:var(--mod-prohibition);border:1px solid var(--mod-prohibition-border)}.badge-right{background:var(--mod-right-bg);color:var(--mod-right);border:1px solid var(--mod-right-border)}.badge-permission{background:var(--mod-permission-bg);color:var(--mod-permission);border:1px solid var(--mod-permission-border)}.badge-definition{background:var(--mod-definition-bg);color:var(--mod-definition);border:1px solid var(--mod-definition-border)}.badge-declarative{background:var(--mod-declarative-bg);color:var(--mod-declarative);border:1px solid var(--mod-declarative-border)}.badge-verified{color:#34d399;background:#10b98126;border:1px solid #10b98159}.badge-actor{color:#a5b4fc;text-transform:none;background:#6366f11f;border:1px solid #6366f140;font-size:.8rem;font-weight:500}.badge-article{color:var(--text-primary);border:1px solid var(--border-subtle);font-family:var(--font-mono);background:#ffffff0f;font-size:.75rem}.btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;align-items:center;gap:.5rem;padding:.55rem 1.1rem;font-size:.85rem;font-weight:600;display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(135deg,#6366f1,#4f46e5);box-shadow:0 2px 10px #6366f159}.btn-primary:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);transform:translateY(-1px);box-shadow:0 4px 16px #6366f180}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-subtle);background:#ffffff0f}.btn-secondary:hover{background:#ffffff1f;border-color:#fff3}.btn-sm{padding:.35rem .75rem;font-size:.75rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tab-content{animation:.2s ease-out fadeIn;display:none}.tab-content.active{display:block}:root{--bg-darkest:#07090e;--bg-dark:#0d111a;--bg-card:#121826c7;--bg-card-hover:#1a2234e0;--bg-input:#121826;--border-subtle:#ffffff14;--border-focus:#6366f180;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--text-inverse:#0f172a;--primary:#6366f1;--primary-glow:#6366f159;--secondary:#3b82f6;--accent-cyan:#06b6d4;--mod-obligation:#f59e0b;--mod-obligation-bg:#f59e0b24;--mod-obligation-border:#f59e0b4d;--mod-prohibition:#f43f5e;--mod-prohibition-bg:#f43f5e24;--mod-prohibition-border:#f43f5e4d;--mod-right:#10b981;--mod-right-bg:#10b98124;--mod-right-border:#10b9814d;--mod-permission:#06b6d4;--mod-permission-bg:#06b6d424;--mod-permission-border:#06b6d44d;--mod-definition:#a855f7;--mod-definition-bg:#a855f724;--mod-definition-border:#a855f74d;--mod-declarative:#64748b;--mod-declarative-bg:#64748b24;--mod-declarative-border:#64748b4d;--node-chapter:#ec4899;--node-article:#3b82f6;--node-recital:#8b5cf6;--node-concept:#06b6d4;--node-principle:#10b981;--node-lawful-basis:#14b8a6;--node-right:#22c55e;--node-obligation:#f59e0b;--node-penalty:#ef4444;--font-main:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", Consolas, Monaco, monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--shadow-sm:0 2px 4px #0000004d;--shadow-md:0 4px 14px #0006;--shadow-lg:0 10px 30px #0009;--shadow-glow:0 0 24px var(--primary-glow);--transition-fast:.15s ease;--transition-normal:.25s ease}.app-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.25rem;display:flex}.brand-section{align-items:center;gap:.85rem;display:flex}.brand-logo{border-radius:var(--radius-md);background:linear-gradient(135deg,#6366f1,#06b6d4);justify-content:center;align-items:center;width:44px;height:44px;font-size:1.35rem;display:flex;box-shadow:0 0 20px #6366f166}.brand-title h1{letter-spacing:-.02em;background:linear-gradient(90deg,#fff,#cbd5e1);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.35rem;font-weight:700}.brand-title p{color:var(--text-secondary);font-size:.8rem}.header-stats{flex-wrap:wrap;gap:.6rem;display:flex}.stat-pill{border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:#ffffff0a;align-items:center;gap:.4rem;padding:.35rem .85rem;font-size:.78rem;display:flex}.stat-pill strong{color:var(--text-primary)}.stat-pill .indicator-dot{background:#10b981;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #10b981}.nav-tabs{border-bottom:1px solid var(--border-subtle);gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.nav-tab{color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:.5rem;padding:.6rem 1.1rem;font-family:inherit;font-size:.88rem;font-weight:600;display:flex}.nav-tab:hover{color:var(--text-primary);background:#ffffff0a}.nav-tab.active{color:#fff;background:#6366f126;border-color:#6366f159;box-shadow:0 0 16px #6366f133}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.metric-card{flex-direction:column;gap:.4rem;padding:1.1rem 1.3rem;display:flex}.metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:600}.metric-value{color:var(--text-primary);font-size:1.75rem;font-weight:700}.metric-sub{color:var(--text-secondary);align-items:center;gap:.35rem;font-size:.78rem;display:flex}.filter-bar{flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.filter-row-primary{flex-wrap:wrap;gap:.85rem;display:flex}.search-input-wrapper{flex:2;min-width:260px;position:relative}.search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:.9rem;transform:translateY(-50%)}.search-input{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:.65rem .9rem .65rem 2.4rem;font-size:.88rem}.search-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #6366f126}.select-wrapper{flex:1;min-width:160px}.filter-select{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;transition:border-color var(--transition-fast);outline:none;padding:.65rem .9rem;font-size:.88rem}.filter-select:focus{border-color:var(--border-focus)}.filter-row-secondary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;font-size:.82rem;display:flex}.quick-toggles{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.toggle-chip{border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);background:#ffffff0a;padding:.3rem .75rem}.toggle-chip:hover{color:var(--text-primary);background:#ffffff14}.toggle-chip.active{color:#fff;background:#6366f133;border-color:#6366f166;font-weight:600}.filter-actions{align-items:center;gap:.5rem;display:flex}.table-container{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);margin-bottom:1.5rem;overflow-x:auto}.triples-table{border-collapse:collapse;text-align:left;width:100%;font-size:.84rem}.triples-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-subtle);z-index:10;background:#0f1523;padding:.85rem 1rem;font-size:.72rem;font-weight:600;position:sticky;top:0}.triples-table td{vertical-align:top;border-bottom:1px solid #ffffff0a;padding:.9rem 1rem}.triples-table tr:hover td{background:#ffffff05}.triples-table tr.clickable-row{cursor:pointer}.triples-table tr.clickable-row:hover td{background:#6366f10a}.triple-id-cell{font-family:var(--font-mono);color:#a5b4fc;font-size:.78rem;font-weight:600}.source-line-link{font-family:var(--font-mono);color:var(--accent-cyan);border-radius:var(--radius-sm);background:#06b6d414;border:1px solid #06b6d433;padding:.15rem .4rem;font-size:.75rem}.raw-text-cell{color:#cbd5e1;max-width:420px;line-height:1.45}.highlight-match{color:#fef08a;background:#f59e0b59;border-radius:2px;padding:.05rem .2rem}.pagination-bar{border-top:1px solid var(--border-subtle);color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;padding:.85rem 1rem;font-size:.82rem;display:flex}.pagination-controls{align-items:center;gap:.4rem;display:flex}.graph-view-container{grid-template-columns:1fr 340px;gap:1.25rem;height:720px;margin-bottom:1.5rem;display:grid}@media (width<=1024px){.graph-view-container{grid-template-columns:1fr;height:auto}}.graph-canvas-wrapper{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:#080b12;height:100%;min-height:550px;position:relative;overflow:hidden}#cy{width:100%;height:100%}.graph-floating-controls{z-index:10;flex-direction:column;gap:.5rem;display:flex;position:absolute;top:1rem;left:1rem}.graph-floating-controls .btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ad9;padding:.4rem .75rem;font-size:.75rem}.graph-sidebar{flex-direction:column;gap:1rem;padding:1.25rem;display:flex;overflow-y:auto}.graph-sidebar h3{border-bottom:1px solid var(--border-subtle);padding-bottom:.6rem;font-size:1rem;font-weight:700}.legend-item{align-items:center;gap:.5rem;margin-bottom:.35rem;font-size:.8rem;display:flex}.legend-color{border-radius:50%;width:12px;height:12px}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#030712bf;justify-content:center;align-items:center;padding:1.5rem;display:none;position:fixed;inset:0}.modal-overlay.open{display:flex}.modal-box{border-radius:var(--radius-lg);background:#0f1626;border:1px solid #ffffff1f;width:100%;max-width:780px;max-height:90vh;padding:1.75rem;animation:.2s ease-out fadeIn;overflow-y:auto;box-shadow:0 20px 50px #000000b3}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.modal-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:.2rem .5rem;font-size:1.5rem}.modal-close:hover{color:var(--text-primary);background:#ffffff14}.provenance-tier-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#ffffff05;margin-bottom:.85rem;padding:1rem}.tier-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.75rem;font-weight:700;display:flex}.code-hash{font-family:var(--font-mono);border-radius:var(--radius-sm);color:#34d399;word-break:break-all;background:#00000059;justify-content:space-between;align-items:center;padding:.4rem .6rem;font-size:.75rem;display:flex}.audit-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}@media (width<=900px){.audit-grid{grid-template-columns:1fr}}.audit-card{flex-direction:column;gap:1.1rem;padding:1.5rem;display:flex}.checklist-item{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:#ffffff05;border:1px solid #0000;align-items:flex-start;gap:.75rem;padding:.65rem;display:flex}.checklist-item:hover{background:#ffffff0d}.checklist-item.selected{background:#6366f11f;border-color:#6366f159}.audit-status-box{border-radius:var(--radius-md);align-items:center;gap:.75rem;margin-top:.5rem;padding:1rem;font-weight:600;display:flex}.status-ok{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.status-warning{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.status-critical{color:#fb7185;background:#f43f5e26;border:1px solid #f43f5e4d}.assistant-layout{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-card);flex-direction:column;height:740px;display:flex;overflow:hidden}.assistant-header{border-bottom:1px solid var(--border-subtle);background:#0003;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.assistant-prompts-bar{border-bottom:1px solid var(--border-subtle);background:#0000001a;gap:.5rem;padding:.75rem 1.5rem;display:flex;overflow-x:auto}.assistant-prompt-pill{border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);background:#ffffff0a;padding:.35rem .75rem;font-size:.76rem}.assistant-prompt-pill:hover{color:#fff;background:#6366f126;border-color:#6366f159}.assistant-messages-container{flex-direction:column;flex:1;gap:1.25rem;padding:1.5rem;display:flex;overflow-y:auto}.chat-message{flex-direction:column;gap:.4rem;max-width:85%;animation:.2s ease-out fadeIn;display:flex}.chat-message.user-message{align-self:flex-end}.chat-message.user-message .message-content{color:#fff;background:linear-gradient(135deg,#4f46e5,#4338ca);border-radius:14px 14px 2px;padding:.85rem 1.1rem;font-size:.9rem;box-shadow:0 4px 12px #4f46e54d}.chat-message.assistant-message{align-self:flex-start;max-width:92%}.chat-message.assistant-message .message-content{box-shadow:var(--shadow-md);background:#0f172ab3;border:1px solid #ffffff14;border-radius:14px 14px 14px 2px;padding:1.15rem 1.35rem;font-size:.88rem}.message-sender{color:var(--text-muted);font-size:.75rem;font-weight:600}.assistant-input-bar{border-top:1px solid var(--border-subtle);background:#00000040;gap:.75rem;padding:1rem 1.5rem;display:flex}.assistant-input-field{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color var(--transition-fast);outline:none;flex:1;padding:.75rem 1rem;font-size:.9rem}.assistant-input-field:focus{border-color:var(--border-focus)}.dict-sub-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.dict-sub-tab{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0a;padding:.45rem .95rem;font-size:.82rem;font-weight:600}.dict-sub-tab:hover{color:var(--text-primary);background:#ffffff14}.dict-sub-tab.active{color:#fff;background:#6366f133;border-color:#6366f166}.subjects-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1.25rem;margin-bottom:1.5rem;display:grid}.shacl-auditor-container{flex-direction:column;gap:1.5rem;margin-bottom:2rem;display:flex}.shacl-header-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:linear-gradient(135deg,#1e293bb3 0%,#0f172acc 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem;display:flex}.shacl-header-meta{flex-wrap:wrap;gap:.5rem;display:flex}.shacl-workspace{grid-template-columns:1.05fr 1fr;gap:1.5rem;display:grid}@media (width<=1080px){.shacl-workspace{grid-template-columns:1fr}}.shacl-editor-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:#0f172ab3;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.shacl-editor-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.scenario-desc-box{border-left:3px solid var(--primary);border-radius:var(--radius-sm);color:#cbd5e1;background:#6366f114;padding:.75rem 1rem;font-size:.82rem;line-height:1.45}.payload-textarea{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:#a5b4fc;width:100%;height:320px;font-family:var(--font-mono);resize:vertical;transition:border-color var(--transition-fast);background:#090d16;outline:none;padding:1rem;font-size:.82rem;line-height:1.5}.payload-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px #6366f133}.shacl-results-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:#0f172ab3;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.shacl-score-card{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#00000059;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.shacl-score-left{align-items:center;gap:1.25rem;display:flex}.shacl-score-circle{width:64px;height:64px;font-size:1.35rem;font-weight:800;font-family:var(--font-mono);color:#34d399;transition:all var(--transition-normal);background:#10b98126;border:2px solid #34d399;border-radius:50%;justify-content:center;align-items:center;display:flex}.shacl-score-circle.warning{color:#fbbf24;background:#f59e0b26;border-color:#fbbf24}.shacl-score-circle.critical{color:#fb7185;background:#f43f5e26;border-color:#fb7185}.shacl-stats-row{color:var(--text-secondary);gap:1.5rem;font-size:.8rem;display:flex}.shacl-findings-list{flex-direction:column;gap:.85rem;max-height:380px;padding-right:.25rem;display:flex;overflow-y:auto}.shacl-finding-card{border-radius:var(--radius-md);border:1px solid var(--border-subtle);border-left:4px solid var(--mod-prohibition);transition:transform var(--transition-fast);background:#0000004d;flex-direction:column;gap:.5rem;padding:1rem 1.15rem;display:flex}.shacl-finding-card.violation{border-left-color:#f59e0b}.shacl-finding-card.critical{border-left-color:#f43f5e}.finding-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.finding-title{color:#f1f5f9;font-size:.88rem;font-weight:700;line-height:1.35}.finding-details{color:#94a3b8;flex-direction:column;gap:.35rem;font-size:.8rem;display:flex}.finding-provenance-row{border-top:1px solid #ffffff0f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.25rem;padding-top:.5rem;display:flex}.shacl-success-banner{text-align:center;border-radius:var(--radius-md);background:#10b98114;border:1px solid #10b98140;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;display:flex}.shacl-success-banner .check-icon{color:#34d399;background:#10b98133;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:.25rem;font-size:1.5rem;display:flex}.fine-calculator-card{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:linear-gradient(135deg,#1e293b99 0%,#0f172abf 100%);flex-direction:column;gap:1.5rem;margin-bottom:2rem;padding:1.75rem;display:flex}.fine-workspace{grid-template-columns:1fr 1fr;gap:1.75rem;display:grid}@media (width<=1024px){.fine-workspace{grid-template-columns:1fr}}.fine-controls-panel,.fine-summary-panel{flex-direction:column;gap:1.15rem;display:flex}.fine-exposure-hero{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#00000059;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.fine-hero-top{justify-content:space-between;align-items:center;display:flex}.fine-expected-amount{font-size:2.2rem;font-weight:800;font-family:var(--font-mono);color:#fbbf24;letter-spacing:-.02em}.fine-exposure-grid{border-top:1px solid #ffffff14;grid-template-columns:repeat(3,1fr);gap:.75rem;padding-top:.75rem;display:grid}.fine-stat-box{border-radius:var(--radius-sm);background:#ffffff05;padding:.5rem .65rem}.fine-stat-label{color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:600}.fine-stat-value{font-size:.95rem;font-weight:700;font-family:var(--font-mono);margin-top:.2rem}.edpb-step-card{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#ffffff05;align-items:flex-start;gap:.65rem;padding:.65rem .85rem;font-size:.8rem;line-height:1.4;display:flex}.edpb-step-card .step-num{color:var(--primary);white-space:nowrap;background:#6366f126;border-radius:4px;padding:.15rem .4rem;font-size:.7rem;font-weight:800}.factors-container{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=640px){.factors-container{grid-template-columns:1fr}}.factor-group-label{text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem;font-size:.75rem;font-weight:700}.fine-slider{width:100%;accent-color:var(--primary);cursor:pointer}.arch-nodes-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:1.5rem;display:grid}.arch-node-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:transform var(--transition-fast), border-color var(--transition-fast);background:#0f172ad9;flex-direction:column;gap:.75rem;padding:1.15rem;display:flex}.arch-node-card:hover{border-color:var(--border-focus);transform:translateY(-2px)}.arch-node-card.node-type-subject{border-left:4px solid #38bdf8}.arch-node-card.node-type-controller{border-left:4px solid #818cf8}.arch-node-card.node-type-storage{border-left:4px solid #34d399}.arch-node-card.node-type-processor{border-left:4px solid #fbbf24}.arch-node-card.node-type-transfer{border-left:4px solid #f43f5e}.arch-node-card.node-type-high_risk_ai{border-left:4px solid #ec4899}.arch-node-header{align-items:center;gap:.65rem;display:flex}.arch-node-icon{font-size:1.4rem}.arch-node-title{color:#f1f5f9;font-size:.88rem;font-weight:700}.arch-node-meta{color:var(--text-muted);font-size:.74rem}.arch-flows-panel{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#00000040;margin-top:.5rem;padding:1rem 1.25rem}.arch-flow-pill{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#ffffff0a;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.78rem;display:flex}.cross-reg-card{border-left:4px solid var(--accent-indigo);transition:transform var(--transition-fast), border-color var(--transition-fast);margin-bottom:1.25rem;padding:1.5rem}.cross-reg-card:hover{border-color:var(--accent-cyan);transform:translateY(-2px)}.cross-reg-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.85rem;display:flex}.cross-reg-title{color:#f8fafc;margin-bottom:.5rem;font-size:1.1rem;font-weight:700}.cross-reg-desc{color:#cbd5e1;margin-bottom:1rem;font-size:.86rem;line-height:1.5}.cross-reg-articles-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.article-chip{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:#0f172a99;padding:.75rem 1rem}.article-chip.chip-gdpr{border-left:3px solid #6366f1}.article-chip.chip-ai{border-left:3px solid #ec4899}.article-chip.chip-nis2{border-left:3px solid #10b981}.chip-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;margin-bottom:.25rem;font-size:.72rem;font-weight:700}.chip-val{color:#f1f5f9;font-size:.85rem;font-weight:600}.cross-reg-measures{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#00000040;margin-top:.85rem;padding:.85rem 1.15rem}.timeline-milestone-card{border-radius:var(--radius-md);border:1px solid var(--border-subtle);transition:all var(--transition-fast);background:#0f172a73;padding:1.2rem}.timeline-milestone-card:hover{border-color:#6366f166}.timeline-milestone-card.milestone-breached{background:#ef44440d;border-color:#ef444480}.cross-filter-btn{border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0a;padding:.45rem 1rem;font-size:.82rem;font-weight:600}.cross-filter-btn:hover{color:var(--text-primary);background:#ffffff14}.cross-filter-btn.active{border-color:var(--accent-cyan);color:#fff;background:linear-gradient(135deg,#6366f133,#06b6d433);box-shadow:0 0 12px #06b6d440}.linter-editor{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:#f1f5f9;width:100%;height:380px;font-family:var(--font-mono);resize:vertical;transition:border-color var(--transition-fast);background:#0f172ab3;outline:none;padding:1rem;font-size:.82rem;line-height:1.5}.linter-editor:focus{border-color:var(--accent-indigo);box-shadow:0 0 10px #6366f140}.dpia-criterion-card{border:1px solid var(--border-subtle);transition:all var(--transition-fast)}.dpia-criterion-card:hover{background:#ffffff08;border-color:#6366f166}.dpia-criterion-card.active-criterion{border-color:var(--accent-indigo);background:#6366f114}.dpia-tom-card{border:1px solid var(--border-subtle);transition:all var(--transition-fast)}.dpia-tom-card:hover{background:#ffffff08;border-color:#10b98166}.dpia-tom-card.active-tom{background:#10b98114;border-color:#10b981}.dsar-ticket-card{transition:all var(--transition-fast);border-left:4px solid #6366f1}.dsar-ticket-card:hover{border-color:var(--accent-cyan);transform:translateY(-2px)}.dsar-ticket-card.border-urgent{border-left-color:#f59e0b}.dsar-ticket-card.border-breached{background:#ef444408;border-left-color:#ef4444}
