@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;650;700&family=Noto+Sans+KR:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans','Noto Sans KR',sans-serif;color:#161b21;background:#cddfdc;font-synthesis:none;-webkit-font-smoothing:antialiased;font-size:16px}
*{box-sizing:border-box}
body{margin:0;min-height:100svh;padding:28px;background:radial-gradient(ellipse at 0% 0%,#aca0e8 0%,transparent 49%),radial-gradient(ellipse at 100% 5%,#bbefce 0%,transparent 50%),radial-gradient(ellipse at 0% 100%,#b7edce 0%,transparent 48%),radial-gradient(ellipse at 100% 100%,#b8addd 0%,transparent 48%),#cddfe0;background-attachment:fixed}
a{color:inherit;-webkit-tap-highlight-color:transparent}
.page{max-width:1180px;min-height:calc(100svh - 56px);padding:0 64px;margin:0 auto;background:#ffffff70;border:1px solid #ffffffc7;border-radius:36px;box-shadow:inset 0 1px 0 #fff8,0 18px 70px #4a466b06}
.header{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-size:20px;font-weight:700;letter-spacing:-.6px}
.brand-logo{display:block;width:116px;height:auto;flex-shrink:0}.brand{gap:0}
.brand-divider{font-weight:400;color:#7f858c;margin:0 10px}.brand-sub{font-size:16px;font-weight:500}
.header-note{border-radius:30px;background:#141a19;color:white;font-size:12px;padding:10px 19px}
.intro{padding:25px 0 38px;text-align:center}
.eyebrow{font-size:12px;font-weight:500;letter-spacing:2px;color:#646875;margin:0 0 14px}
h1{font-size:clamp(2rem,3.5vw,2.65rem);line-height:1.4;letter-spacing:-1.8px;font-weight:600;margin:0}h1 span{color:#161b21}
.intro-description{font-size:16px;line-height:1.8;color:#656c75;margin:14px 0 0;letter-spacing:-.4px}.mobile-break{display:none}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:17px}
.section-heading h1{font-size:14px;font-weight:500;margin:0;display:flex;gap:8px;align-items:center}
.count{min-width:24px;padding:3px 6px;background:#ffffff65;color:#68717a;border-radius:6px;font-size:12px;text-align:center}
.new-tab-hint{font-size:12px;color:#616875}.new-tab-hint span{font-size:16px;margin-left:4px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.service-card{--accent:#995823;--tint:#ffebcb;position:relative;display:flex;flex-direction:column;min-width:0;padding:24px;background:#ffffffed;border:1px solid #ffffff;border-radius:23px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;overflow:hidden}
.service-card::before{content:'';position:absolute;pointer-events:none;width:170px;height:130px;left:-38px;top:-70px;background:radial-gradient(ellipse,var(--tint),transparent 70%);opacity:.5}
.service-card.blue{--accent:#4b68a9;--tint:#dce8ff}.service-card.green{--accent:#346f55;--tint:#d6f0df}.service-card.purple{--accent:#7659a3;--tint:#e9ddfd}.service-card.teal{--accent:#287084;--tint:#d3edf6}.service-card.slate{--accent:#99576d;--tint:#ffe0e9}
a.service-card:hover{transform:translateY(-5px);box-shadow:0 15px 28px #5f5b8812}a.service-card:active{transform:translateY(-1px)}a:focus-visible{outline:3px solid #516ca7;outline-offset:5px}
.card-top{position:relative;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.app-icon{width:36px;height:36px;display:grid;place-items:center;background:var(--tint);color:var(--accent);border-radius:10px}.app-icon svg{width:26px;height:28px}
.app-icon.app-logo{width:110px;height:42px;background:transparent;border-radius:0}.app-logo img{display:block;width:100%;height:auto;object-fit:contain}
.open-arrow{font-size:19px;color:#6f7680;transition:transform .2s}.service-card:hover .open-arrow{transform:translate(2px,-2px)}
.pending-label{font-size:12px;color:#77648c;background:#f4f0fa;padding:5px 8px;border-radius:6px}
.category{display:none}.service-card h3{font-size:23px;letter-spacing:-.7px;font-weight:600;line-height:1.4;margin:0;text-wrap:balance;overflow-wrap:anywhere}
.card-description{font-size:14px;line-height:1.8;color:#6a707a;white-space:pre-line;margin:10px 0 24px;letter-spacing:-.3px}
.card-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:auto}.card-bottom>span:first-child{font-size:12px;color:#757984;order:2}
.card-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 16px;border:1px solid #8d929a;border-radius:30px;color:#353b45;font-size:12px;transition:background .2s,color .2s}
a.service-card:hover .card-action{background:#242b32;color:white;border-color:#242b32}.pending .card-action{border-color:#dbd9e0;color:#827c8d}
.workspace-note{display:none}footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:27px 0 25px;color:#636b77;font-size:12px}footer>span:last-child{display:flex;align-items:center;gap:12px}.footer-flower{font-size:21px;color:#69747b}
.skip-link{position:absolute;top:-100px;left:30px;z-index:10;padding:12px;background:white;border-radius:6px}.skip-link:focus{top:12px}.noscript-links{padding:24px;background:white;border-radius:16px}.noscript-links a{display:block;padding:12px}
@media(max-width:1020px){.page{padding:0 34px}.service-card{padding:21px}.card-description{white-space:normal}}
@media(max-width:820px){body{padding:20px}.page{min-height:calc(100svh - 40px);border-radius:28px;padding:0 28px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.intro{padding-top:22px}}
@media(max-width:520px){body{padding:12px}.page{min-height:calc(100svh - 24px);padding:0 18px;border-radius:24px}.header{min-height:76px}.brand{font-size:18px}.brand-sub{font-size:14px}.brand-divider{margin:0 7px}.header-note{display:none}.intro{padding:20px 0 30px}h1{font-size:32px;letter-spacing:-1.2px}.intro-description{font-size:14px}.mobile-break{display:block}.eyebrow{letter-spacing:1.1px}.service-grid{grid-template-columns:1fr;gap:14px}.service-card{padding:23px;border-radius:20px}.new-tab-hint{max-width:115px;text-align:right;line-height:1.5}.card-description{white-space:pre-line}footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Compact service launcher: keep the useful links immediately visible. */
body{display:grid;align-content:center}.page{width:100%;min-height:0}.header{min-height:104px}main{padding-top:12px}.section-heading h1{line-height:1.5;letter-spacing:0}footer{padding-top:25px}
@media(max-width:520px){body{display:block}.header{min-height:88px}main{padding-top:6px}}
