:root{--ink:#16211f;--muted:#6d7976;--line:#e4e9e7;--paper:#f5f7f6;--white:#fff;--green:#176b58;--green2:#dcefe9;--amber:#c68a28;--amber2:#fff0d2;--blue:#456f8f;--blue2:#e1edf4;--red:#a94d45;--red2:#f8e4e1;--sidebar:#101b19;--shadow:0 12px 35px rgba(24,47,41,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:var(--sidebar);color:#dce5e2;padding:27px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 31px}.brand-mark{width:38px;height:38px;border:1px solid #5d8b7e;border-radius:11px;display:grid;place-items:center;color:#8fc9b9;font:700 19px Manrope}.brand strong,.brand small,.sidebar-foot strong,.sidebar-foot small{display:block}.brand strong{font:700 15px Manrope;letter-spacing:.14em}.brand small{font-size:11px;color:#82938e;letter-spacing:.08em;text-transform:uppercase;margin-top:2px}.sidebar nav{display:grid;gap:6px}.nav-item{border:0;background:transparent;color:#91a09c;text-align:left;padding:11px 12px;border-radius:8px;font-weight:600;display:flex;align-items:center;gap:12px}.nav-item:hover,.nav-item.active{color:white;background:#1b2c28}.nav-item.active{box-shadow:inset 3px 0 #63b69d}.nav-icon{font-size:19px;width:20px;text-align:center}.nav-count{margin-left:auto;font-size:11px;background:#29423b;padding:2px 7px;border-radius:20px}.sidebar-foot{margin-top:auto;border-top:1px solid #263632;padding:20px 6px 0;display:flex;align-items:center;gap:10px}.team-badge{background:#d9a549;color:#1c201a;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:12px}.sidebar-foot strong{font-size:12px}.sidebar-foot small{font-size:10px;color:#81918c;margin-top:3px}main{grid-column:2;min-width:0}.topbar{height:76px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;padding:0 35px;gap:18px;position:sticky;top:0;z-index:10}.search-wrap{height:40px;border:1px solid var(--line);border-radius:8px;width:min(390px,40vw);display:flex;align-items:center;padding:0 12px;color:#899491;margin-right:auto}.search-wrap input{border:0;outline:0;width:100%;padding:0 10px;color:var(--ink)}kbd{font-size:10px;background:#f1f3f2;border:1px solid #dce1df;border-radius:4px;padding:3px 6px}.btn{border:0;border-radius:8px;padding:10px 16px;font-weight:700;font-size:13px}.btn.primary{background:var(--green);color:white;box-shadow:0 4px 10px rgba(23,107,88,.17)}.btn.primary:hover{background:#105d4c}.btn.secondary{background:#eef2f0;color:var(--ink)}.icon-btn{border:0;background:transparent}.menu-btn{display:none;font-size:20px}.view{display:none;padding:38px 42px 60px;max-width:1500px;margin:auto}.view.active{display:block}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}.page-head.compact{margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:.18em;color:var(--green);font-weight:800;margin:0 0 8px}.page-head h1{font:700 29px Manrope;margin:0;letter-spacing:-.03em}.subtitle{color:var(--muted);margin:7px 0 0;font-size:14px}.date-chip{background:white;border:1px solid var(--line);border-radius:8px;padding:9px 12px;color:var(--muted);font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat-card{background:white;border:1px solid var(--line);border-radius:12px;padding:20px;display:flex;gap:16px;box-shadow:0 1px 2px rgba(0,0,0,.02)}.stat-card small{display:block;color:var(--muted);font-weight:600}.stat-card strong{font:700 27px Manrope;display:block;margin:2px 0}.stat-card p{font-size:10px;color:#97a09e;margin:0}.stat-icon{width:41px;height:41px;display:grid;place-items:center;border-radius:10px;font-weight:700}.stat-icon.amber{background:var(--amber2);color:var(--amber)}.stat-icon.blue{background:var(--blue2);color:var(--blue)}.stat-icon.green{background:var(--green2);color:var(--green)}.stat-icon.slate{background:#e9edec;color:#667572}.content-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,.75fr);gap:20px}.panel{background:white;border:1px solid var(--line);border-radius:12px}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line)}.panel-head h2{font:700 16px Manrope;margin:0}.panel-head p{font-size:11px;color:var(--muted);margin:4px 0 0}.text-btn{border:0;background:transparent;color:var(--green);font-size:12px;font-weight:700}.device-row{display:grid;grid-template-columns:48px minmax(150px,1.2fr) minmax(110px,.8fr) 135px 95px 28px;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line);cursor:pointer}.device-row:last-child{border:0}.device-row:hover{background:#fafcfb}.device-thumb{width:45px;height:45px;border-radius:9px;background:#e9eeec;display:grid;place-items:center;font-size:21px;color:#48645c}.device-main strong{display:block;font-size:13px}.device-main small,.row-meta small{font-size:10px;color:var(--muted)}.row-meta strong{font-size:11px;display:block;margin-bottom:3px}.status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:20px;font-size:10px;font-weight:800;white-space:nowrap}.status:before{content:"";width:5px;height:5px;background:currentColor;border-radius:50%}.status.ready{background:var(--green2);color:var(--green)}.status.progress{background:var(--blue2);color:var(--blue)}.status.delivered{background:#e9edec;color:#556561}.status.unsolved,.status.scrap{background:var(--red2);color:var(--red)}.activity-list{padding:7px 21px}.activity-item{display:grid;grid-template-columns:28px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.activity-item:last-child{border:0}.activity-dot{width:26px;height:26px;border-radius:50%;background:var(--green2);color:var(--green);display:grid;place-items:center;font-size:11px}.activity-item p{font-size:11px;line-height:1.5;margin:0}.activity-item time{display:block;color:#9aa3a1;font-size:9px;margin-top:3px}.toolbar{display:flex;justify-content:space-between;gap:16px;margin-bottom:18px}.filter-tabs{display:flex;gap:5px;flex-wrap:wrap}.filter-tabs button{border:1px solid var(--line);background:white;border-radius:7px;padding:8px 12px;color:var(--muted);font-size:11px;font-weight:700}.filter-tabs button.active{background:var(--ink);color:white;border-color:var(--ink)}select{border:1px solid var(--line);border-radius:7px;padding:8px 11px;background:white;color:var(--muted);font-size:11px}.device-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.device-card{background:white;border:1px solid var(--line);border-radius:12px;padding:20px;cursor:pointer;transition:.2s}.device-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.device-card-top{display:flex;justify-content:space-between;align-items:flex-start}.device-card .device-thumb{width:48px;height:48px}.device-card h3{font:700 15px Manrope;margin:17px 0 3px}.device-card>p{font-size:11px;color:var(--muted);margin:0 0 18px}.card-problem{border-top:1px solid var(--line);padding-top:14px;font-size:11px;min-height:48px}.card-foot{display:flex;justify-content:space-between;margin-top:17px;font-size:10px;color:#899390}.doc-layout{display:grid;grid-template-columns:210px 1fr;gap:18px}.doc-categories{display:grid;align-content:start;gap:4px}.doc-categories button{background:transparent;border:0;text-align:left;padding:10px;border-radius:7px;color:var(--muted);font-size:12px}.doc-categories button.active{background:white;color:var(--ink);font-weight:700}.doc-categories span{float:right;background:#e7ebe9;border-radius:10px;padding:1px 6px;font-size:9px}.doc-panel{overflow:hidden}.doc-toolbar{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:10px}.mini-search{border:1px solid var(--line);padding:7px 9px;border-radius:7px;width:270px}.mini-search input{border:0;outline:0;margin-left:6px;width:220px}.doc-item{display:grid;grid-template-columns:40px 1fr 110px 90px 30px;gap:12px;align-items:center;padding:15px 18px;border-bottom:1px solid var(--line)}.doc-icon{width:36px;height:40px;border-radius:5px;background:#eef2f0;display:grid;place-items:center;color:var(--green);font-size:10px;font-weight:800}.doc-info strong{font-size:12px;display:block}.doc-info small,.doc-item>small{color:var(--muted);font-size:9px}.missing-file{color:var(--amber)!important}.circuit-shell{display:grid;grid-template-columns:190px 1fr;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;min-height:640px}.component-palette{padding:20px;border-right:1px solid var(--line)}.component-palette h3{font:700 14px Manrope;margin:0}.component-palette p{font-size:10px;color:var(--muted);margin:4px 0 18px}.component-palette button{width:100%;border:1px solid var(--line);background:white;border-radius:7px;padding:10px;text-align:left;margin-bottom:7px;font-size:11px}.component-palette button span{display:inline-block;width:48px;color:var(--green);font-weight:700}.component-palette hr{border:0;border-top:1px solid var(--line);margin:17px 0}.component-palette .danger-text{color:var(--red);text-align:center}.board-head{height:65px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 20px}.board-head strong,.board-head small{display:block}.board-head strong{font-size:12px}.board-head small{font-size:9px;color:var(--muted);margin-top:4px}.board-head>span{font-size:9px;background:var(--amber2);color:#8a641d;padding:5px 9px;border-radius:20px}.circuit-board-wrap{min-width:0;overflow:auto}#circuitBoard{width:100%;min-width:650px;height:575px;background-color:#fbfdfc;background-image:radial-gradient(#cbd5d1 1px,transparent 1px);background-size:20px 20px}.circuit-node{cursor:move}.circuit-node.selected .node-box{stroke:#d59b36;stroke-width:3}.modal-backdrop{position:fixed;inset:0;background:rgba(7,18,15,.6);z-index:50;display:grid;place-items:center;padding:20px}.modal-backdrop[hidden]{display:none}.modal{width:min(620px,100%);max-height:90vh;overflow:auto;background:white;border-radius:14px;padding:27px;position:relative;box-shadow:0 25px 80px rgba(0,0,0,.25)}.modal-close{position:absolute;right:17px;top:14px;border:0;background:transparent;font-size:24px;color:#82908c}.modal h2{font:700 20px Manrope;margin:0 0 5px}.modal .intro{font-size:11px;color:var(--muted);margin:0 0 23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:10px;font-weight:800;color:#596762;text-transform:uppercase;letter-spacing:.05em}.field input,.field textarea,.field select{border:1px solid #dce2df;border-radius:7px;padding:10px 11px;outline:0;background:white}.field textarea{min-height:82px;resize:vertical}.field input:focus,.field textarea:focus{border-color:#62a894;box-shadow:0 0 0 3px #e6f2ee}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.toast{position:fixed;right:28px;bottom:28px;background:#17231f;color:white;padding:12px 16px;border-radius:8px;font-size:11px;transform:translateY(90px);opacity:0;transition:.25s;z-index:70}.toast.show{transform:none;opacity:1}.detail-back{border:0;background:transparent;color:var(--green);font-weight:700;font-size:12px;padding:0;margin-bottom:20px}.detail-hero{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}.detail-hero .device-thumb{width:58px;height:58px}.detail-hero h1{font:700 25px Manrope;margin:2px 0}.detail-hero p{margin:0;color:var(--muted);font-size:12px}.detail-hero .status{margin-left:auto}.detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:18px}.detail-panel{padding:21px}.detail-panel h2{font:700 14px Manrope;margin:0 0 15px}.problem-box{background:#f5f8f7;border-radius:8px;padding:14px;font-size:12px;line-height:1.55}.timeline{position:relative}.timeline:before{content:"";position:absolute;left:10px;top:10px;bottom:15px;width:1px;background:#dce3e0}.timeline-item{display:grid;grid-template-columns:22px 1fr;gap:12px;position:relative;margin-bottom:18px}.timeline-dot{width:21px;height:21px;background:white;border:5px solid var(--green);border-radius:50%;z-index:1}.timeline-item strong{display:block;font-size:11px}.timeline-item p{font-size:11px;color:var(--muted);line-height:1.5;margin:4px 0}.timeline-item time{font-size:9px;color:#9ba5a2}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quick-actions button{border:1px solid var(--line);background:white;border-radius:7px;padding:9px;font-size:10px;font-weight:700}.info-list{display:grid;gap:11px}.info-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:9px;font-size:10px;color:var(--muted)}.info-row strong{color:var(--ink)}.billing-box{background:#edf5f2;border-radius:9px;padding:14px;margin-top:17px}.billing-box .money{display:flex;justify-content:space-between;margin:9px 0;font-size:11px}.empty{padding:45px;text-align:center;color:var(--muted);font-size:12px}.empty strong{display:block;color:var(--ink);font-size:14px;margin-bottom:5px}
.doc-preview{display:block;width:100%;max-height:280px;object-fit:contain;background:#eef2f0;border-radius:8px;margin:0 0 18px}.link-btn{text-decoration:none;display:inline-flex;align-items:center}.circuit-source-links{display:flex;align-items:center;gap:8px}.circuit-source-links a{font-size:9px;color:var(--green);font-weight:700;text-decoration:none;padding:5px 8px;border:1px solid #cfe0db;border-radius:20px}.circuit-source-links span{font-size:9px;background:var(--amber2);color:#8a641d;padding:5px 9px;border-radius:20px}
.login-screen{position:fixed;inset:0;background:radial-gradient(circle at 70% 20%,#264b42,#0d1715 55%);z-index:100;display:grid;place-items:center;padding:20px}.login-screen.hidden{display:none}.login-card{width:min(390px,100%);background:#fff;border-radius:16px;padding:36px;box-shadow:0 30px 100px #0008}.login-card .brand-mark{margin-bottom:22px}.login-card h1{font:700 25px Manrope;margin:0}.login-card>p:not(.eyebrow){font-size:12px;color:var(--muted);margin:7px 0 25px}.login-card label{display:grid;gap:6px;font-size:10px;font-weight:800;text-transform:uppercase;margin:12px 0}.login-card input{border:1px solid var(--line);border-radius:8px;padding:11px}.login-card .btn{width:100%;margin-top:8px}.login-error{min-height:18px;color:var(--red);font-size:11px}.inline-head{padding:0 0 15px;margin-bottom:17px}.device-docs,.saved-circuits{display:grid}.device-doc{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;padding:12px 4px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}.device-doc strong,.device-doc small{display:block}.device-doc strong{font-size:11px}.device-doc small{font-size:9px;color:var(--muted);margin-top:3px}.device-doc b{font-size:9px;color:var(--green)}.saved-circuit{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;text-align:left;border:0;border-bottom:1px solid var(--line);background:white;padding:13px 4px}.saved-circuit>span{width:30px;height:30px;border-radius:7px;background:var(--green2);color:var(--green);display:grid;place-items:center}.saved-circuit strong,.saved-circuit small{display:block}.saved-circuit strong{font-size:11px}.saved-circuit small{font-size:9px;color:var(--muted);margin-top:3px}.saved-circuit b{font-size:10px;color:var(--green)}.problem-box,.timeline-item p{unicode-bidi:plaintext}
.timeline-item>div:last-child{position:relative;padding-right:34px}.note-edit{position:absolute;right:0;top:-6px;width:28px;height:28px;border:1px solid var(--line);border-radius:7px;background:#f7faf9;color:var(--green);font-size:17px;font-weight:700;display:grid;place-items:center;padding:0}.note-edit:hover{background:var(--green2)}.doc-buttons{display:flex;align-items:center;gap:8px}.doc-buttons a,.doc-buttons button{border:0;background:transparent;font-size:9px;font-weight:700;text-decoration:none}.doc-buttons a{color:var(--green)}.doc-buttons button{color:var(--red)}.reference-mode{grid-template-columns:1fr}.reference-mode .component-palette{display:none}.reference-mode #circuitBoard{height:auto;min-height:620px}.reference-mode .circuit-board-wrap{width:100%}
.brand-logo{width:42px;height:42px;border-radius:9px;object-fit:cover;background:white}.login-logo{display:block;width:150px;height:105px;object-fit:contain;margin:0 auto 18px}
.note-actions{position:absolute;right:0;top:-6px;display:flex;gap:4px}.note-actions .note-edit,.note-actions .note-delete{position:static;width:28px;height:28px;border:1px solid var(--line);border-radius:7px;background:#f7faf9;display:grid;place-items:center;padding:0;font-size:17px}.note-actions .note-edit{color:var(--green)}.note-actions .note-delete{color:var(--red)}.circuit-actions{display:flex;align-items:center;gap:6px}.circuit-actions button{border:0;background:transparent;font-size:10px;font-weight:700;color:var(--green);padding:6px}.circuit-actions button:last-child{color:var(--red);font-size:17px}.saved-circuit{cursor:default}
.team-badge.has-photo,.profile-avatar.has-photo{background-size:cover;background-position:center;color:transparent}.remember-row{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px;text-transform:none!important;font-size:11px!important;font-weight:600!important;cursor:pointer}.remember-row input{width:16px;height:16px;margin:0;padding:0;accent-color:var(--green)}.profile-panel{max-width:720px;padding:26px}.profile-preview{display:flex;align-items:center;gap:15px;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line)}.profile-avatar{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#d9a549;color:#17231f;font:800 18px Manrope}.profile-preview h2{font:700 18px Manrope;margin:0}.profile-preview p{font-size:11px;color:var(--muted);margin:4px 0}.profile-hint{font-size:10px;color:var(--muted);margin:15px 0}.profile-panel>form>.btn{margin-top:4px}
.search-wrap input{min-width:0;flex:1}.search-wrap kbd{flex:0 0 auto;white-space:nowrap;line-height:1}.saved-circuit{width:100%;min-height:62px;grid-template-columns:40px minmax(0,1fr) auto;overflow:hidden}.saved-circuit>.circuit-icon{width:38px;height:38px;border-radius:8px;background:var(--green2);color:var(--green);display:grid;place-items:center}.saved-circuit>div{min-width:0}.saved-circuit>div strong,.saved-circuit>div small{overflow-wrap:anywhere}.saved-circuit>.circuit-actions{width:auto;height:auto;background:transparent;color:inherit;border-radius:0;display:flex;align-items:center;justify-content:flex-end;gap:5px}.circuit-actions button:first-child{background:var(--green2);border-radius:8px;padding:8px 11px;white-space:nowrap}.circuit-actions button:last-child{width:30px;height:30px;border-radius:7px;padding:0;display:grid;place-items:center;background:var(--red2)}
@media(max-width:1050px){.stats-grid{grid-template-columns:1fr 1fr}.content-grid,.detail-grid{grid-template-columns:1fr}.device-grid{grid-template-columns:1fr 1fr}.activity-panel{order:2}}
@media(max-width:760px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.2s;box-shadow:10px 0 30px rgba(0,0,0,.2)}.sidebar.open{transform:none}main{grid-column:auto}.topbar{padding:0 17px;height:66px}.menu-btn{display:block}.search-wrap{width:auto;flex:1}.search-wrap kbd{display:none}.view{padding:26px 18px 50px}.page-head{display:block}.date-chip{display:none}.page-head .btn{margin-top:16px}.stats-grid{grid-template-columns:1fr 1fr}.content-grid{grid-template-columns:1fr}.device-row{grid-template-columns:42px 1fr 110px}.device-row .row-meta,.device-row .chev{display:none}.device-grid{grid-template-columns:1fr}.toolbar{align-items:flex-start;flex-direction:column}.doc-layout{grid-template-columns:1fr}.doc-categories{display:flex;overflow-x:auto}.doc-categories button{white-space:nowrap}.doc-item{grid-template-columns:40px 1fr 25px}.doc-item>small{display:none}.circuit-shell{grid-template-columns:1fr}.component-palette{border:0;border-bottom:1px solid var(--line);display:flex;gap:5px;overflow:auto}.component-palette h3,.component-palette p,.component-palette hr{display:none}.component-palette button{min-width:115px;margin:0}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.quick-actions{grid-template-columns:1fr}.detail-hero{flex-wrap:wrap}.detail-hero .status{margin-left:0}.topbar>.btn{font-size:0;padding:10px}.topbar>.btn span{font-size:16px}}
@media(max-width:760px){.panel-head{padding:16px}.detail-panel{padding:16px}.detail-grid{display:block}.detail-grid>aside{margin-top:16px}.stats-grid{gap:10px}.stat-card{padding:14px;gap:10px}.stat-icon{width:35px;height:35px}.device-row{padding:14px}.device-doc{grid-template-columns:36px minmax(0,1fr);gap:9px}.device-doc .doc-buttons{grid-column:2;justify-content:flex-start}.saved-circuit{grid-template-columns:30px minmax(0,1fr)}.saved-circuit>b{grid-column:2}.board-head{height:auto;min-height:78px;padding:12px;gap:10px;align-items:flex-start}.circuit-source-links{flex-wrap:wrap;justify-content:flex-end}.reference-mode #circuitBoard{min-width:900px}.circuit-board-wrap{overflow:auto;-webkit-overflow-scrolling:touch}.modal{padding:22px 17px}.modal-actions{flex-wrap:wrap}.modal-actions .btn{flex:1}.problem-box,.timeline-item p{font-size:13px}.login-card{padding:28px 22px}}
@media(max-width:430px){.stats-grid{grid-template-columns:1fr}.search-wrap{max-width:210px}.page-head h1{font-size:25px}}
@media(max-width:760px){.saved-circuit{grid-template-columns:38px minmax(0,1fr);gap:9px;padding:12px 2px}.saved-circuit>.circuit-actions{grid-column:2;justify-content:flex-start}.search-wrap{max-width:none;min-width:0}.search-wrap input{font-size:13px}.topbar{gap:8px}}

/* Consolidated responsive layer */
.form-error{min-height:18px;margin-top:10px;color:var(--red);font-size:11px;font-weight:700}.form-error:empty{margin-top:0}.field input:invalid:not(:placeholder-shown){border-color:#d79a94}
.admin-only{display:none!important}.is-admin .admin-only{display:flex!important}.admin-panel{overflow:hidden}.admin-summary{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}.admin-summary strong{font:700 21px Manrope;color:var(--ink);margin-right:4px}.admin-users{display:grid}.admin-user{display:grid;grid-template-columns:42px minmax(0,1fr) auto 70px;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--line)}.admin-user:last-child{border:0}.admin-user strong,.admin-user small{display:block}.admin-user strong{font-size:12px}.admin-user small{font-size:10px;color:var(--muted);margin-top:3px}.admin-avatar{width:38px;height:38px;border-radius:50%;background:var(--green2);color:var(--green);display:grid;place-items:center;font-size:11px;font-weight:800}.user-state{font-size:9px;font-weight:800;border-radius:20px;padding:5px 8px}.user-state.active{background:var(--green2);color:var(--green)}.user-state.inactive{background:var(--red2);color:var(--red)}.admin-edit{padding:7px 10px}.admin-check{display:flex!important;align-items:center;gap:8px;text-transform:none!important}.admin-check input{width:17px;height:17px}.admin-notice{font-size:10px;background:var(--amber2);color:#795817;padding:10px;border-radius:7px;margin:14px 0 0}
.logout-btn{margin-left:auto;flex:0 0 36px;width:36px;height:36px;border:1px solid #344944;border-radius:8px;background:transparent;color:#9eb0ab;font-size:18px;display:grid;place-items:center}.logout-btn:hover{background:#263a35;color:white}.sidebar-foot>div:nth-child(2){min-width:0}.sidebar-foot>div:nth-child(2) strong,.sidebar-foot>div:nth-child(2) small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.read-only #newDeviceBtn,.read-only .add-device-secondary,.read-only #addNoteBtn,.read-only #editProblemBtn,.read-only #editDetailsBtn,.read-only #changeStatusBtn,.read-only #billingBtn,.read-only #addDocBtn,.read-only #newCircuitBtn,.read-only .note-actions,.read-only [data-delete-doc],.read-only [data-delete-circuit],.read-only #saveCircuitBtn,.read-only .component-palette{display:none!important}
.history-count{min-width:28px;height:28px;padding:0 8px;border-radius:14px;background:var(--green2);color:var(--green);display:grid;place-items:center;font-size:10px;font-weight:800}.repair-history{display:grid;gap:9px}.repair-history-item{border:1px solid var(--line);border-radius:9px;overflow:hidden}.repair-history-item summary{list-style:none;cursor:pointer;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fafcfb}.repair-history-item summary::-webkit-details-marker{display:none}.repair-history-item summary>span>strong,.repair-history-item summary>span>small{display:block}.repair-history-item summary>span>strong{font-size:11px}.repair-history-item summary>span>small{font-size:9px;color:var(--muted);margin-top:3px}.history-problem{padding:13px 13px 10px;border-top:1px solid var(--line)}.history-problem b{font-size:10px}.history-problem p,.history-notes p{font-size:11px;color:var(--muted);line-height:1.55;margin:4px 0;unicode-bidi:plaintext}.history-notes{padding:0 13px}.history-notes>div{border-top:1px solid var(--line);padding:10px 0}.history-notes strong{font-size:10px}.history-notes small{font-size:9px;color:#929d99}.history-empty{padding:5px 0 12px}.previous-device-link{margin:4px 13px 13px;padding:0}
.sidebar-overlay{display:none}.panel,.device-card,.stat-card{min-width:0}.device-main,.row-meta,.doc-info,.saved-circuit>div{min-width:0}.device-main strong,.device-main small,.row-meta strong,.doc-info strong,.doc-info small{overflow-wrap:anywhere}.btn,.nav-item,.text-btn,.quick-actions button,.circuit-actions button{touch-action:manipulation}
@media(max-width:900px){
  .view{padding:30px 24px 50px}.topbar{padding:0 24px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}.detail-grid>aside{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-grid>aside>section{margin-top:0!important}.doc-layout{grid-template-columns:175px minmax(0,1fr)}
}
@media(max-width:760px){
  body.nav-open{overflow:hidden}.app-shell{display:block}.sidebar{width:min(82vw,300px);padding:22px 16px;transform:translateX(-105%);transition:transform .22s ease;box-shadow:16px 0 40px rgba(0,0,0,.24)}.sidebar.open{transform:translateX(0)}.sidebar-overlay{display:block;position:fixed;inset:0;border:0;background:rgba(8,20,17,.48);z-index:19;opacity:0;visibility:hidden;transition:.2s}.sidebar-overlay.show{opacity:1;visibility:visible}
  main{width:100%;overflow-x:hidden}.topbar{height:64px;padding:0 14px;gap:8px}.menu-btn{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:9px;background:#f1f5f3}.search-wrap{height:42px;flex:1;width:auto;min-width:0;padding:0 10px}.search-wrap input{font-size:13px;padding:0 7px}.search-wrap kbd{display:none}.topbar>.btn{flex:0 0 42px;width:42px;height:42px;padding:0;display:grid;place-items:center;font-size:0}.topbar>.btn span{font-size:19px}
  .view{padding:24px 14px 44px}.page-head{display:flex;flex-direction:column;gap:14px;margin-bottom:22px}.page-head h1{font-size:25px}.page-head .subtitle{font-size:12px;line-height:1.5}.page-head>.btn{width:100%;margin:0}.date-chip{display:none}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:14px}.stat-card{padding:14px 12px;gap:10px;border-radius:10px}.stat-card strong{font-size:23px}.stat-card small{font-size:10px}.stat-card p{display:none}.stat-icon{width:34px;height:34px;flex:0 0 34px}.content-grid{display:block}.content-grid>.panel{margin-bottom:14px}.panel-head{padding:15px 14px;gap:10px}.panel-head h2{font-size:14px}.panel-head p{font-size:10px}.activity-panel{margin-top:14px}
  .device-row{grid-template-columns:42px minmax(0,1fr);padding:13px 14px;gap:10px}.device-row>.status{grid-column:2;justify-self:start}.device-row .row-meta,.device-row .chev{display:none}.toolbar{flex-direction:column;align-items:stretch;gap:10px}.filter-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.filter-tabs::-webkit-scrollbar{display:none}.filter-tabs button{flex:0 0 auto;min-height:38px}.toolbar select{width:100%;height:42px}.device-grid{grid-template-columns:1fr}.device-card{padding:17px}.device-card h3{margin-top:14px}.card-problem{min-height:0}.card-foot{padding-top:4px}
  .detail-hero{display:grid;grid-template-columns:50px minmax(0,1fr);gap:11px}.detail-hero .device-thumb{width:50px;height:50px}.detail-hero .status{grid-column:2;margin:0;justify-self:start}.detail-hero h1{font-size:21px;overflow-wrap:anywhere}.detail-grid{display:block}.detail-grid>aside{display:block}.detail-grid>aside>section{margin-top:14px!important}.detail-panel{padding:15px}.inline-head{padding:0 0 13px}.problem-box{font-size:13px;line-height:1.75}.timeline-item{grid-template-columns:18px minmax(0,1fr);gap:9px}.timeline:before{left:8px}.timeline-dot{width:17px;height:17px;border-width:4px}.timeline-item>div:last-child{padding-right:68px}.note-actions{top:-5px}.info-row{gap:12px}.info-row strong{text-align:right;overflow-wrap:anywhere}.quick-actions{grid-template-columns:1fr 1fr}.quick-actions button{min-height:42px}
  .device-doc{grid-template-columns:38px minmax(0,1fr);padding:12px 0}.doc-buttons{grid-column:2;justify-content:flex-start}.doc-buttons a,.doc-buttons button{min-height:32px;display:inline-flex;align-items:center;padding:4px 8px;border-radius:6px}.doc-buttons button{background:var(--red2)}.saved-circuit{grid-template-columns:38px minmax(0,1fr);padding:13px 0}.saved-circuit>.circuit-actions{grid-column:2;justify-content:flex-start}.saved-circuit small{line-height:1.45}
  .modal-backdrop{align-items:flex-end;padding:0}.modal{width:100%;max-height:92vh;border-radius:16px 16px 0 0;padding:25px 17px 18px}.modal-close{width:40px;height:40px;right:10px;top:8px}.form-grid{grid-template-columns:1fr;gap:12px}.field.full{grid-column:auto}.field input,.field textarea,.field select{font-size:16px;min-height:44px}.modal-actions{position:sticky;bottom:-18px;background:white;margin:20px -17px -18px;padding:12px 17px 18px;box-shadow:0 -8px 20px #fff}.modal-actions .btn{min-height:44px}
  .circuit-shell{display:block;min-height:0}.component-palette{display:flex;padding:10px;gap:7px;overflow-x:auto}.component-palette button{flex:0 0 120px;min-height:42px}.board-head{min-width:700px}.circuit-board-wrap{overflow:auto;-webkit-overflow-scrolling:touch}.reference-mode .board-head{min-width:800px}.reference-mode #circuitBoard{min-width:800px;min-height:480px}.circuit-source-links a{min-height:30px;display:flex;align-items:center}
  .profile-panel{padding:17px}.profile-preview{padding-bottom:17px;margin-bottom:17px}.profile-avatar{width:56px;height:56px}.login-card{padding:28px 20px;max-height:calc(100vh - 24px);overflow:auto}.login-logo{width:120px;height:82px}.login-card input{font-size:16px;min-height:44px}
}
@media(max-width:520px){
  .stats-grid{grid-template-columns:1fr}.stat-card p{display:block}.page-head h1{font-size:23px}.quick-actions{grid-template-columns:1fr}.panel{border-radius:10px}.device-card{border-radius:10px}.filter-tabs{margin-right:-14px;padding-right:14px}.topbar{padding-right:10px;padding-left:10px}.search-wrap input::placeholder{font-size:12px}.profile-preview{align-items:flex-start}.remember-row{min-height:34px!important}
}
@media(max-width:600px){.admin-summary{align-items:flex-start;flex-direction:column;gap:5px}.admin-user{grid-template-columns:38px minmax(0,1fr) auto;padding:13px 14px}.admin-user .user-state{grid-column:2;justify-self:start}.admin-user .admin-edit{grid-column:3;grid-row:1/3}.admin-panel{margin-left:-2px;margin-right:-2px}}
@media(max-width:360px){.search-wrap input::placeholder{color:transparent}.view{padding-left:10px;padding-right:10px}.stats-grid{gap:7px}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}
.quick-actions .danger-action{color:var(--red);border-color:#edcbc7;background:var(--red2)}
.client-panel{overflow:hidden}.client-list{display:grid}.client-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 20px;border-bottom:1px solid var(--line)}.client-row:last-child{border-bottom:0}.client-row strong,.client-row small{display:block}.client-row strong{font-size:12px}.client-row small{font-size:10px;color:var(--muted);margin-top:3px}.client-avatar{width:38px;height:38px;border-radius:50%;background:var(--green2);color:var(--green);display:grid;place-items:center;font-size:10px;font-weight:800}.client-actions{display:flex;gap:7px}.client-actions .client-delete{color:var(--red);background:var(--red2)}.read-only .maintenance-control{display:none!important}
@media(max-width:520px){.client-row{grid-template-columns:38px minmax(0,1fr);padding:13px 14px}.client-actions{grid-column:2}.client-actions .btn{flex:1}}
.user-state.online{background:var(--green2);color:var(--green)}.user-state.offline{background:#e9edec;color:#667572}
.problem-box[dir],.timeline-item strong[dir],.timeline-item p[dir],.history-problem p[dir],.history-notes strong[dir],.history-notes p[dir],.reported-text[dir]{unicode-bidi:plaintext;text-align:start}.reported-text{display:block;margin-top:2px}
.device-classification{display:inline-flex;gap:4px;margin:0 0 12px;padding:4px;border:1px solid var(--line);border-radius:10px;background:#e9eeec}.device-classification button{min-height:36px;padding:7px 14px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:11px;font-weight:800;cursor:pointer}.device-classification button.active{background:white;color:var(--green);box-shadow:0 1px 4px #17231f18}.device-classification button:focus-visible{outline:2px solid #63b69d;outline-offset:1px}@media(max-width:520px){.device-classification{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.device-classification button{padding:7px 5px;font-size:10px}}
.profile-layout{display:grid;grid-template-columns:minmax(0,720px) minmax(300px,1fr);gap:18px;align-items:start}.profile-summary-panel{overflow:hidden}.profile-work-count{min-width:32px;height:32px;padding:0 10px;border-radius:18px;background:var(--green2);color:var(--green);display:grid;place-items:center;font:800 13px Manrope}.profile-work-totals{display:flex;gap:10px;flex-wrap:wrap;padding:16px 20px;background:#f5f8f7;border-bottom:1px solid var(--line)}.profile-work-totals div{min-width:145px}.profile-work-totals span,.profile-work-totals strong{display:block}.profile-work-totals span{font-size:9px;color:var(--muted);font-weight:700}.profile-work-totals strong{margin-top:3px;font:700 16px Manrope}.profile-work-totals p{margin:0;color:var(--muted);font-size:11px}.profile-work-item{width:100%;border:0;border-bottom:1px solid var(--line);background:white;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left}.profile-work-item:hover{background:#fafcfb}.profile-work-item:last-child{border-bottom:0}.profile-work-item span{min-width:0}.profile-work-item strong,.profile-work-item small{display:block}.profile-work-item strong{font-size:12px}.profile-work-item small{margin-top:4px;color:var(--muted);font-size:9px}.profile-work-item b{flex:0 0 auto;color:var(--green);font-size:11px;text-align:right}@media(max-width:1050px){.profile-layout{grid-template-columns:1fr}.profile-panel{max-width:none}}@media(max-width:520px){.profile-work-item{align-items:flex-start;flex-direction:column}.profile-work-item b{text-align:left}.profile-work-totals{display:grid;grid-template-columns:1fr 1fr}}
.timeline-item>div:last-child{padding-right:82px}.timeline-item strong{min-height:30px}.note-actions{z-index:2}
.knowledge-list{display:grid;gap:10px}.knowledge-item{border:1px solid var(--line);border-radius:9px;padding:14px;background:#fbfdfc}.knowledge-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.knowledge-head>span:first-child{background:var(--green2);color:var(--green);border-radius:20px;padding:4px 8px;font-size:9px;font-weight:800;white-space:nowrap}.knowledge-head strong{font-size:11px}.knowledge-actions{display:flex;gap:4px}.knowledge-actions button{width:28px;height:28px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--green);display:grid;place-items:center}.knowledge-actions button:last-child{color:var(--red);background:var(--red2)}.knowledge-body{white-space:pre-wrap;font-size:11px;line-height:1.65;color:var(--muted);margin:11px 0;unicode-bidi:plaintext}.knowledge-item>small{font-size:9px;color:#929d99}@media(max-width:520px){.knowledge-head{grid-template-columns:1fr auto}.knowledge-head>span:first-child{grid-column:1;justify-self:start}.knowledge-head strong{grid-column:1/-1;grid-row:2}.knowledge-actions{grid-column:2;grid-row:1}}
.serial-history .repair-history-item[open]{border-color:#b7d8cf}.serial-visit-link{margin:4px 13px 13px}.report-choices{display:grid;gap:10px;margin-top:18px}.report-choices .btn{min-height:46px}.report-choices .btn:disabled{opacity:.45;cursor:not-allowed}
.serial-history .repair-history-item summary{display:grid;grid-template-columns:minmax(0,1fr) auto 20px}.history-chevron{font-size:22px;line-height:1;color:var(--green);text-align:center;transition:transform .18s ease}.serial-history .repair-history-item[open] .history-chevron{transform:rotate(90deg)}
.quotation-items{display:grid}.quotation-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.quotation-item:last-child{border-bottom:0}.quotation-item strong,.quotation-item small{display:block}.quotation-item strong{font-size:11px}.quotation-item small{margin-top:4px;color:var(--muted);font-size:9px}.quotation-item>b{font-size:11px;white-space:nowrap}.quotation-item>span{display:flex;gap:5px}.quotation-item button{width:31px;height:31px;border:1px solid var(--line);background:#f8faf9;border-radius:7px}.quotation-item button:last-child{color:var(--red)}
@media(max-width:600px){.quotation-item{grid-template-columns:minmax(0,1fr) auto}.quotation-item>b{grid-column:1}.quotation-item>span{grid-column:2;grid-row:1/3}.quotation-panel .panel-head{align-items:flex-start}}
.report-note-check{display:flex;align-items:center;gap:9px;text-transform:none!important;letter-spacing:0!important;font-size:12px!important;color:var(--ink)!important}.report-note-check input{width:17px;height:17px;margin:0;accent-color:var(--green)}.field-help{color:var(--muted);font-size:10px}.internal-note-badge{display:inline-flex;margin-inline-start:8px;padding:3px 7px;border-radius:12px;background:var(--amber2);color:#87611e;font-weight:700;font-size:9px}
.avatar-crop-wrap{width:min(360px,100%);aspect-ratio:1;margin:18px auto;border-radius:50%;overflow:hidden;background:#17231f;box-shadow:0 0 0 4px var(--green2)}#avatarCropCanvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none}#avatarCropCanvas:active{cursor:grabbing}.avatar-zoom{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:20px auto 0;max-width:420px}.avatar-zoom label{font-size:11px;font-weight:800;color:var(--muted)}.avatar-zoom input{accent-color:var(--green);width:100%}
.report-folder-field>div{display:flex;align-items:center;gap:12px}.report-folder-field .btn{flex:0 0 auto}.report-folder-field span{font-size:11px;color:var(--muted);overflow-wrap:anywhere}@media(max-width:520px){.report-folder-field>div{align-items:stretch;flex-direction:column}.report-folder-field .btn{width:100%}}
.sidebar-foot{cursor:pointer;border-radius:9px}.sidebar-foot:hover{background:#172824}.sidebar-foot:focus-visible{outline:2px solid #63b69d;outline-offset:3px}.logout-btn{cursor:pointer}.profile-photo-actions{display:flex;gap:12px;margin-top:8px}.profile-photo-actions .text-btn{padding:0;font-size:10px}.profile-photo-actions .danger-text{color:var(--red)}
.admin-avatar.has-photo{background-color:#e5eeeb;background-size:cover;background-position:center;color:transparent}

/* Final phone layout pass: these overrides intentionally come last. */
@media(max-width:760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}.app-shell,main,.view,.panel{max-width:100%}.view{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:calc(44px + env(safe-area-inset-bottom))}.topbar{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
  .btn,.text-btn,.icon-btn,.nav-item,.quick-actions button,.client-actions button,.doc-buttons a,.doc-buttons button{min-height:42px}.panel-head{align-items:flex-start;flex-wrap:wrap}.panel-head>.text-btn{margin-left:auto}.empty{padding:30px 16px}
  .profile-panel{width:100%;max-width:none;padding:16px}.profile-preview{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:13px}.profile-preview>div:last-child{min-width:0}.profile-preview h2{font-size:17px;overflow-wrap:anywhere}.profile-photo-actions{gap:8px;flex-wrap:wrap}.profile-photo-actions .text-btn{min-height:36px;padding:0 8px;border:1px solid var(--line);border-radius:7px}.profile-panel .form-grid{display:grid;grid-template-columns:minmax(0,1fr)}.profile-panel .field{min-width:0}.profile-panel input[type=file]{width:100%;max-width:100%;padding:8px;font-size:13px}.profile-panel>form>.btn{width:100%;min-height:46px}.report-folder-field>div{width:100%}.report-folder-field span{display:block;line-height:1.45}.avatar-crop-wrap{width:min(78vw,330px);margin-top:12px}.avatar-zoom{margin-top:16px}
  .admin-user{grid-template-columns:40px minmax(0,1fr) auto;gap:10px}.admin-user>div:nth-child(2){min-width:0}.admin-user>div:nth-child(2) strong,.admin-user>div:nth-child(2) small{overflow-wrap:anywhere}.admin-user .user-state{grid-column:2;justify-self:start}.admin-user .admin-edit{grid-column:3;grid-row:1/3;min-width:64px}.admin-summary{padding:15px 14px}
  .client-row{grid-template-columns:38px minmax(0,1fr);align-items:start}.client-row>div:nth-child(2){min-width:0}.client-row strong,.client-row small{overflow-wrap:anywhere}.client-actions{grid-column:2;display:grid;grid-template-columns:1fr 1fr;width:100%}.client-actions .btn{width:100%}
  .timeline-item>div:last-child{display:flex;min-width:0;flex-direction:column;padding:0}.timeline-item>div:last-child>strong{order:0;padding:0;min-height:0;margin-bottom:4px}.timeline-item>div:last-child>p{order:1;margin-top:2px;overflow-wrap:anywhere}.timeline-item>div:last-child>time{order:2;line-height:1.5}.note-actions{position:static;order:-1;align-self:flex-end;margin:0 0 8px;display:flex;max-width:100%;flex-wrap:wrap}.note-report-toggle{height:34px}.note-actions .note-edit,.note-actions .note-delete{width:34px;height:34px}.internal-note-badge{display:flex;width:max-content;max-width:100%;margin:6px 0 0;white-space:normal}.timeline-item{margin-bottom:22px}
  .repair-history-item summary,.serial-history .repair-history-item summary{grid-template-columns:minmax(0,1fr) auto 18px;gap:7px;padding:11px}.repair-history-item summary>.status{font-size:9px;padding:5px 7px}.repair-history-item summary>span:first-child{min-width:0}.repair-history-item summary>span:first-child strong,.repair-history-item summary>span:first-child small{overflow-wrap:anywhere}.history-problem,.history-notes{padding-left:11px;padding-right:11px}
  .device-doc,.saved-circuit{overflow:hidden}.device-doc>span:nth-child(2),.saved-circuit>div{min-width:0}.device-doc strong,.device-doc small,.saved-circuit strong,.saved-circuit small{overflow-wrap:anywhere}.doc-buttons,.circuit-actions{display:flex;flex-wrap:wrap}.quotation-item{grid-template-columns:minmax(0,1fr) auto;align-items:start}.quotation-item>div{min-width:0}.quotation-item strong,.quotation-item small{overflow-wrap:anywhere}.quotation-item>b{grid-column:1}.quotation-item>span{grid-column:2;grid-row:1/3}
  .modal{overflow-x:hidden}.modal h2{padding-right:34px}.modal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));z-index:2}.modal-actions .btn{width:100%;padding-left:10px;padding-right:10px}.form-error{overflow-wrap:anywhere}
  .activity-list{padding:5px 14px}.activity-item{grid-template-columns:26px minmax(0,1fr)}.activity-item p{overflow-wrap:anywhere}.doc-categories{margin:0 -14px;padding:0 14px 5px}.doc-panel{overflow:hidden}.doc-toolbar{gap:8px;flex-direction:column;align-items:stretch}.mini-search{width:100%}.mini-search input{width:calc(100% - 28px)}
}
@media(max-width:420px){
  .view{padding-top:20px}.topbar{gap:6px}.search-wrap{padding:0 8px}.search-wrap input::placeholder{font-size:11px}.page-head{gap:10px}.page-head h1{font-size:22px}.stats-grid{grid-template-columns:1fr}.stat-card{align-items:center}.stat-card p{display:block}.device-card{padding:15px}.detail-panel{padding:13px}.detail-hero{grid-template-columns:44px minmax(0,1fr)}.detail-hero .device-thumb{width:44px;height:44px}.detail-hero h1{font-size:19px}.quick-actions{grid-template-columns:1fr}.profile-preview{grid-template-columns:52px minmax(0,1fr)}.profile-avatar{width:52px;height:52px}.profile-photo-actions{grid-column:1/-1}.profile-photo-actions .text-btn{flex:1}.admin-user{grid-template-columns:38px minmax(0,1fr)}.admin-user .admin-edit{grid-column:2;grid-row:auto;width:100%}.admin-user .user-state{grid-column:2}.modal-actions{grid-template-columns:1fr}.serial-history .repair-history-item summary{grid-template-columns:minmax(0,1fr) 18px}.serial-history .repair-history-item summary>.status{grid-column:1;justify-self:start}.serial-history .history-chevron{grid-column:2;grid-row:1/3}.client-actions{grid-template-columns:1fr}.note-report-toggle{font-size:8px}.login-card{width:calc(100% - 16px);padding:24px 16px}
}
.timeline-item>div:last-child{padding-right:0}.timeline-item>div:last-child>strong{padding-right:165px;min-height:32px}.note-report-toggle{height:28px;padding:0 7px;display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:7px;background:#f7faf9;color:var(--green);font-size:9px;font-weight:800;white-space:nowrap;cursor:pointer}.note-report-toggle input{width:14px;height:14px;margin:0;accent-color:var(--green)}.note-report-toggle:has(input:not(:checked)){background:var(--amber2);color:#87611e}.note-report-toggle:has(input:disabled){opacity:.65;cursor:default}
@media(max-width:520px){.timeline-item>div:last-child>strong{padding-right:155px}}

.service-company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service-company-card{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.service-company-head{padding:18px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.service-company-avatar{width:42px;height:42px;border-radius:10px;background:var(--green2);color:var(--green);display:grid;place-items:center;font-weight:800}.service-company-head h2{font:700 15px Manrope;margin:0}.service-company-head small{color:var(--muted);font-size:9px}.service-company-actions{margin-left:auto;display:flex;gap:6px}.service-company-actions button{width:34px;height:34px;border:1px solid var(--line);border-radius:7px;background:#f7faf9;color:var(--green)}.service-company-actions button:last-child{color:var(--red)}.service-email-list{display:grid}.service-email-list a{padding:14px 18px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}.service-email-list a:last-child{border-bottom:0}.service-email-list a:hover{background:#fafcfb}.service-email-list a>span{color:var(--green);font-weight:800}.service-email-list strong{font-size:11px;overflow-wrap:anywhere}.service-email-list small{font-size:9px;color:var(--green)}@media(max-width:1050px){.service-company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.service-company-grid{grid-template-columns:1fr}.service-email-list a{grid-template-columns:22px minmax(0,1fr)}.service-email-list small{grid-column:2}}
.catalog-device-grid{display:grid;gap:18px}.catalog-device-card{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.catalog-card-head{padding:22px 24px;border-bottom:1px solid var(--line);position:relative}.catalog-company{font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}.catalog-card-head h2{font:700 20px Manrope;margin:6px 0 4px}.catalog-card-head p{margin:0;color:var(--muted);font-size:12px}.catalog-actions{position:absolute;right:20px;top:20px;display:flex;gap:6px}.catalog-actions button,.catalog-document>button{width:34px;height:34px;border:1px solid var(--line);border-radius:7px;background:#f7faf9;color:var(--green)}.catalog-actions button:last-child,.catalog-document>button{color:var(--red)}.catalog-overview{padding:18px 24px;font-size:12px;line-height:1.65;background:#fafcfb}.catalog-specs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:6px 24px 20px;gap:8px}.catalog-specs div{border:1px solid var(--line);border-radius:8px;padding:10px;min-width:0}.catalog-specs span,.catalog-specs strong{display:block}.catalog-specs span{font-size:9px;color:var(--muted)}.catalog-specs strong{font-size:11px;margin-top:4px;overflow-wrap:anywhere}.catalog-documents{border-top:1px solid var(--line)}.catalog-documents-head{display:flex;justify-content:space-between;align-items:center;padding:16px 24px}.catalog-documents-head>strong{font-size:12px}.catalog-document{display:grid;grid-template-columns:38px minmax(0,1fr) 70px 38px;align-items:center;gap:10px;padding:12px 24px;border-top:1px solid var(--line)}.catalog-document strong,.catalog-document small{display:block}.catalog-document strong{font-size:11px}.catalog-document small{font-size:9px;color:var(--muted);margin-top:3px}.catalog-document a{font-size:10px;color:var(--green);font-weight:700;text-decoration:none}.language-badge{width:34px;height:28px;border-radius:6px;display:grid;place-items:center;background:#eef2f0;color:var(--green);font-size:9px;font-weight:800}.language-badge.ar{background:var(--amber2);color:#8a641d}.catalog-spec-editor{min-height:150px!important}@media(max-width:1000px){.catalog-specs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.catalog-card-head{padding:18px}.catalog-actions{position:static;margin-top:14px}.catalog-overview{padding:16px 18px}.catalog-specs{grid-template-columns:1fr;padding:4px 18px 16px}.catalog-documents-head{padding:14px 18px}.catalog-document{grid-template-columns:34px minmax(0,1fr) 34px;padding:12px 18px}.catalog-document a{grid-column:2}.catalog-document>button{grid-column:3;grid-row:1/3}}
.catalog-references{border-top:1px solid var(--line);background:#fbfdfc}.catalog-reference{position:relative;margin:0 24px 14px;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}.catalog-reference h3{font:700 13px Manrope;margin:0}.catalog-reference small{font-size:9px;color:var(--muted)}.catalog-reference pre{margin:14px 0 0;padding:14px;border-radius:8px;background:#f4f8f6;white-space:pre-wrap;overflow-wrap:anywhere;font:500 11px/1.75 'DM Sans',sans-serif;color:var(--ink)}.catalog-reference-actions{position:absolute;right:12px;top:12px;display:flex;gap:5px}.catalog-reference-actions button{width:32px;height:32px;border:1px solid var(--line);border-radius:7px;background:#f7faf9;color:var(--green)}.catalog-reference-actions button:last-child{color:var(--red)}.catalog-reference-empty{margin:0;padding:0 24px 18px;color:var(--muted);font-size:11px}.catalog-reference-editor{min-height:260px!important}@media(max-width:600px){.catalog-reference{margin:0 18px 12px;padding:14px}.catalog-reference>div:first-child{padding-right:78px}.catalog-reference pre{font-size:10px;padding:12px}}
.read-only.sales-catalog-access #catalogView .maintenance-control{display:inline-flex!important}.read-only.sales-catalog-access #catalogView .catalog-actions,.read-only.sales-catalog-access #catalogView .catalog-reference-actions{display:flex!important}

.catalog-card-body{display:none}.catalog-device-card.expanded .catalog-card-body{display:block}.catalog-card-head{padding:0!important;min-height:92px}.catalog-expand{display:block;width:100%;padding:20px 112px 20px 24px;text-align:left;border:0;background:transparent;color:var(--ink);cursor:pointer;position:relative}.catalog-expand:hover{background:#fafcfb}.catalog-expand:focus-visible{outline:2px solid var(--green);outline-offset:-2px}.catalog-expand h2{font:700 20px Manrope;margin:6px 0 4px}.catalog-expand p{margin:0;color:var(--muted);font-size:12px}.catalog-chevron{position:absolute;right:98px;top:50%;font-size:24px;line-height:1;color:var(--green);transform:translateY(-50%) rotate(0);transition:transform .18s ease}.catalog-device-card.expanded .catalog-chevron{transform:translateY(-50%) rotate(180deg)}@media(max-width:600px){.catalog-card-head{min-height:0}.catalog-expand{padding:18px 52px 18px 18px}.catalog-expand h2{font-size:17px}.catalog-expand p{font-size:10px}.catalog-chevron{right:18px}.catalog-actions{position:static!important;padding:0 18px 14px}.catalog-device-card.expanded .catalog-actions{display:flex}}

.model-library-label{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-top:14px;padding:12px 4px 8px;border-bottom:1px solid var(--line);color:var(--green)}
.model-library-label strong,.model-library-label small{display:block}.model-library-label strong{font-size:11px}.model-library-label small{font-size:9px;color:var(--muted);text-align:right}
.catalog-linked-doc{background:#f8fbfa}.catalog-linked-doc .doc-icon{background:var(--green2);color:var(--green)}
@media(max-width:600px){.model-library-label{display:block}.model-library-label small{margin-top:3px;text-align:left}}
/* Spare-parts inventory */
.spare-summary{display:flex;gap:12px;margin-bottom:18px}.spare-summary span{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 14px;color:var(--muted);font-size:11px}.spare-summary strong{color:var(--ink);font-size:16px;margin-right:4px}.spare-parts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.spare-part-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;min-width:0}.spare-part-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.stock-badge{display:inline-flex;border-radius:20px;padding:5px 9px;background:var(--green2);color:var(--green);font-size:10px;font-weight:800}.stock-badge.empty-stock{background:var(--red2);color:var(--red)}.spare-actions{display:flex;gap:5px}.spare-actions button{border:1px solid var(--line);background:#fff;border-radius:7px;width:34px;height:34px;color:var(--green)}.spare-actions button:last-child{color:var(--red)}.spare-part-card h2{font:700 16px Manrope;margin:15px 0 4px;overflow-wrap:anywhere}.part-number{display:block;color:var(--green);font:700 12px Manrope;letter-spacing:.05em}.spare-part-card dl{margin:18px 0 0;border-top:1px solid var(--line)}.spare-part-card dl div{padding-top:12px}.spare-part-card dt{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.spare-part-card dd{margin:4px 0 0;font-size:11px;overflow-wrap:anywhere}.compatible-stock{margin:0 0 12px;padding:12px;background:#f4f8f6;border-radius:9px;display:grid;gap:6px}.compatible-stock>strong{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.compatible-stock button{display:flex;justify-content:space-between;gap:10px;border:1px solid #dce7e3;background:#fff;border-radius:7px;padding:8px 10px;text-align:left;color:var(--ink);font-size:10px}.compatible-stock button:hover{border-color:var(--green)}.compatible-stock button b{color:var(--green);white-space:nowrap}.inventory-help{font-size:10px;color:var(--muted);line-height:1.5;margin:14px 0 0}
@media(max-width:1000px){.spare-parts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.spare-parts-grid{grid-template-columns:1fr}.spare-summary{display:grid;grid-template-columns:1fr 1fr}.compatible-stock button{align-items:flex-start;flex-direction:column}.compatible-stock button b{white-space:normal}}.spare-filter{width:min(620px,100%);height:46px;margin:0 0 4px;background:#fff;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;gap:9px;padding:0 12px;color:var(--muted)}.spare-filter:focus-within{border-color:#62a894;box-shadow:0 0 0 3px #e6f2ee}.spare-filter input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink)}.spare-filter button{width:32px;height:32px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:18px}.spare-filter button:hover{background:#eef2f0;color:var(--ink)}.spare-filter-status{height:18px;margin:5px 0 12px;color:var(--muted);font-size:10px}
@media(max-width:620px){.spare-filter{width:100%}.spare-filter-status{margin-bottom:10px}}