@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700&display=swap');
:root{color-scheme:light;--ink:#173a34;--muted:#75817b;--green:#174d40;--line:#dce3dc;--paper:#fbfcf9;--accent:#d5e4a2}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:'Noto Sans KR',system-ui,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #80a48b;outline-offset:4px}button:disabled{opacity:.48;cursor:not-allowed}.site-header{height:100px;margin:0 5.5%;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:20px}.brand{font-family:Georgia,serif;font-size:39px;font-weight:bold;letter-spacing:-2px}.brand-dot{color:#8d9e5e}.header-caption{font-size:10px;letter-spacing:2.1px;color:var(--muted);padding-left:20px;border-left:1px solid var(--line)}.header-link{margin-left:auto;font-size:12px;border:0;background:none;color:var(--ink)}.auth-layout{max-width:1210px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:70px 40px 55px}.intro{padding:15px 15px 0 0}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:600;color:#6c8271}h1{font-size:clamp(30px,3.2vw,43px);line-height:1.55;letter-spacing:-2px;font-weight:500;margin:23px 0 20px}.intro>p{color:var(--muted);line-height:1.9;font-size:14px}.intro-art{height:270px;position:relative;overflow:hidden;margin:30px 0 15px;background:radial-gradient(ellipse at center,#edf1df,transparent 67%)}.orbit{width:270px;height:150px;border:1px solid #b9c8a3;position:absolute;top:45px;left:calc(50% - 135px);border-radius:50%;transform:rotate(-34deg)}.orbit-two{transform:rotate(38deg);height:200px;top:23px}.art-core{position:absolute;top:73px;left:calc(50% - 45px);width:90px;height:90px;border-radius:50%;background:var(--green);color:#e0e9be;display:grid;place-items:center;font:bold 46px Georgia,serif;box-shadow:0 18px 45px #174d4020}.art-label{position:absolute;bottom:23px;left:0;width:100%;text-align:center;font-size:9px;letter-spacing:2px;color:#8c9a88}.memory-link{display:inline-block;font-size:11px;color:#7a8878;margin-top:25px}.form-panel{background:#fff;border:1px solid var(--line);border-radius:5px;padding:38px 36px;box-shadow:0 12px 45px #18372a04}h2{font-size:24px;font-weight:500;letter-spacing:-1.1px;margin:12px 0 10px}.subtitle{font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 25px}.field{display:flex;flex-direction:column;gap:9px;font-size:12px;font-weight:500;margin:20px 0}.field input,.field select{background:#fbfcfa;border:1px solid var(--line);border-radius:3px;height:48px;padding:0 13px;width:100%;min-width:0;color:#253e33;font-size:13px;outline:0}.field input:focus,.field select:focus{border-color:#5d866c;box-shadow:0 0 0 3px #5d866c16}.field input::placeholder{color:#a0aaa3;font-size:12px}.primary{width:100%;border:0;background:var(--green);color:white;border-radius:3px;display:flex;justify-content:space-between;padding:16px 18px;font-size:13px;transition:background .15s}.primary:hover:not(:disabled){background:#23614f}.form-switch{text-align:center;margin:26px 0 0;color:var(--muted);font-size:12px}.form-switch a{margin-left:9px;text-decoration:underline;color:var(--green);text-underline-offset:4px}.status-note{background:#f3f5ee;color:#68715c;padding:11px 13px;line-height:1.7;font-size:11px;border-radius:3px}.status-note[hidden]{display:none}.error{color:#ae3939;font-size:12px;line-height:1.7;white-space:pre-line}.error:empty{display:none}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:15px}.two-columns .field{margin-bottom:0}.field-hint{font-size:11px;color:var(--muted);line-height:1.8}.section-label{display:flex;gap:12px;align-items:center;margin-top:25px}.section-label>span{font-size:10px;color:#92a18c}.section-label h3{font-size:14px;font-weight:600;margin:0}.connection-heading{padding-top:24px;border-top:1px solid var(--line);margin-top:28px}.broker-card{border:1px solid var(--line);background:#fbfcf8;border-radius:4px;margin:20px 0;padding:18px}.broker-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:500}.text-button{border:0;background:none;color:#778271;padding:5px;font-size:11px}.broker-card .field{margin:15px 0}.broker-card input,.broker-card select{background:white}.broker-card .two-columns{display:block}.account-row{display:flex;gap:8px;align-items:center}.account-row input{flex:1}.remove-account{border:1px solid var(--line);background:white;flex:0 0 33px;width:33px;height:33px;border-radius:3px;color:#7b8377}.account-caption{display:block;font-size:12px;margin:19px 0 8px;font-weight:500}.add-account{font-size:11px;margin-top:5px;color:var(--green)}.add-button{border:1px dashed #9cb395;background:#f3f7ee;border-radius:3px;padding:14px;width:100%;color:var(--green);font-size:12px}.privacy-note{font-size:11px;color:#7b8674;line-height:1.9;margin:20px 0}.steps{margin:50px 0 32px;border-top:1px solid var(--line)}.steps>div{display:flex;gap:23px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line)}.steps>div>span{font-size:11px;color:#92a18c}.steps p{margin:0;font-size:13px}.steps small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.register-layout{align-items:start}.register-layout .intro{position:sticky;top:35px}footer{border-top:1px solid var(--line);margin:0 5.5%;padding:25px 0;color:#939b90;font-size:10px}.account-main{max-width:1100px;margin:0 auto;min-height:70vh;padding:65px 30px}.account-main h1{font-size:32px}.account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}.summary-card{border:1px solid var(--line);padding:25px;background:#fff;border-radius:4px}.summary-card h2{font-size:17px}.summary-card p{font-size:12px;color:var(--muted)}.summary-card ul{padding:0;list-style:none;font-variant-numeric:tabular-nums}.summary-card li{padding:10px 0;border-bottom:1px solid #eef1eb}.key-badge{font-size:10px;color:#4b7950;background:#eef5e9;padding:5px 9px;border-radius:20px;display:inline-block}
@media(max-width:900px){.auth-layout{gap:35px;padding:45px 25px;grid-template-columns:.85fr 1.15fr}.form-panel{padding:28px 24px}h1{font-size:31px}.account-grid{grid-template-columns:repeat(2,1fr)}.two-columns{grid-template-columns:1fr}.two-columns .field{margin-top:15px}}
@media(max-width:650px){.site-header{height:78px;margin:0 6%;gap:12px}.brand{font-size:32px}.header-caption{font-size:8px;letter-spacing:1px;padding-left:12px}.auth-layout{display:block;padding:28px 20px 40px}.intro{padding:0 6px 25px}.intro h1{font-size:29px;line-height:1.45;margin:13px 0 10px}.intro>p{font-size:12px}.intro-art,.steps,.intro .memory-link{display:none}.register-layout .intro{position:static}.form-panel{padding:26px 22px}h2{font-size:21px}.two-columns{display:block}.account-grid{grid-template-columns:1fr}.account-main{padding:35px 23px}.broker-card{padding:15px}footer{padding:20px 0}.header-link{font-size:11px}}

.brand{display:flex;align-items:center;gap:10px;letter-spacing:1px;font-size:20px}.brand-logo{width:56px;height:48px;object-fit:contain;border-radius:5px}.profile-main{max-width:760px;margin:auto;padding:45px 28px;min-height:75vh}.profile-main h1{font-size:30px;margin:12px 0}.profile-main>.form-panel{padding:28px}.profile-link{display:flex;align-items:center;justify-content:space-between;padding:20px;background:var(--green);color:white;border-radius:5px;margin:24px 0}.header-link,.text-button,.remove-account{min-height:44px}.remove-account{flex-basis:44px;width:44px}.broker-card{min-width:0}.broker-card legend{font-size:11px;padding:0 6px;color:var(--muted)}[hidden]{display:none!important}
@media(max-width:650px){.site-header{height:76px;margin:0 18px;padding-top:env(safe-area-inset-top)}.brand{font-size:16px;gap:8px}.brand-logo{width:56px;height:48px}.header-caption{display:none}.header-link{display:flex;align-items:center;font-size:13px}.auth-layout{padding:24px 16px 32px}.auth-layout .intro{display:none}.form-panel{padding:26px 20px;border-radius:10px}.form-panel h2{font-size:23px;line-height:1.5}.subtitle{font-size:13px}.field{font-size:13px;margin:20px 0}.field input,.field select{font-size:16px;height:52px}.field input[name=pin],.field input[name=pinConfirm]{letter-spacing:5px}.field input::placeholder{letter-spacing:normal;font-size:13px}.primary{font-size:15px;min-height:52px;align-items:center;border-radius:6px}.form-switch{font-size:13px}.two-columns{display:block}.profile-main{padding:25px 16px}.profile-main>.form-panel{padding:22px 16px}.profile-main h1{font-size:28px}.broker-card{padding:16px 12px}.text-button,.add-button{font-size:13px}.add-button{min-height:48px}.field-hint,.privacy-note{font-size:12px}.account-main{padding:28px 18px}.profile-link{font-size:14px;padding:18px}.account-grid{gap:12px;margin:20px 0}.summary-card{padding:20px}.summary-card li{font-size:15px}.journal-actions .primary{font-size:13px}.journal-main{padding-bottom:env(safe-area-inset-bottom)}}
