:root{--bg: #f7f8fb;--card: #fff;--text: #1d2033;--muted: #6b7084;--line: #e8eaf0;--line-strong: #dcdfe7;--accent: #6d3fe0;--accent-hover: #5b2fcc;--accent-soft: #f3effd;--danger: #c4320a;--ok: #067647;--radius: 12px;--shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 4px 16px rgba(16, 24, 40, .05);--sidebar: 248px;font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);font-size:15px;line-height:1.5}*{box-sizing:border-box}body{margin:0}h1{font-size:1.4rem;font-weight:600;margin:0 0 .75rem;letter-spacing:-.01em}h2{font-size:1.02rem;font-weight:600;margin:1.25rem 0 .5rem}a{color:var(--accent)}.muted{color:var(--muted)}.small{font-size:.85rem}.center{display:grid;place-items:center;min-height:100vh}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:1.1rem .9rem;z-index:20}.sidebar .brand{display:flex;align-items:center;gap:.55rem;font-size:1.2rem;font-weight:600;color:var(--accent);padding:0 .5rem 1rem}.logo{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--accent);color:#fff;font-size:.95rem}.sidebar nav{flex:1;overflow-y:auto}.nav-section{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:1rem .6rem .4rem;border-top:1px solid var(--line);margin-top:.5rem}.nav-section:first-child{border-top:none;margin-top:0;padding-top:.25rem}.sidebar nav a{display:flex;align-items:center;gap:.65rem;padding:.5rem .6rem;margin:1px 0;border-radius:8px;color:var(--text);text-decoration:none;font-size:.92rem}.sidebar nav a:hover{background:#f5f5f8}.sidebar nav a.active{background:var(--accent-soft);color:var(--accent);font-weight:500}.icon{width:18px;height:18px;flex:none}.sidebar-user{display:flex;align-items:center;gap:.6rem;padding:.75rem .4rem 0;border-top:1px solid var(--line)}.sidebar-user .who{flex:1;min-width:0}.sidebar-user .name{font-size:.9rem;font-weight:500}.sidebar-user .small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:600;flex:none}button.iconbtn{background:#fff;color:var(--muted);border:1px solid var(--line-strong);padding:.35rem;border-radius:8px;display:inline-grid;place-items:center}button.iconbtn:hover{color:var(--accent);border-color:var(--accent);background:#fff}.mobilebar,.backdrop{display:none}.content{margin-left:var(--sidebar);padding:1.75rem 2rem}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.25rem;margin-bottom:1rem;box-shadow:var(--shadow)}.row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.spread{justify-content:space-between}.grow{flex:1;min-width:180px}.stack>*+*{margin-top:.6rem}input,select,textarea{font:inherit;padding:.55rem .75rem;border:1px solid var(--line-strong);border-radius:8px;background:#fff;width:100%;color:var(--text);transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #6d3fe01f}input:disabled,select:disabled,textarea:disabled{background:#f9fafb;color:var(--muted)}textarea{min-height:4rem;resize:vertical}label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.2rem}button{font:inherit;font-weight:500;padding:.55rem 1rem;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}button.secondary{background:#fff;color:var(--text);border-color:var(--line-strong)}button.secondary:hover:not(:disabled){background:#fff;color:var(--accent);border-color:var(--accent)}button.danger{background:#fff;color:var(--danger);border-color:var(--danger)}button.danger:hover:not(:disabled){background:#fff4ed;border-color:var(--danger)}button.link,button.link:hover:not(:disabled){background:none;border:none;color:var(--accent);padding:0;font-weight:400}button:disabled{opacity:.5;cursor:default}.error{color:var(--danger);background:#fff6f3;border:1px solid #fdd5c7;padding:.6rem .8rem;border-radius:8px}.success{color:var(--ok);background:#f0fdf5;border:1px solid #b7ebcb;padding:.6rem .8rem;border-radius:8px}.badge{display:inline-block;font-size:.75rem;font-weight:500;padding:.15rem .55rem;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.badge.warn{background:#fff8e6;color:#b25e09;border:1px solid #fde5b0}.list{list-style:none;margin:0;padding:0}.list li{border-bottom:1px solid var(--line)}.list li:last-child{border-bottom:none}.list a.item{display:block;padding:.75rem .25rem;text-decoration:none;color:inherit}.list a.item:hover{background:#faf8ff}.transcript .seg{display:grid;grid-template-columns:9rem 1fr;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--line)}.transcript .who{font-weight:600;font-size:.9rem}.transcript .who .muted{font-weight:400;display:block}.transcript .text{cursor:text;white-space:pre-wrap}.transcript .text:hover{background:#fafbfc}.speaker-0{color:#6d3fe0}.speaker-1{color:#7a2e0e}.speaker-2{color:#05603a}.speaker-3{color:#6941c6}.code{font-family:ui-monospace,Consolas,monospace;font-size:.85rem;word-break:break-all;background:#f2f4f7;padding:.5rem;border-radius:6px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.45rem .4rem;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.75rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.login{max-width:360px;margin:12vh auto}a.button{display:inline-block;padding:.55rem 1rem;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;text-decoration:none;white-space:nowrap;font-weight:500}a.button:hover{background:var(--accent-hover)}button.small{padding:.3rem .7rem;font-size:.85rem}.danger-text{color:var(--danger)!important}.pre{white-space:pre-wrap;margin:0}h2.first{margin-top:0}.actions{margin-bottom:1rem}.busy{background:#faf7ff;border-color:#e2d7fb;color:#4b2aa8}.pkg-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(340px,26vw,460px);gap:1rem;align-items:start}.pkg-side{position:sticky;top:1.25rem;max-height:calc(100vh - 2.5rem);overflow-y:auto}.req{padding:.6rem 0;border-bottom:1px solid var(--line)}.req:last-child{border-bottom:none}.req .row.small{margin:.25rem 0}.sub{padding:.6rem;border:1px solid var(--line);border-radius:8px}.badge.prio-obligatoriu{background:#fef3f2;color:var(--danger)}.badge.prio-dorit{background:#fffaeb;color:#b54708}.badge.prio-optional{background:#f2f4f7;color:var(--muted)}.sources .src{padding:.4rem .5rem;border-radius:6px;margin:.25rem 0;font-size:.9rem}.sources .src.hit{background:#fff6d6}.chat .msgs{max-height:45vh;overflow-y:auto;margin-bottom:.6rem}.chat .msg{padding:.45rem .6rem;border-radius:8px;margin:.35rem 0;font-size:.92rem}.chat .msg.user{background:var(--accent-soft);margin-left:1.5rem}.chat .msg.assistant{background:#f2f4f7;margin-right:1.5rem}.offer-page .pkg-layout{grid-template-columns:minmax(0,1fr) clamp(320px,26vw,460px)}.table-wrap{overflow-x:auto}.badge.ok{background:#ecfdf3;color:var(--ok)}.badge.danger,.badge.src-lipsa{background:#fef3f2;color:var(--danger)}.badge.src-manual{background:#fffaeb;color:#b54708}.deviz td{padding:.35rem .3rem}.deviz input,.deviz select{padding:.3rem .35rem}.deviz td.desc{min-width:16rem}.deviz .just{font-style:italic;margin-top:.15rem}.deviz tr.missing{background:#fff8f7}.num{text-align:right!important;white-space:nowrap}.nowrap{flex-wrap:nowrap}.params{margin:.5rem 0 .75rem;gap:.75rem}.params label{display:flex;flex-direction:column;gap:.15rem;margin:0}.params select{width:5.5rem}.add-lines{margin-top:.75rem}.picker{margin-top:.75rem;padding:.6rem;border:1px solid var(--line);border-radius:8px;background:#fafbfc}.picker-list{max-height:18rem;overflow-y:auto}.picker-item{display:flex;justify-content:space-between;gap:1rem;width:100%;text-align:left;background:#fff;color:var(--text);border:1px solid var(--line);margin:.2rem 0;white-space:normal}.picker-item:hover{background:var(--accent-soft)}.totals-card{display:flex;gap:2rem;flex-wrap:wrap;align-items:flex-start}.totals{width:auto;min-width:18rem}.totals td{padding:.3rem .5rem}.totals tr.strong td{font-weight:700}.totals.internal{color:var(--muted)}a.button.secondary-link{background:#fff;color:var(--text);border:1px solid var(--line-strong)}a.button.secondary-link:hover{color:var(--accent);border-color:var(--accent)}tr.clickable{cursor:pointer}tr.clickable:hover{background:var(--accent-soft)}tr.inactive{opacity:.5}.norms input.small{margin-top:.25rem;font-size:.8rem}fieldset{border:none;padding:0;margin:0}@media (max-width: 900px){.mobilebar{display:flex;align-items:center;gap:.75rem;position:sticky;top:0;z-index:15;background:#fff;border-bottom:1px solid var(--line);padding:.55rem .9rem}.mobilebar .brand{font-weight:600;color:var(--accent);font-size:1.1rem}.sidebar{transform:translate(-100%);transition:transform .2s;box-shadow:0 0 40px #10182826}.menu-open .sidebar{transform:none}.menu-open .backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#1018284d;z-index:18}.content{margin-left:0;padding:1rem}}@media (max-width: 640px){.transcript .seg{grid-template-columns:1fr;gap:.2rem}.content{padding:.7rem}.hide-mobile{display:none}}@media (max-width: 900px){.pkg-layout,.offer-page .pkg-layout{grid-template-columns:1fr}.pkg-side{position:static;max-height:none}}textarea.autotext{overflow:hidden;resize:none;min-height:2.4rem;line-height:1.45}.offer-bottom{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;align-items:start}.offer-bottom .totals-card{margin-bottom:1rem}.deviz td.desc{min-width:22rem}.deviz textarea.autotext{min-height:2rem;padding:.3rem .45rem}@media (max-width: 900px){.offer-bottom{grid-template-columns:1fr}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182859;display:grid;place-items:center;z-index:50;padding:1rem}.modal{background:#fff;border-radius:var(--radius);box-shadow:0 20px 50px #10182833;padding:1.25rem 1.4rem;max-width:440px;width:100%}.modal p{margin:0 0 1rem}td.nowrap,th.nowrap{white-space:nowrap}.versions{margin-top:1rem}.versions-toggle{font-weight:600;font-size:.95rem;color:var(--text, inherit)!important}.versions-table{margin-top:.6rem}.versions-table tr.current td{background:var(--accent-soft)}.versions-table .badge{margin-left:.35rem}.audit-table td{font-size:.875rem}.audit-table tr.warn-row td{background:#fff8eb}
