:root {--ink:#111214;--line:#e5e6e7;--muted:#777b80;--paper:#f6f7f8;--white:#fff}
*{box-sizing:border-box}html{font-family:Inter,"Segoe UI",Arial,sans-serif}body{margin:0;color:var(--ink);background:var(--paper);font-size:14px}a{color:inherit;text-decoration:none}
.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:#121315;color:#fff;display:flex;flex-direction:column;padding:28px 18px}.brand{display:flex;gap:12px;align-items:center;padding:7px 10px 28px;border-bottom:1px solid #33373b;margin-bottom:24px}.brand img{width:57px;height:57px;object-fit:contain}.brand span{font-size:26px;font-weight:750;letter-spacing:1px}.brand small{display:block;font-size:8px;font-weight:550;letter-spacing:1px;color:#c8c8c8;margin-top:3px}.nav{display:flex;flex-direction:column;gap:8px}.nav a{padding:14px;border-radius:8px;color:#c9c9c9;font-weight:550}.nav a:hover,.nav a.active{background:#292c2f;color:#fff}.sidebar-foot{margin-top:auto;padding:18px 13px 3px;border-top:1px solid #33373b;font-weight:650;font-size:12px}.sidebar-foot span{display:block;color:#92989e;font-size:11px;font-weight:400;margin-top:7px}
.main-wrap{min-width:0}.topbar{height:70px;background:var(--white);border-bottom:1px solid var(--line);padding:0 42px;display:flex;align-items:center;justify-content:space-between;gap:12px}.breadcrumbs{font-size:11px;letter-spacing:1.2px;font-weight:750}.breadcrumbs span{color:#999;margin:0 9px}.account{display:flex;align-items:center;gap:15px;color:#444}.account form{margin:0}.logout{background:none;border:1px solid var(--line);border-radius:6px;padding:8px 12px;cursor:pointer;color:#333}.logout:hover{background:#f3f3f3}
.content{max-width:1340px;margin:auto;padding:33px 42px}.dev-note{display:inline-block;border:1px solid #d7d7d7;padding:8px 11px;background:#fff;color:#737373;border-radius:4px;letter-spacing:.6px;font-size:10px;font-weight:700;margin-bottom:24px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#777;margin-bottom:8px}h1{font-size:33px;letter-spacing:-1.2px;line-height:1.15;margin:0 0 9px}p{margin:0;color:var(--muted);line-height:1.6}.date-label{color:#9b9b9b;font-size:12px;letter-spacing:1.8px}
.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:24px}.metric{border:1px solid var(--line);background:#fff;border-radius:10px;padding:25px;display:flex;flex-direction:column;min-height:163px}.metric span{font-size:12px;color:#62666a;font-weight:650}.metric strong{font-size:45px;font-weight:700;letter-spacing:-2px;margin:8px 0 6px}.metric small{color:#858585}.metric.dark{color:#fff;background:#17181a;border-color:#17181a}.metric.dark span,.metric.dark small{color:#c9c9c9}
.panel{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:24px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:24px 25px;border-bottom:1px solid var(--line)}h2{font-size:17px;margin:0 0 5px}.panel-head p{font-size:12px}.inline-link{font-size:12px;font-weight:700;white-space:nowrap}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;min-width:640px}th,td{padding:16px 22px;border-bottom:1px solid #f0f0f0}th{font-size:10px;color:#7c7c7c;letter-spacing:.8px;text-transform:uppercase;background:#fcfcfc}td{font-size:12px}td strong{font-weight:650}.status{border:1px solid #dedede;border-radius:30px;padding:5px 9px;white-space:nowrap}.empty{padding:34px 25px}.empty p{margin-top:8px}.next-step{border-left:3px solid #171717;background:#fff;border-radius:0 8px 8px 0;padding:23px;display:flex;flex-direction:column;gap:7px;color:#777;font-size:10px;font-weight:750;letter-spacing:1px}.next-step strong{font-size:16px;color:#181818;letter-spacing:0}.next-step span{font-size:12px;color:#777;letter-spacing:0;font-weight:400}.action-link{background:#17181a;color:#fff;padding:13px 16px;border-radius:6px;font-weight:700;font-size:12px;white-space:nowrap}
.login-body{display:grid;place-items:center;min-height:100vh;background:#ebedef;padding:20px}.login-panel{width:min(100%,420px);border-radius:12px;overflow:hidden;box-shadow:0 20px 65px #0001;background:#fff}.login-logo{display:block;object-fit:contain;background:#17181a;width:100%;height:170px;padding:20px 95px}.login-inner{padding:32px}.login-inner h1{font-size:28px}.login-inner p{margin-bottom:23px;font-size:13px}.login-form{display:flex;flex-direction:column;gap:8px}.login-form label{font-size:12px;font-weight:650;margin-top:8px}.login-form input{border:1px solid #d4d5d6;border-radius:6px;padding:12px;font:inherit;outline-offset:2px}.primary-button{padding:14px;background:#17181a;color:#fff;border:0;border-radius:6px;font:inherit;font-weight:700;cursor:pointer;margin-top:16px}.login-inner small{display:block;margin-top:19px;font-size:11px;color:#888}.error{background:#ffefef;color:#a11;padding:12px;border-radius:5px;font-size:12px}
@media(max-width:850px){.app{grid-template-columns:1fr}.sidebar{padding:14px 17px}.brand{margin:0;padding:0;border:0}.brand img{width:40px;height:40px}.brand span{font-size:19px}.nav{flex-direction:row;overflow:auto;margin-top:12px}.nav a{white-space:nowrap;padding:10px 12px}.sidebar-foot{display:none}.topbar{padding:0 18px;height:55px}.content{padding:20px 17px}.metric-grid{grid-template-columns:1fr 1fr}.metric-grid .metric:last-child{grid-column:1/-1}.page-heading{align-items:flex-start}.page-heading h1{font-size:27px}.date-label{display:none}}@media(max-width:420px){.metric-grid{grid-template-columns:1fr}.metric-grid .metric:last-child{grid-column:auto}.account{gap:6px}.account span{display:none}.panel-head{align-items:flex-start;flex-direction:column}}

/* 0.2 – ügyfél- és projektfelviteli űrlapok */
.form-panel{max-width:850px}.form-panel-head{padding:25px 28px 0}.form-panel-head p{font-size:12px;margin-top:5px}.erp-form{padding:18px 28px 28px}.form-row{display:flex;flex-direction:column;gap:7px;margin-bottom:21px}.form-row label{font-weight:650;font-size:12px}.form-row label span{color:#9a3a3a}.form-row input,.form-row select,.form-row textarea{width:100%;background:#fff;border:1px solid #d5d5d5;border-radius:7px;padding:12px 13px;font:inherit;color:#17181a;min-height:44px}.form-row textarea{resize:vertical}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:2px solid #17181a;outline-offset:1px}.form-row small{color:#777}.form-actions{display:flex;gap:11px;align-items:center;flex-wrap:wrap;margin-top:25px}.form-actions .primary-button{margin:0;padding:13px 19px}.secondary-button{border:1px solid #d5d5d5;border-radius:6px;padding:12px 18px;font-weight:650;background:#fff}.field-error,.form-errors{color:#9a2626;font-size:12px}.field-error ul,.form-errors ul{padding-left:20px;margin:4px 0}.message-list{margin-bottom:18px}.flash-message{background:#f5f6f5;border:1px solid #dcdedc;border-left:3px solid #17181a;border-radius:6px;padding:13px 16px;font-size:13px}.flash-success{border-left-color:#2a7750}.flash-warning{border-left-color:#b07829}
@media(max-width:650px){.form-panel-head{padding:20px 18px 0}.erp-form{padding:15px 18px 22px}.page-heading{flex-wrap:wrap}}

/* 0.3 – részletes projektadatlap és szerkesztés */
.table-link{color:#17181a;text-decoration:none;border-bottom:1px solid transparent}
.table-link:hover,.table-link:focus-visible{border-bottom-color:#17181a}
.project-subnav{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px;border-bottom:1px solid var(--line);padding-bottom:11px}
.project-tab{font-size:12px;font-weight:700;padding:10px 13px;border-radius:6px;color:#777}
.project-tab.current{background:#17181a;color:#fff}
.project-tab.planned{color:#8d8d8d;background:#f0f0f0;font-weight:500;cursor:default}
.project-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:23px}
.project-summary-box{background:#fff;border:1px solid var(--line);border-radius:9px;padding:20px;min-width:0}
.project-summary-box .label{display:block;color:#777;font-size:11px;font-weight:650;margin-bottom:10px}
.project-summary-box .value{font-weight:700;font-size:17px;word-break:break-word}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.detail-item{padding:19px 25px;border-bottom:1px solid var(--line);min-width:0}
.detail-item dt{color:#777;font-size:11px;margin-bottom:7px}
.detail-item dd{font-size:13px;font-weight:600;margin:0;white-space:pre-wrap;word-wrap:break-word}
.detail-item.full{grid-column:1 / -1}
.detail-empty{padding:22px 25px;color:#777;font-size:13px}
.project-notice{margin-top:4px;border:1px solid #dedede;border-left:3px solid #17181a;background:#fff;padding:18px 20px;border-radius:0 8px 8px 0}
.project-notice strong{display:block;font-size:13px;margin-bottom:5px}.project-notice p{font-size:12px}
@media(max-width:800px){.project-metrics{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.detail-item.full{grid-column:auto}}

.customer-row,
.project-row { position: relative; }
.customer-row .table-link::after,
.project-row .table-link::after {
    content: "";
    position: absolute;
    inset: 0;
}
.customer-row:hover,
.customer-row:focus-within,
.project-row:hover,
.project-row:focus-within { background: #f5f5f5; }
