/* R5: Live implementation of the reference workstation design. */
:root{font-family:Inter,'Segoe UI',Arial,sans-serif;--coral:#c94b44;--dark:#1c2b34;--muted:#5a6a79;color:#15222e;font-synthesis:none;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:#243640}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ee8980;outline-offset:2px}[hidden]{display:none!important}img{max-width:100%}body:has(dialog[open]){overflow:hidden}.skip-link{position:fixed;top:-90px;left:10px;z-index:100;background:white;padding:14px}.skip-link:focus{top:10px}
.header{height:84px;background:linear-gradient(100deg,#192b35,#242c36 65%,#26232b);border-bottom:1px solid #626a73;display:flex;align-items:center;gap:21px;padding:0 22px;color:#f4f6f8;position:relative;z-index:50}.hamburger{color:#ebf0f2;background:transparent;border:0;border-right:1px solid #54616c;width:48px;height:52px;font-size:25px}.header-brand{width:345px;flex-shrink:0;border-right:1px solid #4a5962;height:68px;display:flex;align-items:center;justify-content:center;padding:5px 22px 5px 0}.header-brand img{width:100%;max-height:58px;object-fit:contain;filter:drop-shadow(1px 2px 2px #0006)}.header-title{font-size:21px;white-space:nowrap;flex:1}.global-search{height:52px;width:min(390px,26vw);background:linear-gradient(#f9f9f9,#eaecee);border-radius:11px;border:1px solid #ddd;display:flex;align-items:center;padding:0 15px;gap:11px;color:#6a7884;flex-shrink:1}.global-search>span{font-size:29px}.global-search input{background:none;border:0;outline:0;flex:1;min-width:0;color:#162535;font-size:14px}.global-search kbd{opacity:.5;font-size:11px}.theme-toggle{background:#171f28;border:1px solid #48505c;color:#f3f5f5;border-radius:25px;padding:8px 13px;display:flex;align-items:center;gap:10px;font-size:20px}.toggle-track{display:inline-block;width:41px;height:24px;border-radius:15px;background:#4b5764;position:relative}.toggle-track span{width:20px;height:20px;border-radius:50%;background:#eaf0f3;position:absolute;left:2px;top:2px;transition:transform .2s}.support-button{border:1px solid #cad0d2;background:transparent;color:#fff;border-radius:50%;height:48px;width:48px;font-size:24px;flex-shrink:0}
.side{position:fixed;left:0;top:84px;bottom:0;width:231px;z-index:40;background:linear-gradient(115deg,#182b35,#21333e 70%,#182831);border-right:1px solid #1c2b36;padding:22px 7px 18px;display:flex;flex-direction:column;color:#e7eef1;overflow-y:auto}.sidebar-nav{display:flex;flex-direction:column;gap:7px}.nav-item{border:1px solid transparent;border-radius:5px;min-height:46px;background:transparent;color:#dce4ec;padding:12px 16px 12px 20px;display:flex;align-items:center;gap:17px;font-size:15px;text-align:left}.nav-glyph{font-size:24px;width:27px;text-align:center;line-height:1}.nav-item:hover{background:#34434d}.nav-item.is-active{background:linear-gradient(92deg,#8d4140,#62393a);border-color:#a64b47;box-shadow:inset 5px 0 #ee6e64;color:#fff}.nav-item>span:last-child:not(.nav-glyph){margin-left:auto;font-size:11px}.sidebar-nav hr,.side-footer hr{border:0;border-top:1px solid #48545e;width:92%;margin:15px auto}.side-footer{margin-top:auto;padding:19px 19px 5px;display:flex;flex-direction:column;gap:5px;font-size:12px}.side-footer strong{font-size:16px}.side-footer small{line-height:1.7;color:#afbfc8;font-style:italic}.sidebar-backdrop{display:none}
.main{margin-left:231px;min-height:calc(100vh - 84px);background-color:#e6e1dc;background-image:linear-gradient(105deg,#ffffff28,#ffffff05 70%),url('/assets/background/workstation-light.webp');background-size:cover;background-position:center top;background-attachment:fixed}.main-inner{padding:0 clamp(20px,2.5vw,43px) 30px;max-width:1770px;margin:0 auto}.welcome{padding:55px 7px 0;min-height:217px;display:flex;justify-content:space-between;gap:30px}.welcome-copy{text-shadow:0 2px 22px #fff}.welcome-overline{font-size:17px;letter-spacing:.03em}.welcome h1{font-size:clamp(34px,3.05vw,56px);letter-spacing:-.06em;line-height:1.1;margin:13px 0 10px;font-weight:850}.welcome-copy>p{font-size:clamp(14px,1.2vw,19px);margin:0;line-height:1.5}.welcome-side{font-size:12px;white-space:nowrap;margin-top:-16px;text-align:right;color:#323840;text-shadow:0 2px 8px #fff}.welcome-side p{font-size:14px;font-style:italic;margin-top:11px}.category-bar{min-height:55px;margin-bottom:17px;display:flex;align-items:center;justify-content:space-between;gap:9px}.category-tabs{display:flex;gap:6px;flex-wrap:wrap}.tab,.view-btn{background:#fffd;border:1px solid #fffd;border-radius:11px;color:#30424f;padding:12px 16px;min-height:44px;white-space:nowrap;font-size:14px;box-shadow:0 4px 12px #393b3b18}.tab:hover,.view-btn:hover{background:#fff}.tab.is-active,.view-btn.is-active{background:linear-gradient(#df655c,#b73836);border-color:#c14a43;color:white}.view-actions{display:flex;gap:7px}.view-btn:not(.is-active){color:#f4f5f6;background:#1d2b35;border-color:#82939e}.directory-meta{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.product-card{display:flex;flex-direction:column;min-height:234px;min-width:0;border-radius:17px;background:linear-gradient(130deg,#fffffff0,#f8f6f1dd);border:1px solid #fffe;box-shadow:0 8px 20px #313b4337,0 2px 4px #57616926;backdrop-filter:blur(12px);padding:17px 19px 16px;transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-2px);box-shadow:0 12px 25px #24323e61}.product-meta{display:flex;align-items:flex-start;gap:11px;min-height:65px}.product-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:11px;position:relative;flex-shrink:0;background:linear-gradient(140deg,#548bb7,#326b9f);box-shadow:0 3px 4px #0003;color:white;font-size:22px;font-weight:900}.product-icon.category-healthcare{background:linear-gradient(145deg,#4db4af,#187984)}.product-icon.category-business{background:linear-gradient(140deg,#d1a96c,#976632)}.product-icon.category-utilities{background:linear-gradient(145deg,#d96458,#a8343a)}.product-icon.category-games{background:linear-gradient(140deg,#a06ec1,#714993)}.product-icon img{position:absolute;inset:0;width:100%;height:100%;padding:6px;border-radius:11px;object-fit:contain;background:#fffc}.type-label{font-size:10px;color:#215a7b;background:#e5eff5;border:1px solid #d4e2e8;border-radius:16px;padding:6px 9px;text-transform:uppercase;font-weight:850;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.type-healthcare{background:#e2f0ef;color:#176b69}.type-business{background:#f1e5d9;color:#765036}.type-utilities{background:#f5e0e0;color:#883a3f}.type-games{background:#ece4f4;color:#663f89}.favorite-btn{border:0;background:none;color:#526679;font-size:31px;line-height:1;margin:-5px -7px 0 auto}.favorite-btn.is-saved{color:#bf4342}.product-card h3{font-size:18px;letter-spacing:-.035em;margin:8px 0;line-height:1.14;color:#111e29}.product-description{margin:0 0 14px;color:#506378;font-size:14px;line-height:1.4;min-height:39px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.product-actions{display:flex;gap:10px;align-items:center;margin-top:auto}.open-action,.details-action{border-radius:10px;min-height:39px;flex:1;display:flex;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:700}.open-action{background:linear-gradient(#dc6158,#b53e3c);border:1px solid #b93d3b;color:white}.details-action{border:1px solid #cfd3d4;color:#192937;background:#fff8}.open-action:hover{background:#ac2c28}.details-action:hover{background:white}
.quick-access{margin:17px 0 30px;background:#ffffffb9;border-radius:16px;box-shadow:0 5px 20px #3337;border:1px solid #fff;backdrop-filter:blur(15px);padding:18px 22px}.quick-title{display:flex;align-items:center;gap:11px;margin-bottom:14px}.quick-title h2{margin:0 0 3px;font-size:20px;letter-spacing:-.035em}.quick-title p{font-size:13px;color:#536577;margin:0}.bolt{color:#b8763b;font-size:30px}.quick-links{display:flex;flex-wrap:wrap;gap:10px}.quick-links a{min-height:48px;display:flex;align-items:center;gap:9px;padding:8px 14px 8px 8px;background:#fffe;border:1px solid #fff;border-radius:11px;font-weight:600;font-size:13px;box-shadow:0 5px 12px #565e6623}.quick-links a:hover{background:white}.mini-icon{height:31px;width:31px;display:grid;place-items:center;background:#f3f5f5;border-radius:5px}.mini-icon img{width:100%;height:100%;object-fit:contain}.more-apps{padding-top:15px}.more-apps h2{display:inline-block;margin:0 0 14px;background:#fffc;border-radius:9px;padding:11px 17px;font-size:19px}.products-grid.is-list{grid-template-columns:repeat(2,minmax(0,1fr))}.products-grid.is-list .product-card{min-height:140px}.products-grid.is-list .product-icon{height:46px;width:46px}.products-grid.is-list .product-meta{min-height:47px}.products-grid.is-list .product-description{min-height:0}.site-footer{display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;font-size:12px;border-top:1px solid #7775;padding-top:25px}.empty-state{padding:55px;text-align:center;background:#fff9;border-radius:16px}.empty-state button{padding:11px 15px;background:#fff;border:1px solid #bbb;border-radius:7px}
dialog{border:1px solid #bbc5c9;border-radius:14px;max-width:min(460px,calc(100vw - 24px));width:100%;background:#f9f8f5;color:#1b2a35;box-shadow:0 20px 70px #0007}dialog::backdrop{background:#15222cc9}.dialog-body,.donate-inner{position:relative;padding:30px}.dialog-body h2,.donate-inner h2{font-size:27px;letter-spacing:-.04em}.dialog-body p,.donate-inner p{font-size:14px;color:#516475;line-height:1.5}.dialog-eyebrow{font-size:11px;color:#ab3b3a;font-weight:800}.dialog-close{position:absolute;right:18px;top:18px;background:white;color:#27333e;border:1px solid #ccc;border-radius:8px;font-size:24px;width:36px;height:36px}.dialog-body .open-action{display:inline-flex;padding:11px 22px;margin-top:10px}.donate-tabs{display:flex;gap:6px;margin:20px 0}.donate-tabs button{flex:1;border:1px solid #ccc;background:white;border-radius:7px;padding:10px}.donate-tabs button.is-active{background:#e6a8a0}.donate-panel{display:flex;flex-direction:column;align-items:center;gap:10px}.donate-panel img{width:220px;height:220px;object-fit:contain}.donate-panel a{border-radius:7px;padding:11px 20px;color:white;background:#b54240}
html[data-theme='dark']{color-scheme:dark}html[data-theme='dark'] .main{background-color:#26343e;background-image:linear-gradient(100deg,#15232a4d,#14212a19),url('/assets/background/workstation-dark.webp')}html[data-theme='dark'] .welcome,html[data-theme='dark'] .welcome-side{color:#edf1f4;text-shadow:0 3px 14px #000e}html[data-theme='dark'] .toggle-track span{transform:translateX(18px);background:#e98c7e}html[data-theme='dark'] .product-card{background:linear-gradient(130deg,#20323de8,#273d49dd);border-color:#697882;box-shadow:0 9px 20px #0009}html[data-theme='dark'] .product-card h3{color:#f3f7f9}html[data-theme='dark'] .product-description{color:#bcccd7}html[data-theme='dark'] .details-action{background:#293c47;border-color:#657783;color:#eff5f7}html[data-theme='dark'] .quick-access{background:#1c303edc;border-color:#56707c;color:#f6f6f6}html[data-theme='dark'] .quick-title p{color:#cad7dc}html[data-theme='dark'] .quick-links a{background:#27404c;border-color:#506976;color:#fff}html[data-theme='dark'] .more-apps h2{background:#192a35;color:white}html[data-theme='dark'] .site-footer{color:white}html[data-theme='dark'] .tab{background:#253643d9;color:white;border-color:#70808a}html[data-theme='dark'] .tab.is-active{background:#c44d46}
@media(max-width:1480px){.header-brand{width:250px}.header{gap:13px}.welcome-side{display:none}.products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1130px){.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-title{display:none}.category-bar{flex-wrap:wrap}.global-search{width:29vw}}
@media(max-width:850px){.header{height:70px;padding:0 12px;gap:10px}.header-brand{width:185px;height:62px;padding:0 7px 0 0}.header-brand img{max-height:48px}.hamburger{width:38px;height:42px}.side{top:70px;z-index:70;transform:translateX(-105%);transition:transform .2s}.side.is-open{transform:translateX(0)}.sidebar-backdrop:not([hidden]){position:fixed;display:block;inset:70px 0 0;background:#10232b85;z-index:60}.main{margin-left:0;background-attachment:scroll}.main-inner{padding:0 18px 30px}.welcome{min-height:165px;padding-top:35px}.welcome h1{font-size:37px}.global-search{flex:1;width:auto}.category-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:5px}.view-actions{margin-left:auto}}
@media(max-width:600px){.header-brand{width:140px;max-width:33vw}.global-search{padding:0 9px;height:38px}.global-search input{font-size:11px}.global-search kbd,.toggle-track,.support-button{display:none}.theme-toggle{padding:5px;font-size:18px}.header{gap:8px}.main-inner{padding:0 13px 24px}.welcome{padding-top:25px;min-height:160px}.welcome-overline{font-size:12px}.welcome h1{font-size:31px;margin:12px 0}.welcome-copy>p{font-size:13px}.category-bar{gap:7px}.tab{font-size:12px;padding:9px 11px;min-height:40px}.view-btn{font-size:12px;padding:8px 11px;min-height:40px}.products-grid,.products-grid.is-list{grid-template-columns:1fr;gap:11px}.product-card{min-height:208px}.quick-access{padding:15px}.quick-links a{flex:1 1 43%;padding-right:6px;min-width:0}.site-footer{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{.header,.side,.category-bar,.product-actions{display:none!important}.main{margin:0;background:white!important}.product-card{background:white!important;border:1px solid #ccc!important;box-shadow:none!important}}
/* Mobile layout guard: category scroller must not expand the page. */
html,body{max-width:100%;overflow-x:clip}
@media(max-width:600px){.category-bar{display:block;max-width:100%;min-width:0}.category-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;width:100%;min-width:0;max-width:100%;scrollbar-width:thin}.view-actions{margin-top:8px;justify-content:flex-end}.welcome,.welcome-copy{min-width:0}.main,.main-inner{min-width:0;max-width:100%}}

/* R5.1 navigation and directory usability repairs. */
.header{position:sticky;top:0;z-index:100}
.directory-meta{position:static;left:auto;width:auto;height:auto;overflow:visible;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;margin:0 0 13px;padding:0 2px;color:#263744;font-size:13px;font-weight:650}
.directory-meta>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.sort-inline{display:flex;align-items:center;gap:8px}
.sort-inline select{background:#fffefa;color:#233543;border:1px solid #a9b0b4;border-radius:8px;padding:8px 10px;min-height:40px}
#reset-filters{border:1px solid #a9b0b4;background:#fffefa;color:#233543;border-radius:8px;padding:8px 12px;min-height:40px}
#reset-filters:hover{background:#fbece7}
body.sidebar-collapsed .side{transform:translateX(-102%);visibility:hidden}
body.sidebar-collapsed .main{margin-left:0}
.side{transition:transform .22s ease,visibility .22s ease}
body.sidebar-open{overflow:hidden}
html[data-theme='dark'] .directory-meta{color:#f3f6f8}
html[data-theme='dark'] .sort-inline select,html[data-theme='dark'] #reset-filters{background:#243743;border-color:#72848c;color:#edf3f5}
@media(max-width:850px){body.sidebar-collapsed .side{transform:translateX(-105%);visibility:visible}body.sidebar-collapsed .main{margin-left:0}}
@media(max-width:600px){.directory-meta{align-items:flex-start;flex-wrap:wrap;gap:7px}.directory-meta>div{width:100%;justify-content:flex-end;gap:8px}.sort-inline select,#reset-filters{font-size:12px;min-height:34px;padding:6px 8px}.support-button{display:grid;place-items:center;height:34px;width:34px;min-width:34px;font-size:17px}.header-brand{width:124px;max-width:30vw}.header{gap:6px;padding:0 8px}.hamburger{width:32px;min-width:32px}.theme-toggle{padding:4px;font-size:17px;min-width:27px}.global-search{min-width:0}}
@media(prefers-reduced-motion:reduce){.side{transition:none}}
