@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300..700&family=DM+Sans:ital,opsz,wght@0,9..40,300..700;1,9..40,300..700&display=swap";:root{--cream-100: #fffceb;--cream-200: #fef9d0;--stone-900: #1c1917;--stone-700: #44403c;--stone-600: #57534e;--stone-400: #a8a29e;--stone-200: #e7e5e4;--yellow-400: #ffcc00;--yellow-300: #fde047;--green-500: #22c55e;--red-500: #ef4444;--shadow-block: 6px 6px 0px var(--yellow-400);--shadow-block-sm: 4px 4px 0px var(--yellow-400);--font-heading: "Space Grotesk", sans-serif;--font-body: "DM Sans", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:var(--font-body);background-color:var(--cream-100);color:var(--stone-900);min-height:100vh;line-height:1.6}.page{min-height:100vh;display:flex;flex-direction:column}nav{padding:1.25rem 2rem;display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--stone-200);background:var(--cream-100);position:sticky;top:0;z-index:10}.nav-logo{font-family:var(--font-heading);font-size:1.375rem;font-weight:700;color:var(--stone-900);text-decoration:none;letter-spacing:-.02em}.nav-logo span{color:var(--yellow-400)}.nav-badge{font-family:var(--font-body);font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--stone-600);background:var(--cream-200);border:1.5px solid var(--stone-200);border-radius:4px;padding:.2rem .6rem}main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;gap:3rem}.hero{text-align:center;max-width:560px;animation:fade-in .5s ease both}.hero-eyebrow{font-family:var(--font-body);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--stone-600);margin-bottom:.875rem}.hero h1{font-family:var(--font-heading);font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:1.1;letter-spacing:-.03em;color:var(--stone-900);margin-bottom:1rem}.hero h1 em{font-style:normal;background:linear-gradient(135deg,var(--yellow-400),#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero p{font-size:1.0625rem;color:var(--stone-600);max-width:420px;margin:0 auto}.content-row{display:flex;gap:2rem;align-items:flex-start;width:100%;max-width:860px;animation:slide-up .55s ease .1s both}@media(max-width:700px){.content-row{flex-direction:column}}.login-card{background:#fff;border:2px solid var(--stone-900);box-shadow:var(--shadow-block);border-radius:4px;padding:2rem;flex:0 0 340px}.login-card h2{font-family:var(--font-heading);font-size:1.125rem;font-weight:700;margin-bottom:1.5rem;color:var(--stone-900)}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8125rem;font-weight:600;color:var(--stone-700);margin-bottom:.375rem;letter-spacing:.01em}.form-group input{width:100%;padding:.625rem .875rem;border:2px solid var(--stone-200);border-radius:4px;font-family:var(--font-body);font-size:.9375rem;color:var(--stone-900);background:var(--cream-100);transition:border-color .15s,box-shadow .15s;outline:none}.form-group input:focus{border-color:var(--stone-900);box-shadow:3px 3px 0 var(--yellow-400)}.btn-primary{width:100%;padding:.75rem 1.5rem;background:var(--stone-900);color:#fff;border:2px solid var(--stone-900);border-radius:4px;font-family:var(--font-heading);font-size:.9375rem;font-weight:600;cursor:pointer;transition:transform .12s,box-shadow .12s;margin-top:.5rem;letter-spacing:.01em}.btn-primary:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--yellow-400)}.btn-primary:active:not(:disabled){transform:translate(1px,1px);box-shadow:1px 1px 0 var(--yellow-400)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.error-msg{font-size:.8125rem;color:var(--red-500);margin-top:.75rem;padding:.5rem .75rem;background:#fef2f2;border:1.5px solid #fecaca;border-radius:4px}.success-msg{font-size:.8125rem;color:#15803d;margin-top:.75rem;padding:.5rem .75rem;background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:4px}.launcher{flex:1;display:flex;flex-direction:column;gap:1rem}.launcher-title{font-family:var(--font-heading);font-size:.8125rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--stone-400);margin-bottom:.25rem}.app-tile{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#fff;border:2px solid var(--stone-900);box-shadow:var(--shadow-block-sm);border-radius:4px;text-decoration:none;color:var(--stone-900);transition:transform .12s,box-shadow .12s;cursor:pointer}.app-tile:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--yellow-400)}.app-tile:active{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--yellow-400)}.tile-icon{font-size:2rem;line-height:1;flex-shrink:0}.tile-body{flex:1}.tile-name{font-family:var(--font-heading);font-size:1rem;font-weight:700;margin-bottom:.125rem}.tile-desc{font-size:.8125rem;color:var(--stone-600)}.tile-arrow{color:var(--stone-400);font-size:1.25rem;flex-shrink:0}.tile-soon{opacity:.5;cursor:default}.tile-soon:hover{transform:none;box-shadow:var(--shadow-block-sm)}.tile-badge{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--stone-600);background:var(--cream-200);border:1.5px solid var(--stone-200);border-radius:3px;padding:.15rem .4rem}footer{text-align:center;padding:1.5rem;font-size:.8125rem;color:var(--stone-400);border-top:1.5px solid var(--stone-200)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
