@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#202735;background:#f6f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button{font:inherit;cursor:pointer;border:0}.app-shell{display:flex;height:100vh}.sidebar{width:250px;background:#fff;border-right:1px solid #e9ebf0;display:flex;flex-direction:column;padding:29px 16px 18px;flex-shrink:0;height:100vh;position:sticky;top:0;overflow:hidden}.sidebar>nav{overflow-y:auto;min-height:0}.mobile-close,.mobile-menu,.sidebar-overlay{display:none}.brand,.mobile-brand{display:flex;align-items:center;gap:10px;font:800 19px Manrope;letter-spacing:-.8px;padding:0 12px;color:#1f2633}.brand span span,.mobile-brand span span{color:#f27852}.brand-mark{width:31px;height:31px;display:grid;place-items:center;color:#fff;border-radius:9px 9px 9px 3px;background:#f27852;font:800 18px Manrope}nav{margin-top:55px;display:grid;gap:6px}.nav-item{display:flex;align-items:center;width:100%;padding:12px 13px;gap:13px;border-radius:9px;text-align:left;color:#8690a0;background:transparent;font-size:13px;font-weight:600}.nav-item:hover,.nav-item.active{background:#fff1ed;color:#f27852}.icon{display:inline-grid;place-items:center;width:17px;color:currentColor;font-size:18px}.sidebar-bottom{margin-top:auto;flex-shrink:0}.profile{display:flex;gap:10px;align-items:center;border-top:1px solid #edf0f4;padding:20px 7px 0;margin-top:14px}.profile-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff;background:#293950;font-weight:700}.profile strong,.profile small{display:block}.profile strong{font-size:12px}.profile small{color:#9ba4b2;font-size:10px;margin-top:3px}.main{flex:1;min-width:0;height:100vh;overflow-y:auto}.topbar{height:80px;background:#fff;border-bottom:1px solid #e9ebf0;display:flex;align-items:center;justify-content:flex-end;gap:27px;padding:0 5.2%}.mobile-brand{display:none}.content{max-width:1420px;margin:auto;padding:48px 5.2%}.page-heading{display:flex;align-items:flex-end;justify-content:space-between}.eyebrow{color:#a4acba;font-size:10px;font-weight:700;letter-spacing:1.3px;margin:0 0 14px}.page-heading h1{font:800 30px Manrope;margin:0;letter-spacing:-1.3px}.page-heading h1 span{font-size:25px}.subtitle,.section-heading p{margin:9px 0 0;color:#9099a8;font-size:12px}.primary-button{color:#fff;background:#f27852;border-radius:7px;padding:11px 17px;font-size:12px;font-weight:700;box-shadow:0 7px 16px #f2785233}.primary-button span{font-size:18px;vertical-align:-1px;margin-right:7px}.primary-button:disabled{opacity:.7;cursor:wait}.primary-button--small{padding:9px 13px;box-shadow:none}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:39px 0 43px}.stat-card{position:relative;display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #eef0f4;border-radius:10px;padding:18px;min-height:92px}.stat-icon{width:40px;height:40px;border-radius:9px;display:grid;place-items:center}.stat-icon--blue{color:#4a9cff;background:#eaf3ff}.stat-icon--orange{color:#f27852;background:#fff0ea}.stat-icon--purple{color:#a286f4;background:#f1edff}.stat-card span{display:block;color:#9ba4b2;font-size:11px;margin-bottom:5px}.stat-card strong{font:800 22px Manrope}.stat-card strong small{color:#a5adba;font-size:13px}.stat-card em{position:absolute;right:17px;bottom:20px;font-size:10px;font-style:normal}.positive{color:#57bb82}.neutral{color:#f0a15b}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-heading h2{margin:0;font:700 17px Manrope;letter-spacing:-.5px}.text-button{background:none;color:#f27852;font-size:11px;font-weight:700}.text-button--danger{color:#d64545}.printer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.printer-card,.panel,.empty-panel{background:#fff;border:1px solid #eef0f4;border-radius:10px}.printer-card{padding:20px;min-height:178px}.printer-card__top{display:flex;align-items:center;gap:11px}.printer-avatar{width:38px;height:38px;border-radius:10px;color:#fff;display:grid;place-items:center}.printer-card h3{font-size:13px;margin:0 0 4px}.printer-card p{color:#a1a9b6;font-size:10px;margin:0}.status{margin-left:auto;font-size:9px;font-weight:700}.status span{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:5px}.status--printing{color:#f27852}.status--printing span{background:#f27852}.status--ready{color:#52b87d}.status--ready span{background:#52b87d}.status--offline{color:#a7afbb}.status--offline span{background:#a7afbb}.status--error{color:#d35e4a}.status--error span{background:#d35e4a}.job{margin-top:25px}.job__row{display:flex;justify-content:space-between;font-size:10px;color:#697485;margin-bottom:9px;gap:10px}.job__row strong{color:#f27852}.progress,.mini-progress{height:5px;overflow:hidden;border-radius:5px;background:#f1f2f5}.progress span,.mini-progress span{display:block;height:100%;background:#f27852;border-radius:inherit}.printer-empty{display:flex;flex-direction:column;gap:14px;margin-top:27px;color:#9da6b3;font-size:10px}.page-message,.empty-panel{padding:20px;color:#697485;font-size:12px}.page-message{margin:0 0 18px;background:#fff;border:1px solid #eef0f4;border-radius:10px}.page-message--error,.auth-error{color:#d35e4a;background:#fff0ea;border-radius:6px;padding:9px 12px;font-size:11px}.page-message--error{border:1px solid #f2d0ca}.empty-panel{display:grid;place-items:center;min-height:178px;text-align:center}.empty-panel--compact{min-height:auto;padding:16px 0 0;border:0;background:transparent}.lower-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px;margin-top:39px}.panel{padding:21px 22px}.spool-list{display:grid;gap:11px}.spool-row{display:flex;align-items:center;gap:11px;border-bottom:1px solid #f0f1f4;padding-bottom:11px}.spool-row:last-child{border:0;padding-bottom:0}.spool-color{width:25px;height:25px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #dfe3e9}.spool-info{flex:1;min-width:0}.spool-info strong,.spool-info span{display:block}.spool-info strong{font-size:10px}.spool-info strong small{color:#f27852;font-size:9px;margin-left:6px}.spool-info span{color:#a1a9b5;font-size:9px;margin-top:4px}.spool-remaining{width:75px}.spool-remaining strong{display:block;text-align:right;font-size:10px;margin-bottom:5px}.mini-progress{height:4px}.mini-progress span{background:#5dbd87}.mini-progress span.low{background:#f27852}.spool-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:39px 0 23px}.spool-summary>div{background:#fff;border:1px solid #eef0f4;border-radius:10px;padding:18px 20px}.spool-summary span{display:block;color:#9ba4b2;font-size:11px;margin-bottom:7px}.spool-summary strong{font:800 23px Manrope}.warning-text{color:#f27852}.spool-toolbar{display:flex;gap:12px;margin-bottom:18px}.search-box{display:flex;align-items:center;gap:10px;flex:1;background:#fff;border:1px solid #e5e8ee;border-radius:7px;color:#a2aab7;padding:0 13px}.search-box input,.spool-toolbar select{border:0;outline:0;background:transparent;color:#596474;font-size:12px}.search-box input{width:100%;padding:11px 0}.spool-toolbar select{background:#fff;border:1px solid #e5e8ee;border-radius:7px;padding:0 32px 0 13px}.managed-spools{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.managed-spool{background:#fff;border:1px solid #eef0f4;border-radius:10px;padding:20px}.managed-spool__header{display:flex;align-items:center;gap:12px}.spool-color.large{width:38px;height:38px}.managed-spool h3,.managed-printer h3{margin:0;font-size:13px}.managed-spool h3 small{color:#f27852;font-size:10px;margin-left:5px}.managed-spool p{color:#9da6b3;font-size:10px;margin:4px 0 0}.ok-badge,.low-badge{margin-left:auto;border-radius:20px;padding:5px 8px;font-size:9px;font-weight:700}.ok-badge{color:#4fae78;background:#eaf8f0}.low-badge{color:#e66f4e;background:#fff0ea}.managed-spool__meta{display:flex;justify-content:space-between;color:#9ca5b1;font-size:10px;margin:22px 0 8px;gap:12px}.managed-spool__meta b,.managed-printer__meta b{color:#424d5c}.spool-progress{height:6px}.spool-progress span.low{background:#f27852}.managed-spool__actions,.managed-printer__actions{display:flex;justify-content:flex-end;gap:15px;margin-top:17px}.danger-button{color:#a7afba;background:none;font-size:11px}.danger-button:hover{color:#e66f4e}.empty-spools{grid-column:1 / -1;padding:40px;background:#fff;border-radius:10px;color:#929cab;text-align:center}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#20273566}.spool-form{width:min(100%,480px);background:#fff;border-radius:12px;padding:25px;box-shadow:0 20px 60px #20273533}.modal-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px}.modal-heading h2{margin:0;font:700 20px Manrope}.modal-heading .eyebrow{margin-bottom:8px}.close-button{color:#8993a1;background:none;font-size:25px;line-height:1}.spool-form label{display:block;color:#6f7a89;font-size:11px;font-weight:700;margin-bottom:14px}.spool-form input,.spool-form select{display:block;width:100%;margin-top:7px;border:1px solid #e1e5eb;border-radius:6px;padding:10px;outline:0;color:#344052;font:inherit;font-size:12px}.spool-form input:focus,.spool-form select:focus{border-color:#f27852}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.secondary-button{padding:11px 16px;border-radius:7px;color:#707a89;background:#f1f3f6;font-size:12px;font-weight:700}.heading-actions{display:flex;gap:10px;align-items:center}.scan-button{color:#f27852;background:#fff0ea}.prusament-link{display:block;color:#f27852;font-size:10px;margin-top:10px;text-decoration:none}.qr-confirmed{color:#4fae78;background:#eaf8f0;border-radius:6px;padding:9px;font-size:10px}.scanner-modal{width:min(100%,430px);background:#fff;border-radius:12px;padding:25px;box-shadow:0 20px 60px #20273533}.qr-video{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:9px;background:#202735}.scanner-status{color:#4fae78;font-size:11px;font-weight:700;margin:12px 0 0}.scanner-help,.printer-version,.printer-jobs__empty{color:#929cab;font-size:11px;line-height:1.5}.scan-error,.printer-error{color:#d35e4a;font-size:11px}.manual-id{display:flex;align-items:flex-end;gap:10px;margin-top:14px}.manual-id label{flex:1}.managed-printers{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:22px}.managed-printer{background:#fff;border:1px solid #eef0f4;border-radius:10px;padding:20px}.managed-printer__header{display:flex;align-items:center;gap:12px}.managed-printer__header h3{margin:0;font-size:15px}.managed-printer__header p{margin:4px 0 0;color:#9da6b3;font-size:11px}.managed-printer__prusalink{margin-top:18px;padding:14px;border:1px solid #eef0f4;border-radius:9px;background:#fafbfe}.managed-printer__section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:13px}.managed-printer__section-title span{color:#424d5c;font-size:11px;font-weight:800}.managed-printer__section-title small{color:#9ca5b1;font-size:9px;font-weight:700}.managed-printer__meta{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 14px;margin:0 0 12px;color:#9ca5b1;font-size:10px}.managed-printer__meta span{display:block}.managed-printer__meta b{display:inline-block;margin-right:3px}.printer-version,.printer-error{margin:0}.printer-error{margin-top:10px}.printer-jobs{margin-top:18px;padding-top:18px;border-top:1px solid #eef0f4}.printer-jobs h4{margin:0 0 10px;font-size:12px}.printer-job{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #f3f4f7}.printer-job:first-of-type{border-top:0}.printer-job strong,.printer-job small,.printer-job span{display:block}.printer-job small{color:#9da6b2;font-size:9px;margin-top:4px}.checkbox-field{display:flex!important;align-items:center;gap:10px}.checkbox-field input{width:auto!important;margin:0!important}.auth-shell{min-height:100vh;display:grid;place-items:center;background:#f6f7fa;padding:20px}.auth-card{width:min(100%,380px);background:#fff;border:1px solid #eef0f4;border-radius:14px;padding:32px 28px;box-shadow:0 20px 60px #20273522}.auth-card .brand{padding:0;margin-bottom:22px}.auth-card h1{margin:0;font:800 24px Manrope;letter-spacing:-.8px}.auth-card .subtitle{margin:8px 0 22px}.auth-card label{display:block;color:#6f7a89;font-size:11px;font-weight:700;margin-bottom:14px}.auth-card input{display:block;width:100%;margin-top:7px;border:1px solid #e1e5eb;border-radius:6px;padding:10px;outline:0;color:#344052;font:inherit;font-size:12px}.auth-card input:focus{border-color:#f27852}.auth-submit{width:100%;margin-top:6px;text-align:center}.auth-switch{display:block;width:100%;margin-top:16px;text-align:center}.admin-heading{padding-bottom:0}.admin-tabs{display:flex;gap:8px;margin:30px 0 22px;border-bottom:1px solid #eef0f4}.admin-tab{padding:10px 4px;color:#9099a8;font-size:12px;font-weight:700;border-bottom:2px solid transparent;margin-bottom:-1px}.admin-tab:hover{color:#4a5468}.admin-tab.active{color:#f27852;border-bottom-color:#f27852}.user-list{display:grid;gap:14px}.user-row{display:flex;align-items:center;gap:14px;border-bottom:1px solid #f0f1f4;padding-bottom:14px}.user-row:last-child{border:0;padding-bottom:0}.user-info{flex:1;min-width:0}.user-info strong,.user-info span{display:block}.user-info strong{font-size:12px}.user-info span{color:#a1a9b5;font-size:10px;margin-top:4px}.role-badge{border-radius:20px;padding:5px 10px;font-size:9px;font-weight:700;color:#707a89;background:#f1f3f6}.role-badge--admin{color:#f27852;background:#fff0ea}.user-actions{display:flex;gap:14px;flex-shrink:0}.settings-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid #f0f1f4}.settings-row:last-child{border:0;padding-bottom:0}.settings-row strong{display:block;font-size:12px}.settings-row p{margin:5px 0 0;color:#9099a8;font-size:11px}.settings-row--disabled{opacity:.6}.settings-row .checkbox-field{margin:0}.soon-badge{margin-left:8px;border-radius:20px;padding:3px 8px;font-size:8px;font-weight:700;color:#a5adba;background:#f1f3f6;vertical-align:middle}@media(max-width:900px){.sidebar{width:210px}.stats,.printer-grid,.lower-grid,.managed-printers{grid-template-columns:1fr}.content{padding:35px 4%}}@media(max-width:700px){.spool-summary,.managed-spools,.managed-printer__meta,.form-grid{grid-template-columns:1fr}.spool-summary{margin-top:28px}.managed-spool,.managed-printer{padding:16px}.managed-spool__meta{flex-direction:column}}@media(max-width:620px){.sidebar{position:fixed;inset:0 auto 0 0;z-index:12;width:min(280px,82vw);transform:translate(-100%);transition:transform .2s ease;box-shadow:0 20px 45px #20273524}.sidebar.sidebar--open{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:11;background:#2027354a}.mobile-close{display:grid;position:absolute;top:18px;right:12px;width:33px;height:33px;place-items:center;border-radius:8px;color:#8a94a3;background:#f4f6fa;font-size:22px}.topbar{height:64px;justify-content:space-between;padding:0 20px}.mobile-brand{display:flex;padding:0;font-size:16px}.mobile-brand .brand-mark{width:27px;height:27px;font-size:15px}.mobile-menu{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;font-size:20px;color:#7f8898;background:#f2f4f8}.content{padding:31px 18px}.page-heading{align-items:flex-start;gap:20px;flex-direction:column}.page-heading h1{font-size:26px}.primary-button,.heading-actions button{align-self:stretch;width:100%}.heading-actions{width:100%;flex-direction:column-reverse}.stats{margin:28px 0 35px;gap:10px}.stat-card{min-height:80px;padding:14px}.stat-card em{right:14px;bottom:17px}.printer-card{min-height:166px}.section-heading{align-items:flex-start;gap:10px}.section-heading .text-button{white-space:nowrap}.lower-grid{margin-top:32px}.panel{padding:18px 15px}.managed-printer__actions{flex-wrap:wrap;justify-content:flex-start}}
