
:root{
  --bg:#f3f4f6; --surface:#ffffff; --text:#1f2933; --muted:#68737d;
  --line:#e6e8eb; --orange:#f39a1e; --orange-dark:#d97d00; --blue:#1677a8;
  --nav:#202a33; --nav-muted:#9eabb5; --shadow:0 10px 30px rgba(25,35,45,.07);
  --radius:20px; --radius-sm:14px; --sidebar:244px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}
button,input{font:inherit}
button{cursor:pointer}
.app-shell{min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:var(--nav);color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:50}
.brand{display:flex;align-items:center;gap:12px;padding:0 10px 28px}
.brand-mark{width:42px;height:42px;border-radius:12px;background:var(--orange);display:grid;place-items:center;color:#fff;font-weight:900;font-size:22px}
.brand strong{display:block;letter-spacing:.08em;font-size:14px}.brand span{font-size:12px;color:#b8c2ca;letter-spacing:.18em}
.nav{display:grid;gap:6px}.nav-item{border:0;background:transparent;color:var(--nav-muted);display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;text-align:left}
.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.08);color:#fff}.nav-item.active{box-shadow:inset 3px 0 var(--orange)}
.nav-icon{width:22px;text-align:center;font-size:17px}.sidebar-spacer{flex:1}.secondary{margin-top:20px}
.support-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:14px;margin-top:18px;display:grid;gap:5px}
.support-card span,.secure-note small{font-size:12px;color:#aab5be}.support-card a{color:#fff;font-size:13px;margin-top:5px}
.secure-note{display:flex;gap:10px;align-items:center;margin:16px 8px 0}.secure-note strong,.secure-note small{display:block;font-size:12px}
.main{margin-left:var(--sidebar);min-height:100vh}
.topbar{height:78px;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 34px;gap:22px;position:sticky;top:0;z-index:40}
.mobile-menu{display:none;border:0;background:transparent;font-size:22px}
.global-search{position:relative;max-width:660px;flex:1;display:flex;align-items:center;gap:10px;background:#f5f6f7;border:1px solid #e9ebed;border-radius:14px;padding:0 13px}
.global-search input{width:100%;height:44px;border:0;background:transparent;outline:0}.global-search kbd{font-size:11px;background:white;border:1px solid #d9dde1;border-bottom-width:2px;border-radius:6px;padding:3px 7px;color:#7c8790}
.search-results{position:absolute;top:52px;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);display:none;max-height:380px;overflow:auto;padding:8px}
.search-results.visible{display:block}.search-result{display:flex;justify-content:space-between;align-items:center;padding:11px;border-radius:10px}.search-result:hover{background:#f4f5f6}.search-result small{color:var(--muted)}
.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.icon-button{position:relative;width:40px;height:40px;border:0;background:#f5f6f7;border-radius:12px}.badge{position:absolute;right:-3px;top:-3px;background:var(--orange);color:#fff;border-radius:20px;padding:2px 5px;font-size:10px}
.profile-button{border:0;background:transparent;display:flex;align-items:center;gap:9px}.avatar{width:38px;height:38px;border-radius:50%;background:#dfe5e8;display:grid;place-items:center;font-weight:800}.profile-copy{text-align:left}.profile-copy strong,.profile-copy small{display:block}.profile-copy small{color:var(--muted);font-size:11px}
.page{display:none;padding:34px;max-width:1500px;margin:0 auto}.page.active{display:block}
.hero{display:grid;grid-template-columns:1.1fr .9fr;min-height:270px;border-radius:26px;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#fff 57%,#edf1f3 57%);box-shadow:var(--shadow);margin-bottom:32px}
.hero-copy{padding:42px 46px;align-self:center}.eyebrow,.section-kicker{font-size:11px;font-weight:800;letter-spacing:.13em;color:var(--orange-dark)}
.hero h1,.page-intro h1{font-size:42px;line-height:1.05;margin:10px 0 12px;letter-spacing:-.035em}.hero p,.page-intro p{color:var(--muted);font-size:17px}
.primary-button{border:0;background:var(--orange);color:#fff;padding:12px 18px;border-radius:12px;font-weight:800;margin-top:12px}.primary-button:hover{background:var(--orange-dark)}
.hero-visual{position:relative;min-height:270px;background:linear-gradient(145deg,#cdd5da,#f1f3f4 60%);overflow:hidden}
.machine{position:absolute;bottom:34px;background:linear-gradient(145deg,#f3b034,#dc7c0c);border:8px solid #dfe3e5;border-radius:14px;box-shadow:0 22px 35px rgba(30,40,50,.22)}
.machine:before{content:"";position:absolute;left:17%;right:17%;top:22%;height:28%;background:repeating-linear-gradient(90deg,#3a4650 0 4px,#1f2930 4px 8px);border-radius:5px}
.machine-one{width:160px;height:116px;right:28px}.machine-two{width:135px;height:96px;right:172px;bottom:28px}.machine-three{width:105px;height:76px;right:280px;bottom:22px}
.hero-overlay{position:absolute;z-index:3;left:26px;top:24px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);padding:16px 18px;border-radius:16px;box-shadow:0 12px 28px rgba(30,40,50,.14)}
.hero-overlay ul{list-style:none;padding:8px 0 0;margin:0;display:grid;gap:5px;color:var(--muted);font-size:12px}.status-dot{display:inline-block;width:8px;height:8px;background:#45a86b;border-radius:50%;margin-right:7px}
.section-block{margin:30px 0}.section-heading,.card-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:16px}
.section-heading h2,.card-heading h2{margin:3px 0 0;font-size:23px;letter-spacing:-.02em}.card-heading p{margin:5px 0 0;color:var(--muted);font-size:13px}
.text-button{border:0;background:transparent;color:var(--blue);font-weight:750;padding:6px}
.app-grid{display:grid;grid-template-columns:repeat(8,minmax(110px,1fr));gap:14px}
.app-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:17px;min-height:136px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 5px 16px rgba(30,40,50,.04);transition:.16s ease}
.app-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.app-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:23px;color:#fff;font-weight:900}
.app-card strong{font-size:14px}.app-card small{font-size:11px;color:var(--muted)}.favorite-toggle{position:absolute;right:10px;top:10px;border:0;background:#f4f5f6;border-radius:9px;width:30px;height:30px}
.catalog-app{position:relative}
.dashboard-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 5px 18px rgba(30,40,50,.045);padding:22px}.span-7{grid-column:span 7}.span-5{grid-column:span 5}.span-6{grid-column:span 6}
.action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.action-card{border:1px solid var(--line);background:#fafafa;border-radius:14px;padding:14px;display:flex;gap:12px;align-items:center;text-align:left}.action-card:hover{background:#fff;box-shadow:0 7px 16px rgba(30,40,50,.07)}
.action-icon,.update-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto;font-weight:900}.action-icon{background:#eef1f3}.action-card strong,.action-card small{display:block}.action-card small{color:var(--muted);font-size:11px;margin-top:3px}
.document-list{display:grid}.document-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf0f2}.document-row:last-child{border-bottom:0}.doc-icon{width:38px;height:38px;border-radius:10px;background:#eef4f7;display:grid;place-items:center}.document-row strong,.document-row small{display:block}.document-row small{color:var(--muted);font-size:11px}.doc-action{margin-left:auto;color:var(--blue);font-size:12px}
.update-list{display:grid;gap:12px}.update-list article{display:flex;gap:12px;align-items:center}.update-list strong,.update-list small{display:block}.update-list small{font-size:11px;color:var(--muted)}.orange{background:#fff0de;color:#d77b00}.blue{background:#e9f3f8;color:#1677a8}.green{background:#e7f5eb;color:#378656}
.news-feature{background:linear-gradient(135deg,#fff7e8,#fff);border:1px solid #f4e3c6;border-radius:16px;padding:18px}.news-feature h3{margin:9px 0 7px}.news-feature p{color:var(--muted);font-size:14px;line-height:1.5}.news-tag{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--orange-dark)}
.page-intro{margin:10px 0 28px}.page-intro h1{margin-bottom:8px}.page-intro p{max-width:760px}
.catalog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.catalog-app{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff;display:flex;align-items:center;gap:13px}.catalog-app .app-icon{width:44px;height:44px}.catalog-app div:nth-child(2){flex:1}.catalog-app strong,.catalog-app small{display:block}.catalog-app small{color:var(--muted);font-size:11px}
.app-category{margin-bottom:28px}.app-category h2{font-size:18px;margin-bottom:12px}.action-library{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.action-library .action-card{min-height:92px;background:#fff}
.document-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.folder-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 5px 18px rgba(30,40,50,.04)}.folder-card span{font-size:28px}.folder-card h3{margin:12px 0 5px}.folder-card p{margin:0;color:var(--muted);font-size:13px}
.updates-page{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.news-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.news-card.featured{grid-column:span 3;background:linear-gradient(135deg,#fff6e7,#fff)}.news-card p{color:var(--muted);line-height:1.55}
.settings-grid{display:grid;gap:14px}.setting-row{display:flex;justify-content:space-between;align-items:center}.setting-row h3{margin:0 0 5px}.setting-row p{margin:0;color:var(--muted)}
.switch{position:relative;width:48px;height:28px}.switch input{display:none}.switch span{position:absolute;inset:0;background:#cdd3d8;border-radius:20px}.switch span:before{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.2s}.switch input:checked+span{background:var(--orange)}.switch input:checked+span:before{transform:translateX(20px)}
.pill{background:#eef1f3;border-radius:20px;padding:7px 11px;font-size:12px;font-weight:700;color:#5d6972}
.toast{position:fixed;right:24px;bottom:24px;background:#202a33;color:#fff;padding:13px 17px;border-radius:12px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:100}.toast.show{opacity:1;transform:translateY(0)}
body.compact .card,body.compact .app-card{padding:15px}body.compact .dashboard-grid{gap:12px}
@media(max-width:1200px){.app-grid{grid-template-columns:repeat(4,1fr)}.catalog-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){
  .sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.mobile-menu{display:block}
  .topbar{padding:0 16px}.profile-copy,.top-actions>.icon-button{display:none}.page{padding:22px 16px}
  .hero{grid-template-columns:1fr}.hero-visual{min-height:200px}.dashboard-grid{grid-template-columns:1fr}.span-7,.span-5,.span-6{grid-column:auto}
  .action-grid,.action-library{grid-template-columns:repeat(2,1fr)}.document-categories,.updates-page{grid-template-columns:repeat(2,1fr)}.news-card.featured{grid-column:span 2}
}
@media(max-width:620px){
  .topbar{height:68px;gap:10px}.global-search kbd{display:none}.hero-copy{padding:28px}.hero h1,.page-intro h1{font-size:33px}.hero-visual{display:none}
  .app-grid{grid-template-columns:repeat(2,1fr)}.catalog-grid,.document-categories,.updates-page,.action-grid,.action-library{grid-template-columns:1fr}.news-card.featured{grid-column:auto}
  .section-heading,.card-heading{align-items:flex-start}.profile-button>span:last-child{display:none}.page{padding:18px 12px}.card{padding:18px}
}

.role-select{min-width:180px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px 12px;color:var(--text)}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid rgba(22,119,168,.28);outline-offset:2px}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}

.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}
.help-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 5px 18px rgba(30,40,50,.04)}
.help-icon{width:46px;height:46px;border-radius:14px;background:#fff0de;color:#d77b00;display:grid;place-items:center;font-size:21px;font-weight:900}
.help-card h3{margin:14px 0 7px}.help-card p{margin:0;color:var(--muted);line-height:1.5;font-size:14px}
.help-lower{margin-top:18px}.setup-list{margin:0;padding-left:22px;display:grid;gap:11px;color:var(--muted)}
.support-panel p{color:var(--muted);line-height:1.55}.inline-button{display:inline-block;text-decoration:none;margin-right:8px}
.secondary-button{border:1px solid var(--line);background:#fff;color:var(--text);padding:12px 16px;border-radius:12px;font-weight:750}
.mobile-bottom-nav{display:none}
@media(max-width:900px){
  body{padding-bottom:72px}
  .mobile-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;height:68px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-top:1px solid var(--line);z-index:60}
  .mobile-bottom-nav button{border:0;background:transparent;color:#74808a;display:grid;place-items:center;align-content:center;gap:2px}
  .mobile-bottom-nav button span{font-size:18px}.mobile-bottom-nav button small{font-size:10px}
  .mobile-bottom-nav button.active{color:var(--orange-dark)}
  .help-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .help-grid{grid-template-columns:1fr}
}

.catalog-app-main{border:0;background:transparent;display:flex;align-items:center;gap:13px;flex:1;text-align:left;padding:0;min-width:0}
.catalog-app-main span:last-child,.catalog-shortcut span:last-child{min-width:0}
.catalog-shortcut{width:100%;text-align:left}
.document-button{width:100%;border:0;background:transparent;text-align:left;font:inherit}
.document-button:hover{background:#f8f9fa}
.document-copy{min-width:0;flex:1}
.empty-state{grid-column:1/-1;background:#fff;border:1px dashed #cfd5da;border-radius:16px;padding:24px;text-align:center}
.empty-state strong{display:block}.empty-state p{color:var(--muted);margin:7px 0 0}
.no-result{cursor:default}
.fatal-error{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg);font-family:Inter,system-ui,sans-serif}
.fatal-error section{max-width:620px;background:#fff;border-radius:22px;padding:32px;box-shadow:var(--shadow)}
.fatal-error button{border:0;background:var(--orange);color:#fff;padding:11px 16px;border-radius:11px;font-weight:800}
.fatal-error pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f6f7;padding:12px;border-radius:10px}
.page h1{outline:none}
.search-result{width:100%;border:0;background:#fff;text-align:left}
.folder-card,.catalog-shortcut{cursor:pointer}
@media(max-width:620px){
  .document-row{gap:9px}.doc-action{display:none}
  .app-card{min-height:122px}
}

.skip-link{position:fixed;left:12px;top:-60px;z-index:200;background:#fff;color:#202a33;padding:10px 14px;border-radius:10px;box-shadow:var(--shadow)}
.skip-link:focus{top:12px}
