@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{color:#17211b;font-synthesis:none;background:#f5f7f3;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{transition:all .2s}button{cursor:pointer}header{background:#fff;border-bottom:1px solid #e4e9e2;justify-content:space-between;align-items:center;height:78px;padding:0 clamp(24px,5vw,76px);display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#fff;background:#1e5139;border-radius:12px;place-items:center;width:39px;height:39px;display:grid}.brand strong{letter-spacing:-.5px;font:800 20px Manrope;display:block}.brand span{color:#7b877f;text-transform:uppercase;letter-spacing:1.2px;font-size:10px;display:block}.login-shell{grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-card{background:#fbfcfa;flex-direction:column;justify-content:center;padding:58px clamp(40px,8vw,130px);display:flex}.login-card>.brand{position:absolute;top:52px}.login-copy{margin-top:55px}.eyebrow{text-transform:uppercase;letter-spacing:2px;color:#bc7240;font-size:11px;font-weight:700}.login-copy h1,.page-heading h1{letter-spacing:-3px;margin:15px 0 20px;font:800 clamp(40px,5vw,68px)/1.05 Manrope}.login-copy p{color:#69736c;max-width:480px;font-size:17px;line-height:1.7}.login-card form{max-width:430px;margin-top:34px}.login-card label,.modal label{flex-direction:column;gap:8px;font-size:13px;font-weight:600;display:flex}.login-card input,.modal input,.search{background:#fff;border:1px solid #dbe1da;border-radius:10px;outline:none;padding:14px 15px}.primary{color:#fff;background:#1f563b;border:0;border-radius:10px;justify-content:center;align-items:center;gap:9px;width:100%;margin-top:12px;padding:15px 18px;font-weight:700;display:flex}.primary:hover{background:#17442e;transform:translateY(-1px)}.login-card small{color:#8a948d;margin-top:22px}.login-art{background:#1c4c35;place-items:center;display:grid;position:relative;overflow:hidden}.art-grid{background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:50px 50px;position:absolute;inset:0;transform:perspective(500px)rotate(-8deg)scale(1.2)}.art-card{background:#fff;border-radius:18px;align-items:center;gap:15px;width:320px;padding:25px;display:flex;position:relative;box-shadow:0 30px 70px #0d261c88}.art-card>svg:first-child{color:#c86e3d}.art-card span{flex:1;font-weight:600}.art-card>svg:last-child{color:#fff;background:#2c7953;border-radius:50%;padding:5px}.security-note{color:#fff;align-items:center;gap:13px;display:flex;position:absolute;bottom:55px}.security-note strong,.security-note span{display:block}.security-note span{opacity:.65;font-size:12px}.app{min-height:100vh}.identity,header nav{color:#657068;align-items:center;gap:12px;font-size:13px;display:flex}.avatar{color:#25583e;background:#dce9df;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.identity button,.icon-btn{color:#657068;background:0 0;border:0;border-radius:8px;place-items:center;padding:8px;display:grid}.content{width:min(1180px,100% - 48px);margin:58px auto}.page-heading{justify-content:space-between;align-items:end;margin-bottom:30px;display:flex}.page-heading h1{margin:8px 0 5px;font-size:46px}.page-heading p{color:#748078;margin:0}.count{text-align:right}.count strong,.count span{display:block}.count strong{font:800 30px Manrope}.count span{color:#879188;font-size:12px}.table-card{background:#fff;border:1px solid #e1e6e0;border-radius:15px;overflow:hidden;box-shadow:0 8px 30px #243d2e08}.table-tools{border-bottom:1px solid #e8ece7;justify-content:space-between;align-items:center;height:68px;padding:0 22px;display:flex}.table-title{align-items:center;gap:9px;font-weight:700;display:flex}table{border-collapse:collapse;width:100%}th{text-align:left;text-transform:uppercase;letter-spacing:1px;color:#8a938c;background:#fafbf9;padding:12px 22px;font-size:10px}td{color:#69736d;border-top:1px solid #edf0ec;padding:17px 22px;font-size:13px}.doc-name{align-items:center;gap:13px;display:flex}.doc-name strong,.doc-name span,.person strong,.person span{display:block}.doc-name strong,.person strong{color:#1a251e;font-size:14px}.doc-name span,.person span{color:#8a948d;margin-top:3px;font-size:11px}.pdf{color:#b75b31;background:#f8e8df;border-radius:7px;padding:13px 7px;font-size:9px;font-weight:800}.empty{text-align:center;color:#818b84;padding:70px 20px}.empty-icon{color:#35664c;background:#edf3ee;border-radius:50%;place-items:center;width:58px;height:58px;margin:auto;display:grid}.empty h3{color:#202b24;margin-bottom:6px}.empty p{margin:0}.app footer{text-align:center;color:#99a19b;padding:25px;font-size:11px}.admin .compact{width:auto;margin:0;padding:12px 17px}.admin header nav a{color:#4e5c53;text-decoration:none}.admin-avatar{border-radius:9px;font-size:11px}.stats{grid-template-columns:repeat(3,1fr);gap:14px;margin:-5px 0 22px;display:grid}.stats div{background:#fff;border:1px solid #e2e7e1;border-radius:12px;padding:18px 20px}.stats span,.stats strong{display:block}.stats span{color:#879088;font-size:12px}.stats strong{margin-top:5px;font:700 26px Manrope}.search{align-items:center;gap:8px;padding:9px 12px;display:flex}.search input{border:0;outline:none;width:220px}.status{color:#8a673a;background:#f3eee6;border:0;border-radius:20px;padding:7px 10px;font-size:11px;font-weight:600}.status span{background:#c59455;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.row-actions{display:flex}.danger:hover{color:#b94343;background:#fff0f0}.modal-backdrop{z-index:10;background:#10251a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:18px;width:min(600px,100%);padding:28px;box-shadow:0 30px 80px #10251a55}.modal-head{justify-content:space-between;margin-bottom:24px;display:flex}.modal h2{margin:5px 0;font:800 27px Manrope}.form-grid{grid-template-columns:1fr 1fr;gap:14px;margin:16px 0;display:grid}.file-drop{color:#52705d;background:#f8faf7;border:1px dashed #aebdb2;border-radius:12px;align-items:center;padding:22px}.file-drop span{color:#929b95;font-weight:400}.file-drop input{background:0 0;border:0;max-width:100%;padding:4px}.checkbox{align-items:flex-start;margin:18px 0;flex-direction:row!important}.checkbox input{width:auto}.checkbox span strong,.checkbox small{display:block}.checkbox small{color:#89928b;margin-top:3px;font-weight:400}.modal-actions{border-top:1px solid #e6eae5;justify-content:flex-end;gap:10px;padding-top:18px;display:flex}.secondary{background:#fff;border:1px solid #d7ded8;border-radius:9px;padding:11px 17px}.error{color:#a33b34;background:#fff0ee;border-radius:8px;padding:10px;font-size:12px}@media (width<=800px){.login-shell{grid-template-columns:1fr}.login-art{display:none}.login-card{padding:110px 28px 50px}.login-card>.brand{top:32px}.content{width:calc(100% - 28px);margin-top:35px}.page-heading{align-items:flex-start;gap:20px}.page-heading h1{font-size:38px}.count{display:none}.table-card{overflow-x:auto}table{min-width:720px}.identity span{display:none}.stats{grid-template-columns:1fr 1fr 1fr}.table-tools{min-width:720px}.form-grid{grid-template-columns:1fr}.admin .page-heading{flex-direction:column}.admin .compact{margin-top:15px}}.catalog header{color:#fff;background:#173f2d;border-bottom-color:#2d5943}.catalog .brand-mark{color:#1c5138;background:#fff}.admin-link{color:#dfeae3;border:1px solid #ffffff2c;border-radius:9px;align-items:center;gap:7px;padding:9px 13px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.admin-link:hover{background:#ffffff10}.catalog .content{margin-top:0;padding-top:64px}.catalog-hero{justify-content:space-between;align-items:flex-end;margin-bottom:42px;display:flex}.catalog-hero h1{letter-spacing:-3.5px;color:#153524;margin:13px 0 20px;font:800 clamp(44px,5vw,68px)/.98 Manrope}.catalog-hero p{color:#65736a;max-width:570px;margin:0;font-size:16px;line-height:1.65}.catalog-summary{color:#fff;background:#1d5239;border-radius:16px;min-width:235px;padding:24px 26px;position:relative;overflow:hidden;box-shadow:0 18px 40px #1b4b3425}.catalog-summary:after{content:"";border:1px solid #ffffff18;border-radius:50%;width:130px;height:130px;position:absolute;top:-55px;right:-45px}.catalog-summary span,.catalog-summary small{display:block}.catalog-summary span{text-transform:uppercase;letter-spacing:1.3px;color:#b8cdbf;font-size:11px}.catalog-summary strong{margin:4px 0;font:800 44px Manrope;display:block}.catalog .table-tools{height:76px}.catalog table{table-layout:auto}.catalog th{padding-top:15px;padding-bottom:15px}.catalog td{padding-top:20px;padding-bottom:20px}.serial{color:#183d2b;white-space:nowrap;background:#ecf3ee;border:1px solid #d9e7dc;border-radius:7px;padding:7px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:700}.provider{color:#25372c;align-items:center;gap:10px;display:flex}.provider-mark{color:#286045;background:#e6eee8;border-radius:8px;place-items:center;width:30px;height:30px;font-weight:800;display:grid}.cal-date{white-space:nowrap;color:#4d5e53;align-items:center;gap:8px;display:flex}.certificate-link{color:#1b4933;border-radius:9px;align-items:center;gap:10px;min-width:220px;padding:5px;text-decoration:none;display:flex}.certificate-link>span:nth-child(2){flex:1}.certificate-link strong,.certificate-link small{display:block}.certificate-link strong{text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:13px;overflow:hidden}.certificate-link small{color:#89948d;margin-top:3px;font-size:10px}.pdf-icon{color:#bd6537;background:#f8e8df;border-radius:8px;place-items:center;width:36px;height:40px;display:grid}.catalog-note{color:#78847c;justify-content:flex-end;align-items:center;gap:7px;margin-top:18px;font-size:11px;display:flex}.modal>label{margin-top:15px}.admin table{min-width:1040px}.admin .table-card{overflow-x:auto}@media (width<=800px){.catalog .content{padding-top:38px}.catalog-hero{flex-direction:column;align-items:flex-start;gap:24px}.catalog-hero h1{font-size:43px}.catalog-summary{width:100%}.catalog .table-tools,.catalog table{min-width:780px}.catalog-note{justify-content:flex-start}.stats div{padding:14px}.stats strong{font-size:22px}}:root{color:#14233b;background:#f4f7fb}.brand-mark{background:#1559a6}.eyebrow{color:#2671c7}.primary{background:#1559a6}.primary:hover{background:#0d478b}.login-card input:focus,.modal input:focus{border-color:#2a70bd;box-shadow:0 0 0 3px #dceafb}.avatar{color:#18589e;background:#e0ecfb}.empty-icon{color:#1f63ae;background:#e8f1fc}.status.published{color:#1d5d9f;background:#e6f0fc}.status.published span{background:#2d74bd}.modal-backdrop{background:#10233f99}.file-drop{color:#315f92;background:#f6f9fd;border-color:#aabed5}.catalog{background:radial-gradient(circle at 86% 6%,#dbeafd 0,#0000 26%),#f3f7fc}.catalog header{background:#0f3f76;border-bottom-color:#275b93}.catalog .brand-mark{color:#1559a6}.catalog .brand span{color:#a9c6e6}.admin-link{color:#e5f0fc}.catalog-hero h1{color:#102f55}.catalog-hero p{color:#607086}.catalog-summary{background:linear-gradient(145deg,#1764b5,#0f4077);box-shadow:0 18px 40px #174c852b}.catalog-summary span{color:#bed7f2}.catalog-summary small{color:#d0e2f5}.catalog .table-card{border-color:#dbe5f0;box-shadow:0 16px 45px #153f6f0d}.serial{color:#124b86;background:#edf5fd;border-color:#d8e8f8}.provider{color:#223850}.provider-mark{color:#1b5fa8;background:#e6f0fb}.cal-date svg{color:#2671c7}.certificate-link{color:#164f8b}.certificate-link:hover{background:#f1f6fc}.pdf-icon{color:#1c65b3;background:#e7f1fc}.catalog-note svg{color:#2671c7}.admin header .brand-mark{background:#1559a6}.admin .table-title,.admin .page-heading h1{color:#17385e}.stats strong{color:#15599f}.search:focus-within{border-color:#71a2d7;box-shadow:0 0 0 3px #e4f0fc}.material-name{color:#223850;font-size:14px}.empty-cell{padding:0!important}.required-columns{background:#f2f7fd;border:1px solid #d9e8f8;border-radius:12px;margin-bottom:17px;padding:17px}.required-columns>strong{color:#1a416c;margin-bottom:11px;font-size:13px;display:block}.required-columns div{flex-wrap:wrap;gap:8px;display:flex}.required-columns div span{color:#15599f;background:#fff;border:1px solid #cfe0f2;border-radius:7px;padding:7px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:700}.required-columns small{color:#74869a;margin-top:11px;display:block}.import-modal .file-drop{margin-top:0}.success{color:#1b6844;background:#e9f7ef;border-radius:8px;padding:10px;font-size:12px}.search input{width:260px}.catalog .inventory-table{min-width:680px}.inventory-table th:first-child{width:15%}.inventory-table th:nth-child(2){width:25%}.inventory-table th:nth-child(3){width:20%}.compact-certificate{min-width:180px}.compact-certificate .pdf-icon{width:32px;height:35px}.compact-certificate strong{max-width:150px}.upload-certificate{color:#15599f;cursor:pointer;white-space:nowrap;background:#f3f8fd;border:1px dashed #8bb2db;border-radius:8px;align-items:center;padding:9px 11px;flex-direction:row!important;gap:6px!important;font-size:11px!important;display:inline-flex!important}.upload-certificate:hover{background:#e8f2fc}.upload-certificate input{display:none}.no-certificate{color:#929da8;font-size:11px}.admin .inventory-table{min-width:1100px}.auth-shell{background:#fff;grid-template-columns:42% 58%;min-height:100vh;display:grid}.auth-side{color:#fff;background:linear-gradient(145deg,#0d3e75,#1769b9);flex-direction:column;justify-content:space-between;padding:48px clamp(38px,6vw,80px);display:flex;position:relative;overflow:hidden}.auth-side:after{content:"";border:1px solid #ffffff16;border-radius:50%;width:420px;height:420px;position:absolute;top:-140px;right:-230px}.auth-side .brand{z-index:1;position:relative}.auth-side .brand-mark{color:#1559a6;background:#fff}.auth-side .brand span{color:#b9d3ed}.auth-side h1{letter-spacing:-3px;margin:15px 0 20px;font:800 clamp(38px,5vw,60px)/1 Manrope}.auth-side p{color:#d4e5f5;max-width:440px;line-height:1.7}.auth-side>small{color:#d4e5f5;align-items:center;gap:9px;display:flex}.eyebrow.light{color:#b9d7f3}.auth-form{flex-direction:column;justify-content:center;max-width:720px;padding:45px clamp(35px,7vw,100px);display:flex}.auth-form h2,.password-card h2{color:#15375e;margin:0 0 6px;font:800 32px Manrope}.auth-form>p,.password-card>p{color:#738397;margin:0 0 25px}.account-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px;display:grid}.account-grid button{text-align:left;background:#fbfdff;border:1px solid #dbe5f0;border-radius:11px;align-items:center;gap:10px;padding:13px;display:flex}.account-grid button>span{color:#1763aa;background:#e5effa;border-radius:8px;flex:none;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.account-grid button strong,.account-grid button small{display:block}.account-grid button strong{color:#24384f;font-size:12px}.account-grid button small{color:#79899a;margin-top:3px;font-size:10px}.account-grid button.selected{background:#edf5fd;border-color:#1768b5;box-shadow:0 0 0 3px #e3f0fc}.account-grid button.selected>span{color:#fff;background:#1768b5}.auth-form label,.password-card label{color:#31465f;flex-direction:column;gap:7px;margin-top:12px;font-size:12px;font-weight:650;display:flex}.auth-form input,.password-card input{border:1px solid #d8e3ee;border-radius:10px;outline:none;padding:13px}.auth-form input:focus,.password-card input:focus{border-color:#2a70bd;box-shadow:0 0 0 3px #dceafb}.password-shell{background:radial-gradient(circle at 75% 15%,#dbeafd,#0000 32%),#f3f7fc;place-items:center;min-height:100vh;padding:30px;display:grid}.password-card{background:#fff;border:1px solid #dbe5f0;border-radius:18px;width:min(470px,100%);padding:35px;box-shadow:0 20px 60px #153f6f18}.password-icon{color:#1763aa;background:#e7f1fc;border-radius:13px;place-items:center;width:48px;height:48px;margin-bottom:20px;display:grid}.admin nav button{background:#edf4fb}.admin nav>span{color:#304b68;font-weight:600}@media (width<=760px){.auth-shell{grid-template-columns:1fr}.auth-side{min-height:260px;padding:30px}.auth-side h1{font-size:38px}.auth-side>small{display:none}.auth-form{padding:35px 24px}.account-grid{grid-template-columns:1fr}}.back-to-catalog{color:#55708d;background:0 0;border:0;width:100%;margin-top:10px;padding:10px;font-weight:650}.back-to-catalog:hover{color:#1559a6}.login-back{color:#55708d;align-items:center;gap:7px;width:max-content;margin-bottom:30px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.login-back:hover{color:#1559a6;transform:translate(-2px)}.logout-button{color:#315273;background:#f4f8fc;border:1px solid #d7e3ef;border-radius:9px;align-items:center;gap:7px;padding:8px 11px;font-size:12px;font-weight:700;display:flex}.logout-button:hover{color:#1559a6;background:#e9f2fb}.certificate-date{white-space:nowrap;color:#52667b;font-size:12px}.table-tools{gap:20px;width:100%}.table-tools .search{flex:0 320px;margin-left:auto}.table-tools .search input{width:100%;min-width:0}.admin .table-tools{min-width:1100px}.catalog .table-tools,.catalog .inventory-table{min-width:900px}.certificate-date{min-width:145px;line-height:1.45;display:block}.certificate-actions{flex-direction:column;align-items:flex-start;gap:7px;display:flex}.update-certificate{color:#55708d;cursor:pointer;border-radius:5px;align-items:center;padding:3px 5px;flex-direction:row!important;gap:5px!important;font-size:10px!important;font-weight:700!important;display:inline-flex!important}.update-certificate:hover{color:#1559a6;background:#edf5fd}.update-certificate input{display:none}.certificate-controls{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.delete-certificate{color:#a34747;background:0 0;border:0;border-radius:5px;align-items:center;gap:4px;padding:4px 6px;font-size:10px;font-weight:700;display:inline-flex}.delete-certificate:hover{color:#bd3030;background:#fff0f0}
