:root{--ink:#202631;--muted:#747c89;--line:#e7eaf0;--accent:#ff4502;--background:#f8f9fc}*{box-sizing:border-box}body{background:var(--background);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #d43a00}input:not([type=checkbox],[type=color]):focus-visible{outline-offset:-1px}.shell{flex-direction:column;min-height:100svh;display:flex}.header{border-bottom:1px solid var(--line);background:#ffffffb3;justify-content:space-between;align-items:center;height:96px;padding:0 6%;display:flex}.brand{letter-spacing:-.4px;align-items:center;gap:12px;font-size:19px;font-weight:650;display:flex}.brand-mark{background:var(--accent);color:#fff;border-radius:11px;place-items:center;width:35px;height:35px;display:grid;box-shadow:0 3px 7px #ff450229}.brand-divider{background:#dce0e8;width:1px;height:22px;margin:0 7px}.brand-section{color:var(--muted);letter-spacing:0;font-size:15px;font-weight:450}.admin-link{color:#626c7c;background:#fff;border:1px solid #e1e5ed;border-radius:9px;align-items:center;gap:9px;padding:10px 15px;font-size:14px;display:flex}.admin-link:hover{color:var(--accent);border-color:#a3b0d3}.home{flex:1;width:min(1040px,88%);margin:0 auto;padding:88px 0 70px}.eyebrow{letter-spacing:1.7px;color:#7a8393;align-items:center;gap:9px;font-size:12px;font-weight:600;display:flex}.tiny-grid{color:var(--accent);display:flex}h1{letter-spacing:-2px;margin:21px 0 15px;font-size:clamp(32px,4.5vw,50px);font-weight:620;line-height:1.15}h1>span{color:var(--accent)}.intro{color:var(--muted);margin:0;font-size:18px;line-height:1.6}.apps-section{margin-top:64px}.app-group+.app-group{margin-top:46px}.search{color:#98a1b0;margin-bottom:30px;position:relative}.search>svg{pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search input{appearance:none;border-radius:12px;margin:0;padding:13px 42px;font-size:15px}.search input::-webkit-search-cancel-button{display:none}.search-clear{color:#626c7c;background:#f1f3f8;border-radius:7px;padding:6px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.search-clear:hover{color:var(--ink);background:#e4e9f2}.section-heading{justify-content:space-between;align-items:center;margin-bottom:23px;display:flex}.section-heading h2{margin:0;font-size:16px;font-weight:600}.section-heading>span{color:var(--muted);background:#edf0f6;border-radius:20px;padding:5px 10px;font-size:13px}.app-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.app-tile{background:#fff;border:1px solid #e7eaf1;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:21px;min-height:184px;padding:28px 12px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative}.app-tile:hover{border-color:#c9d3ef;transform:translateY(-4px);box-shadow:0 12px 30px #233b6910}.app-icon{color:#fff;letter-spacing:-1px;border-radius:17px;place-items:center;width:66px;height:66px;font-size:25px;font-weight:650;display:grid;position:relative;overflow:hidden;box-shadow:0 4px 7px #24324d0a}.app-icon:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #00000012}.app-icon img{object-fit:cover;width:100%;height:100%;display:block}.app-name{text-align:center;overflow-wrap:anywhere;font-size:15px;font-weight:550}.launch{color:#a1adc6;opacity:0;transition:opacity .18s;position:absolute;top:15px;right:15px}.app-tile:hover .launch,.app-tile:focus-visible .launch{opacity:1}footer{border-top:1px solid var(--line);color:#8a919d;justify-content:space-between;width:88%;margin:auto auto 0;padding:25px 0;font-size:13px;display:flex}footer>span:first-child{font-weight:600}.preview-note{color:var(--muted);margin:28px 0 0;font-size:13px}.empty{text-align:center;color:var(--muted);border:1px dashed #cfd6e2;border-radius:18px;padding:60px 20px}.empty h2{color:var(--ink);font-size:20px}.admin-main{width:min(1040px,88%);margin:50px auto}.admin-main h1{letter-spacing:-1px;font-size:34px}.admin-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-layout{grid-template-columns:minmax(0,1fr) 370px;align-items:start;gap:26px;margin-top:32px;display:grid}.admin-layout>*{min-width:0}.panel{border:1px solid var(--line);background:#fff;border-radius:16px;padding:26px}.panel h2{letter-spacing:-.5px;margin:0 0 24px;font-size:20px}label{margin-bottom:18px;font-size:14px;font-weight:550;display:block}input{width:100%;color:var(--ink);background:#fff;border:1px solid #dbe0e9;border-radius:8px;margin-top:8px;padding:11px 12px;display:block}input[type=color]{height:43px;padding:0;overflow:hidden}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:none;border-radius:7px}input[type=color]::-moz-color-swatch{border:none;border-radius:7px}input[type=checkbox]{width:auto;margin:0 7px 0 0;display:inline}input[type=file]{padding:10px;font-size:13px}button,.button{color:#fff;background:#c63800;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:11px 17px;font-size:14px;font-weight:550;display:inline-flex}button:disabled{opacity:.5;cursor:wait}.secondary{color:#566073;border-color:var(--line);background:#fff}.danger{color:#b13939;background:#fff3f3}.actions{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.segmented{border:0;margin:0 0 18px;padding:0}.segmented legend{margin-bottom:8px;padding:0;font-size:14px;font-weight:550}.segmented>div{background:#eef1f6;border-radius:10px;grid-template-columns:repeat(3,1fr);gap:5px;padding:4px;display:grid}.segmented label{margin:0;position:relative}.segmented input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0}.segmented span{text-align:center;color:#626c7c;border-radius:7px;padding:9px 10px;font-size:14px;font-weight:550;display:block}.segmented input:checked+span{color:var(--ink);background:#fff;box-shadow:0 1px 3px #24324d1a}.segmented input:focus-visible+span{outline-offset:-1px;outline:2px solid #d43a00}.admin-row{border-bottom:1px solid var(--line);align-items:center;gap:15px;padding:18px 0;display:flex}.admin-row:first-child{padding-top:0}.admin-row:last-child{border-bottom:0;padding-bottom:0}.admin-row .app-icon{border-radius:12px;flex-shrink:0;width:44px;height:44px;font-size:18px}.row-info{flex:1;min-width:0}.row-info strong{overflow-wrap:anywhere;font-size:15px;display:block}.tag{color:#b8410f;letter-spacing:.3px;vertical-align:1px;background:#ffe7dd;border-radius:20px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.tag-muted{color:#626c7c;background:#edf0f6}.tag-admin{color:#3b4fa6;background:#e4e9fb}.row-info small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);margin-top:5px;font-size:13px;display:block;overflow:hidden}.admin-row button{padding:8px}.login-card{border:1px solid var(--line);background:#fff;border-radius:20px;max-width:420px;margin:90px auto;padding:34px}.login-card h1{letter-spacing:-1px;font-size:30px}.login-card p,.hint{color:var(--muted);font-size:14px;line-height:1.6}.login-card form{margin-top:30px}.login-card button{width:100%}.notice{color:#aa3409;background:#fff0e9;border-radius:8px;margin:15px 0;padding:12px 14px;font-size:14px;line-height:1.5}.notice.error{color:#a62f2f;background:#fff1f0}@media (max-width:760px){.header{height:78px}.home{padding-top:54px}.app-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.app-tile{min-height:158px}.admin-layout{grid-template-columns:1fr}.brand-divider,.brand-section{display:none}.admin-main{margin-top:30px}.apps-section{margin-top:44px}}@media (max-width:480px){.app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-link{padding:9px}.home{width:88%}.login-card{margin:40px 6%;padding:26px}footer{align-items:flex-start;gap:14px}footer>span:last-child{text-align:right;max-width:180px}h1{letter-spacing:-1.2px}.admin-top{align-items:flex-start}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.app-tile:hover{transform:none}}
