:root{--bg:#070b10;--panel:#101820eb;--ink:#f4f7fa;--muted:#8b9aab;--accent:#00c2e8;--danger:#ff7a6e;--ok:#5ad8f2;color:var(--ink);background:var(--bg);font-family:Montserrat,sans-serif}*{box-sizing:border-box}body,#root{min-height:100vh;margin:0}.app{min-height:100vh;padding:0;position:relative}.login-card{max-width:420px;margin:12vh auto;padding:2rem}.app-bg{z-index:-1;background:linear-gradient(165deg,#0a1016,#070b10 50%,#0c1218);position:fixed;inset:0}.login-card,.dashboard{max-width:960px;margin:0 auto}.login-card{background:var(--panel);border:1px solid #00c2e833;border-radius:12px;margin-top:12vh;padding:2rem}.login-card h1,.dash-header h1{margin:.2rem 0 .5rem;font-size:1.75rem}.kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.72rem}.muted{color:var(--muted)}form label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);flex-direction:column;gap:.4rem;margin:1.25rem 0;font-size:.8rem;display:flex}input{color:var(--ink);font:inherit;text-transform:none;letter-spacing:0;background:#0c1319;border:1px solid #ffffff1f;border-radius:8px;padding:.75rem .9rem}button[type=submit],.btn-ghost{font:inherit;cursor:pointer;border-radius:999px;padding:.65rem 1.1rem}button[type=submit]{color:#041016;background:linear-gradient(135deg,#00c2e8,#0090b8);border:none;width:100%;font-weight:700}.btn-ghost{color:var(--ink);background:0 0;border:1px solid #ffffff26;width:auto}button.btn-ghost[type=submit],button.btn-ghost{color:var(--ink);background:0 0;border:1px solid #ffffff26;width:auto;font-weight:600}.btn-danger,button.btn-danger,button.btn-ghost.btn-danger{color:#ff8f84;background:#ff463c1f;border:1px solid #ff7a6e8c;width:auto;font-weight:600}.btn-danger:hover:not(:disabled),button.btn-danger:hover:not(:disabled),button.btn-ghost.btn-danger:hover:not(:disabled){color:#ffb0a8;background:#ff463c38;border-color:#ff7a6ed9}.btn-add,button.btn-add,button.btn-ghost.btn-add{color:#9ef0b8;background:#5adc8c2e;border:1px solid #5adc8c8c;width:auto;font-weight:700}.btn-add:hover:not(:disabled),button.btn-add:hover:not(:disabled),button.btn-ghost.btn-add:hover:not(:disabled){color:#b6f5c8;background:#5adc8c47;border-color:#5adc8cd9}.btn-add-design,button.btn-add-design,button.btn-ghost.btn-add-design{color:#9ec4ff;background:#408cff33;border:1px solid #64aaff8c;width:auto;font-weight:700}.btn-add-design:hover:not(:disabled),button.btn-add-design:hover:not(:disabled),button.btn-ghost.btn-add-design:hover:not(:disabled){color:#c0daff;background:#408cff52;border-color:#64aaffd9}.btn-add-shipping,button.btn-add-shipping,.add-shipping-select.select-shipping select,.add-shipping-select select.btn-add-shipping{color:#ffd08a;background:#ffb4462e;border:1px solid #ffbe468c;width:auto;max-width:8.5rem;font-weight:700}.btn-add-shipping:hover:not(:disabled),button.btn-add-shipping:hover:not(:disabled),.add-shipping-select.select-shipping select:hover,.add-shipping-select select.btn-add-shipping:hover{color:#ffe0ad;background:#ffb4464d;border-color:#ffbe46e6}.error{color:var(--danger);font-size:.92rem}.dash-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.dash-actions{gap:.5rem;display:flex}.inquiry-list,.price-log-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.inquiry-row,.price-log-row{text-align:left;background:var(--panel);width:100%;color:var(--ink);font:inherit;cursor:pointer;border:1px solid #ffffff14;border-radius:10px;grid-template-columns:11rem 8rem 4rem 1fr;align-items:center;gap:.75rem;padding:.85rem 1rem;display:grid}.inquiry-row:hover,.price-log-row:hover{border-color:#00c2e859}.inquiry-summary,.price-log-summary{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);overflow:hidden}.badge{text-transform:uppercase;letter-spacing:.06em;border-radius:6px;padding:.2rem .45rem;font-size:.72rem;font-weight:700;display:inline-block}.badge-ok{color:var(--ok);background:#00c2e826}.badge-error{color:var(--danger);background:#ff7a6e26}.badge-status{text-transform:none;letter-spacing:.02em;white-space:nowrap}.orders-list .order-row{grid-template-columns:4.5rem 6.5rem 9.5rem minmax(0,1fr) 7.5rem;gap:.85rem}.order-col-num{font-variant-numeric:tabular-nums;font-weight:700}.order-col-source{color:var(--muted);font-size:.9rem}.order-col-status{text-overflow:ellipsis;text-align:center;justify-self:start;max-width:100%;padding:.28rem .55rem;overflow:hidden}.order-col-customer{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);overflow:hidden}.order-col-price{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}@media (width<=800px){.orders-list .order-row{grid-template-columns:4rem 1fr auto;grid-template-areas:"num status price""source customer customer"}.order-col-num{grid-area:num}.order-col-source{grid-area:source}.order-col-status{grid-area:status}.order-col-customer{grid-area:customer}.order-col-price{grid-area:price}}.dataset-list .data-row{grid-template-columns:minmax(10rem,1.4fr) minmax(10rem,1.3fr) minmax(7rem,.9fr) minmax(7rem,1fr);gap:.85rem}.dataset-search{max-width:42rem;margin:0 0 1rem;position:relative}.dataset-search-box{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:12px;flex-wrap:wrap;align-items:center;gap:.45rem;min-height:2.75rem;padding:.35rem .55rem;display:flex}.dataset-search-box.is-open,.dataset-search-box:focus-within{border-color:#00c2e873}.dataset-search-box input{min-width:8rem;color:var(--ink);font:inherit;background:0 0;border:0;outline:none;flex:10rem;padding:.35rem .25rem}.dataset-search-box input::-webkit-search-cancel-button{display:none}.dataset-search-chip{color:#9ee8f5;font:inherit;cursor:pointer;background:#00c2e824;border:1px solid #00c2e866;border-radius:999px;align-items:center;gap:.35rem;padding:.28rem .65rem;font-size:.85rem;font-weight:650;display:inline-flex}.dataset-search-chip span{opacity:.75;font-weight:500}.dataset-search-clear{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:.25rem .4rem;font-size:.82rem}.dataset-search-clear:hover{color:var(--ink)}.dataset-search-menu{z-index:20;background:#141a24;border:1px solid #ffffff1f;border-radius:12px;max-height:16rem;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .35rem);left:0;right:0;overflow:auto;box-shadow:0 12px 30px #00000059}.dataset-search-option{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.55rem .65rem;display:flex}.dataset-search-option.is-active,.dataset-search-option:hover{background:#00c2e81f}.dataset-search-option-label{font-weight:650}.dataset-search-option-meta{color:var(--muted);white-space:nowrap;font-size:.82rem}.dataset-search-empty{color:var(--muted);padding:.65rem .75rem;font-size:.9rem}.models-list .data-row{grid-template-columns:minmax(12rem,1.6fr) minmax(9rem,1.1fr) 6.5rem 8.5rem}.customers-list .data-row{grid-template-columns:minmax(9rem,1.2fr) minmax(11rem,1.4fr) 8rem minmax(7rem,1fr)}.data-col-primary{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.data-col-secondary{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);overflow:hidden}.data-col-muted{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.9rem;overflow:hidden}.data-col-end{text-align:right;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.9rem;overflow:hidden}@media (width<=800px){.dataset-list .data-row,.models-list .data-row,.customers-list .data-row{grid-template-columns:1fr auto;grid-template-areas:"primary end""secondary muted"}.data-col-primary{grid-area:primary}.data-col-secondary{grid-area:secondary}.data-col-muted{grid-area:muted}.data-col-end{grid-area:end}}.badge-status-new{color:#8eb8ff;background:#408cff38}.badge-status-offer{color:#c9b0ff;background:#b48cff33}.badge-status-order{color:#5ad8f2;background:#00c2e833}.badge-status-scheduled{color:#ffc56a;background:#ffb44633}.badge-status-production{color:#ff9d6a;background:#ff8c5a38}.badge-status-ready{color:#6fdede;background:#46c8c833}.badge-status-shipped{color:#c5d0db;background:#8ca0b438}.badge-status-paid{color:#9ef0b8;background:#5adc8c47}.order-workspace{flex-direction:column;gap:1rem;min-width:0;max-width:100%;display:flex}.order-toolbar{background:#080e148c;border:1px solid #ffffff14;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.75rem .65rem;padding:.85rem 1rem;display:grid}.order-toolbar-title{min-width:0}.order-toolbar-title h1{text-overflow:ellipsis;white-space:nowrap;margin:.1rem 0 0;font-size:1.25rem;overflow:hidden}.order-toolbar .btn-save{white-space:nowrap;flex-shrink:0}.order-meta{color:var(--muted);font-size:.85rem;font-weight:500}.order-section-status{margin-top:0}.fakturoid-info{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.fakturoid-doc-list{flex-direction:column;gap:.4rem;margin:0 0 .85rem;padding:0;list-style:none;display:flex}.fakturoid-actions{flex-wrap:wrap;gap:.75rem;display:flex}.order-doc-row{border-bottom:1px solid #ffffff14;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.6rem 0;display:flex}.order-doc-row:last-child{border-bottom:none}.order-doc-label{min-width:110px;font-weight:600}.order-doc-status{color:var(--muted);font-size:.9rem}.order-doc-actions{flex-wrap:wrap;gap:.5rem;margin-left:auto;display:flex}.section-hint{margin:-.35rem 0 .85rem;font-size:.85rem}.print-by-line{flex-direction:column;gap:.85rem;display:flex}.print-line-block{background:#0000002e;border:1px solid #ffffff14;border-radius:8px;padding:.75rem}.print-line-block h3{text-transform:none;letter-spacing:0;color:#e8eef4;margin:0;font-size:.95rem}.print-empty{margin:.35rem 0 0;font-size:.85rem}.print-file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.85rem;overflow:hidden}.print-line-select{margin:0}@media (width<=900px){.order-toolbar{grid-template-columns:1fr}.order-toolbar .btn-save,.order-toolbar .btn-ghost{width:100%}.print-file-list li{grid-template-columns:1fr}}.header-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.order-section{background:#080e148c;border:1px solid #ffffff14;border-radius:10px;padding:1rem 1.1rem}.order-section h2{margin:0 0 .75rem;font-size:1rem}.order-section h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:1rem 0 .5rem;font-size:.82rem}.section-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.section-head h2{margin:0}.add-shipping-select select{font:inherit;cursor:pointer;color:var(--ink);appearance:none;background:0 0;border:1px solid #ffffff26;border-radius:999px;width:auto;max-width:8.5rem;padding:.65rem 1.1rem;font-weight:600}.add-shipping-select.select-shipping select,.add-shipping-select select.btn-add-shipping{color:#ffd08a;background:#ffb4462e;border:1px solid #ffbe468c;max-width:8.5rem;font-weight:700}.add-shipping-select select:hover{border-color:#00c2e873}.add-shipping-select.select-shipping select:hover,.add-shipping-select select.btn-add-shipping:hover{color:#ffe0ad;background:#ffb4464d;border-color:#ffbe46e6}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.form-grid label,.inline-label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.78rem;display:flex}.form-grid .span-2{grid-column:span 2}.form-grid input,.form-grid select,.inline-label select,.lines-table input,.delivery-type select{color:#e8eef4;width:100%;font:inherit;background:#00000047;border:1px solid #ffffff1f;border-radius:6px;padding:.45rem .55rem}.delivery-type{flex-wrap:wrap;align-items:end;gap:.5rem;margin-bottom:.75rem;display:flex}.delivery-type .choice{color:#c5d0db;border:1px solid #ffffff1f;border-radius:6px;align-items:center;gap:.4rem;padding:.45rem .7rem;font-size:.85rem;display:inline-flex}.delivery-type .choice.is-on{background:#00c2e81a;border-color:#00c2e88c}.delivery-type .grow{flex:1;min-width:10rem}.status-table{border-collapse:collapse;table-layout:fixed;width:100%}.status-table td{background:#ffffff05;border:1px solid #ffffff1a;padding:0}.status-table td.is-done{background:#00c2e814}.status-table td.is-active{background:#00c2e833;box-shadow:inset 0 0 0 1px #00c2e88c}.status-cell{color:#9aabba;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;padding:.7rem .35rem;font-size:.72rem}.status-table td.is-active .status-cell{color:#e8f8fc;font-weight:700}.status-table td.is-done .status-cell{color:#c5d8e6}.lines-table{border-collapse:collapse;width:100%}.lines-table th,.lines-table td{text-align:left;border-bottom:1px solid #ffffff14;padding:.4rem;font-size:.85rem}.lines-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.lines-table .num,.lines-table tfoot td{text-align:right;white-space:nowrap}.lines-table tfoot td{padding-top:.75rem;font-weight:700}.line-kind{white-space:nowrap;border-radius:6px;padding:.2rem .45rem;font-size:.72rem;font-weight:700;display:inline-block}.line-kind-item{color:#9ef0b8;background:#5adc8c2e}.line-kind-shipping{color:#ffc56a;background:#ffb4462e}.line-kind-design{color:#9ec4ff;background:#408cff33}.print-file-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.print-file-list li{border-bottom:1px solid #ffffff0f;grid-template-columns:minmax(0,1fr) minmax(9rem,12rem) auto;align-items:end;gap:.65rem;padding:.45rem 0;display:grid}.print-file-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.file-upload-btn{color:var(--accent);cursor:pointer;border:1px solid #00c2e859;border-radius:6px;align-items:center;padding:.35rem .7rem;font-size:.85rem;display:inline-flex}.preview-block{margin-bottom:.75rem}@media (width<=900px){.form-grid{grid-template-columns:1fr 1fr}.status-table{display:block;overflow-x:auto}}.detail-panel-wide{width:min(900px,100%)}.detail-panel-narrow{width:min(360px,100%)}.detail-panel-narrow .no-model-label{margin:.75rem 0}.quote-stages{margin:1rem 0 1.25rem}.quote-stages h3{margin:0 0 .65rem;font-size:.95rem}.stage-track{flex-wrap:wrap;gap:.35rem;display:flex}.stage-step{color:#9aabba;font:inherit;cursor:pointer;background:#ffffff08;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:.4rem;padding:.4rem .65rem;font-size:.78rem;display:inline-flex}.stage-step:hover:not(:disabled){color:#e8eef4;border-color:#00c2e873}.stage-step:disabled{cursor:default}.stage-step.is-done{color:#c5d8e6;border-color:#00c2e840}.stage-step.is-active{color:#e8f8fc;background:#00c2e824;border-color:#00c2e8b3;font-weight:700}.stage-dot{opacity:.55;background:currentColor;border-radius:50%;width:.45rem;height:.45rem}.stage-step.is-active .stage-dot,.stage-step.is-done .stage-dot{opacity:1}.detail-overlay{z-index:10;background:#000000a6;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.detail-panel{background:#0e151c;border:1px solid #00c2e840;border-radius:12px;width:min(720px,100%);max-height:85vh;padding:1.25rem;overflow:auto}.detail-panel header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.detail-panel h2{margin:.15rem 0 0;font-size:1.1rem}.detail-panel a{color:var(--accent);word-break:break-all}.quote-link-img{border-radius:8px;max-width:100%}pre{white-space:pre-wrap;word-break:break-word;background:#00000059;border-radius:8px;margin:0;padding:.75rem;font-size:.78rem;overflow:auto}.shell{grid-template-columns:16rem 1fr;min-height:100vh;display:grid}.sidebar{background:#0a1016eb;border-right:1px solid #ffffff14;flex-direction:column;gap:.75rem;padding:1.4rem 1.1rem;display:flex}.sidebar h2{margin:0 0 .75rem;font-size:1.05rem}.sidebar nav{flex-direction:column;gap:.35rem;display:flex}.sidebar nav button{appearance:none;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;padding:.7rem .85rem}.sidebar nav button.is-active{color:var(--ok);background:#00c2e81f;border-color:#00c2e859}.site-back-link{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border:1px solid #00c2e859;border-radius:999px;justify-content:center;align-items:center;margin-top:1rem;padding:.45rem .9rem;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex}.site-back-link:hover{color:var(--ink);border-color:var(--accent)}.sidebar-site-link{box-sizing:border-box;width:100%;margin-top:auto}.sidebar .logout{margin-top:.45rem}.content{min-width:0;padding:1.5rem;overflow-x:hidden}.dataset-layout{grid-template-columns:minmax(14rem,22rem) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.dataset-list .price-log-row.is-selected{background:#00c2e814;border-color:#00c2e88c}.contact-modal-form h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:1rem 0 .5rem;font-size:.82rem}.contact-modal-form select{color:#e8eef4;width:100%;font:inherit;background:#00000047;border:1px solid #ffffff1f;border-radius:6px;padding:.45rem .55rem}.contact-modal-actions{margin-top:1rem}.dataset-form .form-grid label{text-transform:none;letter-spacing:0;margin:0}.carrier-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;display:grid!important}.carrier-actions{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}.carrier-actions .btn-ghost{padding:.4rem .75rem;font-size:.8rem}@media (width<=900px){.dataset-layout{grid-template-columns:1fr}}.stat-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;margin:1rem 0;display:grid}.stat-card{background:var(--panel);border:1px solid #ffffff14;border-radius:12px;padding:1rem}.stat-value{margin:.35rem 0 .15rem;font-size:1.6rem;font-weight:800}.file-grid{grid-template-columns:repeat(auto-fill,minmax(8rem,1fr));gap:.65rem;display:grid}.file-grid img,.file-placeholder{aspect-ratio:1;object-fit:cover;background:#0c1319;border-radius:8px;width:100%}.file-placeholder{color:var(--muted);place-items:center;font-size:.8rem;display:grid}.file-grid figcaption{color:var(--muted);font-size:.75rem}.price-log-row.static{cursor:default}.pricing-form{max-width:42rem;margin-top:1rem}.pricing-table{border-collapse:collapse;width:100%;margin-bottom:1rem}.pricing-table th,.pricing-table td{text-align:left;border-bottom:1px solid #ffffff14;padding:.65rem .5rem}.pricing-table th{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:600}.pricing-table input{width:8rem;margin:0}.pricing-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.pricing-form button[type=submit]{width:auto}.ok-msg{color:var(--ok);margin:0;font-weight:700}@media (width<=860px){.shell,.stat-grid{grid-template-columns:1fr}}
