*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{min-height:100vh;background:#000}button,input{font:inherit}.app{min-height:100vh;background:radial-gradient(circle at top,#121820,#07090d 38%,#000);color:#fff;font-family:Inter,Noto Sans KR,sans-serif;display:flex;flex-direction:column}.app-content{flex:1;padding:24px 24px 8px}.toolbar{display:flex;gap:10px;justify-content:flex-end}.debug-toggle{border:1px solid #3a4350;border-radius:10px;background:#101820;color:#d6e4ff;padding:8px 12px;font-size:.85rem}.lang-switcher{position:relative}.icon-button{width:42px;height:42px;border-radius:999px;border:1px solid #3a4350;background:#161a20d9;color:#fff;font-size:20px;cursor:pointer;transition:border-color .2s ease,transform .2s ease}.icon-button:hover{border-color:#7f8ca3;transform:translateY(-1px)}.lang-menu{position:absolute;right:0;top:48px;background:#161616;border:1px solid #333;border-radius:12px;padding:8px;display:grid;gap:6px;min-width:120px;z-index:3}.lang-menu button{background:#222;color:#fff;border:none;border-radius:8px;padding:8px}.hero{text-align:center;margin:28px auto 34px}.tesla-wordmark{width:min(763px,90vw);height:auto;margin-bottom:10px}.hero h1{margin:20px 0 6px;font-size:clamp(2rem,4vw,3rem);letter-spacing:.08em}.hero p{margin:0;color:#c5cfde}.seo-intro{margin:10px auto 0;max-width:820px;line-height:1.5;font-size:.95rem;color:#a7a7a7}.launcher-tabs{margin:22px auto 0;width:fit-content;border:1px solid #2f3f58;border-radius:999px;background:#0a101ad9;padding:4px;display:flex;gap:4px}.launcher-tab{border:none;border-radius:999px;background:transparent;color:#b8c5da;font-weight:700;letter-spacing:.06em;padding:10px 20px;cursor:pointer;transition:background .2s ease,color .2s ease}.launcher-tab.active{background:linear-gradient(120deg,#f31f4f,#9d2148);color:#fff}.launcher-tab:hover{color:#fff}.grid{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,210px));justify-content:center;gap:16px}.card{position:relative;border-radius:16px;min-height:145px;background:linear-gradient(145deg,#0c121df5,#0a0c12eb);border:1px solid #273042;box-shadow:inset 0 1px #ffffff0a,0 10px 24px #00000047;display:grid;place-content:center;text-align:center;gap:12px;padding:14px;color:#fff;text-decoration:none;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-2px);border-color:#4d5d7a;box-shadow:inset 0 1px #ffffff0d,0 14px 26px #00000052}.card img{width:auto;max-width:120px;max-height:54px;margin:0 auto}.service-logo-frame{display:grid;place-items:center}.card:not(.custom) img{max-height:66px}.service-logo-wavve{max-width:140px}.service-logo-tving{max-width:132px;border-radius:8px}.card.custom span{font-size:1.1rem;font-weight:700}.card-katago-baduk{overflow:hidden;place-content:center;min-height:172px;padding:8px;background:radial-gradient(circle at 50% 18%,rgb(214 160 96 / 22%),transparent 34%),linear-gradient(160deg,#0f141ffa,#080a10fa);border-color:#4d3f2d;box-shadow:inset 0 1px #ffffff0a,0 14px 28px #00000057}.card-katago-baduk .service-overlay-label{position:absolute;left:50%;bottom:16px;transform:translate(-50%);display:grid;gap:2px;justify-items:center;width:176px;padding:0 16px 14px;pointer-events:none}.card-katago-baduk .service-overlay-label strong{color:#fff6e8;font-size:.9rem;font-weight:800;letter-spacing:.02em;line-height:1.1;text-shadow:0 2px 14px rgb(0 0 0 / 72%)}.card-katago-baduk .service-overlay-label small{color:#f0d29e;font-size:.62rem;font-weight:700;letter-spacing:.08em;line-height:1;text-transform:uppercase;text-shadow:0 2px 12px rgb(0 0 0 / 64%)}.add-card{cursor:pointer}.plus{font-size:2rem}.footer{min-height:86px;background:linear-gradient(180deg,#05080c66,#080c12fa);border-top:1px solid #202a3c;display:flex;align-items:center;justify-content:center;padding:14px 24px}.footer-inner{width:min(1120px,100%);display:flex;align-items:center;justify-content:space-between;gap:12px}.footer-label{color:#95a4bd;letter-spacing:.16em;font-size:.8rem;font-weight:600}.contact-button{border:1px solid #3a4350;border-radius:10px;background:#171d26;color:#fff;padding:10px 18px;cursor:pointer;transition:background .2s ease,border-color .2s ease}.contact-button:hover{background:#202938;border-color:#5d6d89}.modal-overlay{position:fixed;inset:0;background:#000000a6;display:grid;place-items:center;padding:16px}.modal{width:min(440px,100%);background:linear-gradient(155deg,#141a26f0,#0b0e16f5);border:1px solid #2e3c55;border-radius:18px;padding:22px;display:grid;gap:14px;box-shadow:inset 0 1px #ffffff0f,0 24px 42px #0000007a}.modal h2{margin:0}.modal-description{margin:0;color:#c5cfde}.modal label{display:grid;gap:6px;font-size:.95rem}.modal input{background:#1d1d1d;color:#fff;border:1px solid #444;border-radius:8px;padding:9px}.modal a{color:#8fb3ff;text-decoration:none;border-bottom:1px solid rgb(143 179 255 / 45%);width:fit-content}.modal a:hover{color:#b9d1ff;border-bottom-color:#b9d1ffb3}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-actions button{border:none;border-radius:10px;background:#1f2736;color:#fff;padding:10px 14px;cursor:pointer;transition:transform .2s ease,background .2s ease}.modal-actions button:hover{transform:translateY(-1px);background:#2a3550}.modal-actions button[type=submit],.modal-actions .danger-button{background:#de1948}.contact-modal{width:min(520px,100%);gap:16px}.contact-header{display:grid;gap:10px}.contact-badge{width:fit-content;padding:4px 10px;border-radius:999px;background:#3153a347;border:1px solid rgb(127 160 237 / 45%);color:#c8dbff;font-size:.76rem;letter-spacing:.14em;font-weight:700}.contact-list{display:grid;gap:12px}.contact-item{margin:0;border:1px solid #2f3c56;background:#111723cc;border-radius:12px;padding:12px;display:grid;gap:6px}.contact-item span{color:#93a4c0;font-size:.88rem;font-weight:600}.debug-panel{position:fixed;right:14px;bottom:96px;width:min(580px,calc(100vw - 28px));max-height:54vh;overflow:auto;background:#060a10f5;border:1px solid #30415e;border-radius:12px;box-shadow:0 16px 28px #00000073;padding:14px;z-index:4}.debug-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.debug-header h2{margin:0;font-size:1rem}.debug-header button{border:1px solid #5873a2;border-radius:8px;background:#1d2a44;color:#e8efff;padding:8px 10px}.debug-note{margin:10px 0;color:#bfd3f8;font-size:.85rem}.debug-log-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.debug-log-item{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.78rem;border:1px solid #2f3950;border-radius:8px;padding:8px;word-break:break-word;color:#d4def1}.debug-log-item.info{border-color:#2d476d}.debug-log-item.warn{border-color:#715d2b;color:#ffe7ac}.debug-log-item.error{border-color:#7a3743;color:#ffd0d9}@media(max-width:640px){.app-content{padding:18px 14px 8px}.footer{min-height:74px;padding:10px 14px}.footer-label{font-size:.72rem;letter-spacing:.12em}}.card img.service-logo-slither-io,.card img.service-logo-newbl-spots{width:94%;max-width:none;max-height:none;border-radius:10px}.card img.service-logo-katago-baduk{width:132px;max-width:132px;max-height:132px;margin:0;transform:translateY(-16px)}.service-logo-frame-katago{width:176px;height:128px;margin-top:2px;border-radius:10px;background:linear-gradient(180deg,#f8f1df,#d8ccb5);border:1px solid rgb(255 244 224 / 30%);box-shadow:0 18px 30px #0000003d}
