:root{--ink:#132229;--night:#132b35;--sand:#d6a75a;--gold:#f0c772;--paper:#fff7df;--line:#fff7df3d}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--paper);background:linear-gradient(180deg, #132229bd, #081116eb), url(/pyramids.svg) center bottom / cover no-repeat, var(--night);margin:0;font-family:Segoe UI,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button:disabled{opacity:.58;cursor:wait}.edit-button{z-index:20;color:var(--paper);cursor:pointer;background:#08161cb8;border:1px solid #fff7df47;border-radius:8px;padding:9px 13px;font-weight:800;position:fixed;top:16px;left:16px;box-shadow:0 12px 26px #00000029}.edit-button:hover{border-color:#f0c772cc}.shell{flex-direction:column;justify-content:center;gap:38px;width:min(1120px,100% - 36px);min-height:100vh;margin:0 auto;padding:58px 0 46px;display:flex}.hero{max-width:920px;padding-top:3vh}.site-logo{z-index:19;border-radius:14px;width:230px;height:auto;display:block;position:fixed;top:70px;left:16px;box-shadow:0 14px 30px #00000047}.eyebrow{color:var(--gold);text-transform:uppercase;margin:0 0 16px;font-size:14px;font-weight:800}.hero h1{text-shadow:0 4px 24px #00000057;max-width:860px;margin:0;font-size:clamp(42px,7vw,92px);line-height:.96}.quote{color:#fff7dfe6;max-width:780px;margin:22px 0 0;font-size:clamp(20px,2.5vw,34px);font-weight:650;line-height:1.24}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.apps{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.app-card{border:1px solid var(--line);background:#08161cb3;border-radius:8px;flex-direction:column;justify-content:space-between;min-height:174px;padding:22px;transition:transform .16s,border-color .16s,background .16s;display:flex;box-shadow:0 18px 36px #0000002e}.app-card:hover{background:#152b33db;border-color:#f0c772cc;transform:translateY(-4px)}.code{width:fit-content;color:var(--gold);border:1px solid #f0c77280;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:900}.app-card strong{margin-top:24px;font-size:22px;line-height:1.12}.app-card small{color:#fff7dfb8;margin-top:16px;font-size:14px}.modal{z-index:9999;background:#050c109e;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.hidden,[hidden]{display:none!important}.modal-panel{width:min(680px,100%);max-height:calc(100vh - 36px);color:var(--paper);background:#10242d;border:1px solid #fff7df38;border-radius:8px;position:relative;overflow:auto;box-shadow:0 30px 80px #00000061}.modal-head{border-bottom:1px solid #fff7df29;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.modal-head h2{margin:0;font-size:22px}.icon-button{width:36px;height:36px;color:var(--paper);cursor:pointer;background:0 0;border:1px solid #fff7df3d;border-radius:8px;font-size:22px}.admin-section{padding:20px}.admin-section label{color:#fff7dfd1;gap:7px;margin-bottom:13px;font-weight:750;display:grid}.admin-section input{width:100%;color:var(--paper);background:#fff7df14;border:1px solid #fff7df3d;border-radius:8px;padding:11px 12px}.admin-section button{background:var(--gold);color:#14232a;cursor:pointer;border:0;border-radius:8px;padding:11px 14px;font-weight:900}.admin-section button.danger{color:#fff;background:#b83232}.form-error{color:#ffb4b4;min-height:20px;margin:0 0 10px}.cards-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.cards-list button{text-align:left;color:var(--paper);background:#fff7df14;border:1px solid #fff7df2e;gap:4px;display:grid}.cards-list button.active{border-color:#f0c772e6}.cards-list span{color:var(--gold);font-weight:900}.cards-list small{color:#fff7dfbd}.form-actions{flex-wrap:wrap;gap:10px;display:flex}.admin-mode .app-card{cursor:pointer}.new-card{color:var(--paper);text-align:left;cursor:pointer}.edit-button.active{color:var(--gold);border-color:#f0c772e6}@media (max-width:880px){.apps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.site-logo{width:140px;margin:44px 0 24px;position:static}.shell{gap:26px;width:min(100% - 24px,1120px);padding:34px 0 24px}.apps{grid-template-columns:1fr}.app-card{min-height:136px}}
