:root{color:#17171f;background:#f6f8f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}.app-stage{min-height:100vh;display:grid;place-items:center;padding:0;background:linear-gradient(120deg,rgba(255,111,97,.12),transparent 34%),linear-gradient(260deg,rgba(31,182,166,.16),transparent 38%),#f6f8f7}.phone-shell{position:relative;width:min(100vw,430px);height:100vh;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#fffdfb;box-shadow:0 24px 80px #17171f1f}.app-header{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:calc(16px + env(safe-area-inset-top)) 18px 12px;background:#fffdfbf0;border-bottom:1px solid rgba(23,23,31,.08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:2}.app-header h1,.app-header p,.section-title-row h2,.section-title-row p,.profile-preview h3,.profile-preview p{margin:0}.app-header h1{font-size:25px;line-height:1.05;letter-spacing:0}.eyebrow{color:#74727d;font-size:12px;font-weight:700}.header-actions{display:flex;align-items:center;gap:8px}.coin-pill,.language-select{min-height:44px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(23,23,31,.08);background:#fff;border-radius:999px;color:#17171f}.coin-pill{padding:0 12px;font-weight:800}.coin-pill svg{color:#ff6f61}.language-select{padding:0 8px 0 11px}.language-select select{max-width:84px;border:0;background:transparent;color:#17171f;font-size:13px;font-weight:700;outline:0}.screen{flex:1;overflow-y:auto;padding:16px 16px 174px;scrollbar-width:none}.screen::-webkit-scrollbar{display:none}.stack{display:flex;flex-direction:column;gap:15px}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-title-row.compact{margin-top:2px}.section-title-row h2{font-size:23px;line-height:1.16}.title-icon{color:#ff6f61}.compatibility{min-width:86px;min-height:52px;padding:8px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:0 5px;border:1px solid rgba(31,182,166,.22);border-radius:8px;background:#f2fffc;color:#11695f}.compatibility span{grid-column:1 / -1;font-size:11px;font-weight:700}.profile-card,.profile-preview,.note-composer,.editor-panel,.conversation-row,.payout-panel,.payout-history,.ledger-section{border:1px solid rgba(23,23,31,.08);border-radius:8px;background:#fff}.empty-state{min-height:360px;display:grid;align-content:center;justify-items:center;gap:16px;padding:22px;border:1px solid rgba(23,23,31,.08);border-radius:8px;background:#fff;text-align:center}.empty-state h2{margin:0;font-size:24px;line-height:1.2}.profile-card{overflow:hidden;box-shadow:0 14px 42px #17171f1a}.profile-hero{position:relative;height:min(280px,39vh);background:#f4f1ef}.profile-photo{background-image:url(/assets/profile-board.png);background-repeat:no-repeat;background-size:300% 200%;background-position:var(--photo-position)}.hero-photo{width:100%;height:100%}.hero-overlay{position:absolute;left:12px;right:12px;bottom:12px;display:flex;justify-content:space-between;gap:8px}.hero-overlay span{min-height:32px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;color:#fff;background:#17171fa8;font-size:12px;font-weight:800;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profile-body{display:flex;flex-direction:column;gap:12px;padding:14px}.profile-body p{margin:0;color:#5d5a66;font-size:14px}.profile-body .tagline{color:#17171f;font-size:17px;font-weight:850;line-height:1.35}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:32px;display:inline-flex;align-items:center;padding:0 11px;border-radius:999px;background:#f6f8f7;color:#3f3c47;font-size:12px;font-weight:800}.highlight-rail{display:flex;gap:11px;overflow-x:auto;padding-bottom:2px}.highlight{min-width:58px;display:grid;justify-items:center;gap:5px}.highlight span{width:48px;height:48px;display:grid;place-items:center;border:2px solid var(--highlight-color);border-radius:999px;color:var(--highlight-color);background:#fff}.highlight small{color:#5d5a66;font-size:11px;font-weight:800}.mini-gallery,.gallery-grid{display:grid;gap:6px}.mini-gallery{grid-template-columns:repeat(4,1fr)}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item{position:relative;overflow:hidden;aspect-ratio:1;border-radius:8px;background:#f4f1ef}.gallery-photo{width:100%;height:100%}.gallery-item svg{position:absolute;right:8px;bottom:8px;color:#fff;filter:drop-shadow(0 3px 8px rgba(0,0,0,.28))}.note-composer{display:grid;gap:11px;padding:13px;background:#fff7f3}.note-composer>div{display:flex;justify-content:space-between;gap:12px;color:#17171f}.note-composer span{color:#8a4d45;font-size:12px;font-weight:800}textarea,input,select{width:100%;border:1px solid rgba(23,23,31,.11);border-radius:8px;background:#fff;color:#17171f;outline:0}textarea,input{padding:12px}textarea:focus,input:focus,select:focus{border-color:#ff6f61;box-shadow:0 0 0 3px #ff6f6124}.primary-button{min-height:48px;display:inline-flex;justify-content:center;align-items:center;gap:8px;border-radius:999px;background:#17171f;color:#fff;font-size:14px;font-weight:900}.action-dock{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:8px}.dock-button{min-height:58px;display:grid;place-items:center;gap:3px;padding:7px;border-radius:8px;font-size:12px;font-weight:900}.dock-button.primary{background:#ff6f61;color:#fff}.dock-button.primary.selected{background:#e84e72}.dock-button.secondary{background:#fff;color:#17171f;border:1px solid rgba(23,23,31,.1)}.conversation-list,.ledger-list{display:grid;gap:10px}.conversation-row{position:relative;min-height:106px;display:grid;grid-template-columns:58px 1fr;gap:12px;padding:12px}.conversation-button{width:100%;color:inherit;text-align:left}.avatar,.profile-avatar{border-radius:999px;border:3px solid #ffffff;box-shadow:0 6px 22px #17171f24}.avatar{width:58px;height:58px}.conversation-copy{display:grid;gap:7px}.row-between{display:flex;justify-content:space-between;gap:8px}.row-between span{color:#ff6f61;font-size:11px;font-weight:900}.conversation-copy p{margin:0;color:#5d5a66;font-size:13px}.inline-note{display:grid;grid-template-columns:1fr 44px;gap:6px}.chat-screen{min-height:100%;display:grid;grid-template-rows:auto 1fr auto;gap:13px}.chat-header,.chat-composer{border:1px solid rgba(23,23,31,.08);border-radius:8px;background:#fff}.chat-header{display:grid;gap:12px;padding:12px}.icon-text-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;background:#f6f8f7;color:#17171f;font-size:13px;font-weight:900}.chat-person{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center}.chat-person h2,.chat-person span,.message-bubble p,.message-bubble small{margin:0}.chat-person h2{font-size:22px;line-height:1.15}.chat-person span{color:#ff6f61;font-size:12px;font-weight:900}.message-thread{display:grid;align-content:start;gap:10px}.message-bubble{max-width:82%;display:grid;gap:4px;padding:10px 12px;border-radius:8px;background:#fff;color:#17171f;box-shadow:0 8px 26px #17171f14}.message-bubble.mine{justify-self:end;background:#17171f;color:#fff}.message-bubble.theirs{justify-self:start}.message-bubble small{color:#8e8a96;font-size:11px;font-weight:800}.message-bubble.mine small{color:#ffffffb8}.message-kind{width:max-content;min-height:22px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:#fff0ec;color:#b84a40;font-size:11px;font-weight:900}.chat-composer{display:grid;gap:10px;padding:12px}.chat-composer>div{display:flex;justify-content:space-between;gap:10px;color:#17171f;font-size:13px}.chat-composer span{color:#8a4d45;font-size:12px;font-weight:900}.inline-note input{min-height:44px;padding:0 11px}.inline-note button{min-height:44px;border-radius:8px;background:#1fb6a6;color:#fff}.unread{position:absolute;top:10px;right:10px;width:22px;height:22px;display:grid;place-items:center;border-radius:999px;background:#ff6f61;color:#fff;font-size:11px;font-weight:900}.profile-preview{padding:14px}.profile-topline{display:grid;grid-template-columns:76px 1fr;align-items:center;gap:13px;margin-bottom:12px}.profile-avatar{width:76px;height:76px}.profile-preview h3{font-size:24px}.profile-preview p{color:#5d5a66;font-size:14px}.profile-meta-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.profile-meta-row span{min-height:28px;display:inline-flex;align-items:center;padding:0 9px;border-radius:999px;background:#f6f8f7;color:#3f3c47;font-size:12px;font-weight:850}.profile-bio{margin-bottom:12px!important}.editor-panel{display:grid;gap:12px;padding:13px}.editor-panel label{display:grid;gap:7px;color:#5d5a66;font-size:12px;font-weight:900}.editor-panel select{min-height:44px;padding:0 12px}.editor-subsection{display:grid;gap:10px;padding:12px;border-radius:8px;background:#f6f8f7}.subsection-header{display:flex;justify-content:space-between;gap:12px;color:#17171f}.subsection-header small{color:#74727d;font-weight:900}.editable-chip-row{display:flex;flex-wrap:wrap;gap:8px}.editable-chip{min-height:34px;display:inline-flex;align-items:center;gap:6px;padding:0 8px 0 11px;border-radius:999px;background:#fff;color:#3f3c47;font-size:12px;font-weight:900}.editable-chip button,.highlight-editor-row button{min-width:34px;min-height:34px;display:grid;place-items:center;border-radius:8px;background:#fff0ec;color:#b84a40}.inline-editor{display:grid;grid-template-columns:1fr minmax(82px,auto);gap:8px}.inline-editor input,.inline-editor button{min-height:44px}.inline-editor button,.secondary-button{border-radius:8px;background:#fff;color:#17171f;border:1px solid rgba(23,23,31,.1);font-size:12px;font-weight:900}.highlight-editor-list{display:grid;gap:8px}.highlight-editor-row{display:grid;grid-template-columns:1fr 48px 38px;gap:7px;align-items:center}.highlight-editor-row input{min-height:44px}.color-input{min-height:44px;padding:4px}.secondary-button{min-height:44px}.gallery-editor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.gallery-editor-grid button{overflow:hidden;aspect-ratio:1;min-height:72px;border-radius:8px;background:#f4f1ef}.theme-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.theme-swatch{min-height:46px;border-radius:8px;border:2px solid transparent}.theme-swatch.coral{background:linear-gradient(135deg,#ff6f61,#ffd166)}.theme-swatch.mint{background:linear-gradient(135deg,#1fb6a6,#b9fbc0)}.theme-swatch.ink{background:linear-gradient(135deg,#17171f,#5661f5)}.theme-swatch.active{border-color:#17171f}.wallet-hero{min-height:138px;display:flex;align-items:center;justify-content:space-between;padding:18px;border-radius:8px;color:#fff;background:linear-gradient(135deg,rgba(255,255,255,.14),transparent),#17171f}.wallet-hero p,.wallet-hero strong{margin:0}.wallet-hero p{color:#ffffffb8;font-size:13px;font-weight:800}.wallet-hero strong{display:block;font-size:52px;line-height:1}.server-rule{min-height:58px;display:flex;align-items:center;gap:9px;padding:12px;border-radius:8px;background:#f2fffc;color:#11695f;font-size:13px;font-weight:800}.payout-panel{display:grid;gap:12px;padding:14px;background:#fff}.coin-split-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.coin-split-grid div{display:grid;gap:4px;padding:10px;border-radius:8px;background:#f6f8f7}.coin-split-grid span{color:#74727d;font-size:12px;font-weight:900}.coin-split-grid strong{color:#17171f;font-size:24px}.payout-panel .section-title-row strong{min-width:66px;min-height:50px;display:grid;place-items:center;border-radius:8px;background:#fff7f3;color:#ff6f61;font-size:28px}.payout-breakdown{display:grid;gap:8px;padding:12px;border-radius:8px;background:#f6f8f7}.payout-breakdown div{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#5d5a66;font-size:13px;font-weight:800}.payout-breakdown em{color:#17171f;font-style:normal}.payout-breakdown .net{min-height:38px;padding-top:8px;border-top:1px solid rgba(23,23,31,.08);color:#17171f}.payout-breakdown .net strong{color:#1f8f78;font-size:17px}.payout-panel p{margin:0;color:#74727d;font-size:12px;font-weight:750}.payout-history{display:grid;gap:12px;padding:14px}.payout-history p{margin:0;color:#74727d;font-size:12px;font-weight:800}.payout-request-list{display:grid;gap:9px}.payout-request-row{min-height:68px;display:grid;grid-template-columns:1fr minmax(92px,auto);gap:10px;align-items:center;padding:10px;border-radius:8px;background:#f6f8f7}.payout-request-row>div{display:grid;gap:3px}.payout-request-row button{min-height:44px;border-radius:8px;background:#17171f;color:#fff;font-size:12px;font-weight:900}.payout-request-row strong{font-size:15px}.payout-request-row small{color:#74727d;font-size:11px;font-weight:850}.payout-status{width:max-content;min-height:22px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:#fff7f3;color:#b84a40;font-size:11px;font-weight:900}.payout-status.paid{background:#f2fffc;color:#11695f}.reset-button{width:100%}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.package-button{min-height:112px;display:grid;align-content:center;gap:4px;padding:10px 6px;border:1px solid rgba(23,23,31,.09);border-radius:8px;background:#fff;color:#17171f}.package-button.selected{border-color:#ff6f61;background:#fff7f3}.package-button span,.package-button small{color:#74727d;font-size:12px;font-weight:800}.package-button strong{font-size:27px}.ledger-section{padding:13px}.ledger-row{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(23,23,31,.07)}.ledger-row:last-child{border-bottom:0}.ledger-row div{display:grid;justify-items:start;gap:3px}.ledger-row strong{font-size:13px}.ledger-row span{color:#74727d;font-size:12px}.ledger-badge{min-height:22px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:#f6f8f7;color:#5d5a66!important;font-size:11px!important;font-weight:900}.ledger-badge.charge,.ledger-badge.earning{background:#f2fffc;color:#11695f!important}.ledger-badge.spend,.ledger-badge.payout{background:#fff0ec;color:#b84a40!important}.ledger-row em{font-style:normal;font-weight:900}.ledger-row .positive{color:#1f8f78}.ledger-row .negative{color:#e84e72}.toast{position:absolute;left:16px;right:16px;bottom:calc(78px + env(safe-area-inset-bottom));min-height:44px;display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid rgba(23,23,31,.08);border-radius:8px;background:#fffffff0;color:#5d5a66;box-shadow:0 16px 40px #17171f29;font-size:12px;font-weight:800;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:3}.toast svg{flex:0 0 auto;color:#1fb6a6}.bottom-nav{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);padding:7px 10px calc(8px + env(safe-area-inset-bottom));border-top:1px solid rgba(23,23,31,.08);background:#fffdfbf5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:4}.bottom-nav button{min-height:58px;display:grid;place-items:center;align-content:center;gap:4px;border-radius:8px;background:transparent;color:#74727d;font-size:11px;font-weight:900}.bottom-nav button.active{background:#fff0ec;color:#ff6f61}.theme-coral{--theme-accent: #ff6f61}.theme-mint{--theme-accent: #1fb6a6}.theme-ink{--theme-accent: #17171f}.theme-coral,.theme-mint,.theme-ink{outline:3px solid color-mix(in srgb,var(--theme-accent) 18%,transparent)}@media(min-width:520px){.app-stage{padding:20px}.phone-shell{height:min(920px,calc(100vh - 40px));min-height:min(920px,calc(100vh - 40px));max-height:920px;border-radius:28px}}@media(max-width:350px){.app-header,.screen{padding-left:12px;padding-right:12px}.header-actions{gap:5px}.language-select select{max-width:60px}.profile-hero{height:286px}.package-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:no-preference){.dock-button,.bottom-nav button,.package-button,.primary-button{transition:transform .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease}.dock-button:active,.bottom-nav button:active,.package-button:active,.primary-button:active{transform:scale(.98)}}
