:root{--accent: #0d9488;--accent-deep: #0f766e;--mint: #f0fdf9;--mint-deep: #d1fae5;--warm-accent: #f97316;--warm-soft: #ffedd5;--warm-text: #c2410c;--warm: #f7f6f3;--line: #e5e3df;--black: #111;--dark: #333;--mid: #666;--light: #999;--pale: #ccc;--danger: #ef4444;--danger-bg: #fef2f2;--danger-text: #991b1b;--info: #2563eb;--info-bg: #eef6ff;--info-text: #1d4ed8;--success: #10b981;--success-bg: #ecfdf5;--success-text: #065f46;--warn-bg: #fffbeb;--warn-text: #92400e;--tertiary-bg: #f3e8ff;--tertiary-text: #7e22ce;--rail-w: 208px;--bar-h: 56px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--warm);color:var(--black);font-family:Montserrat,Noto Sans KR,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--accent-deep);text-decoration:none}a:hover{color:var(--accent)}button{font:inherit;cursor:pointer;border:0;background:none;padding:0;color:inherit}.lbl{font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--light)}.card{background:#fff;border:1px solid var(--line);border-radius:4px}.btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:4px;font-size:12px;font-weight:700;border:1px solid var(--line);background:#fff;color:var(--dark);white-space:nowrap}.btn:hover{border-color:var(--pale)}.btn-p{background:var(--accent);border-color:var(--accent);color:#fff}.btn-p:hover{background:var(--accent-deep);border-color:var(--accent-deep)}.chip{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 7px;border-radius:3px;font-size:10px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.app{display:flex;height:100%;overflow:hidden}.pane{flex-grow:1;min-width:0;display:flex;flex-direction:column}.scroll{overflow-y:auto;overscroll-behavior:contain}.scroll::-webkit-scrollbar{width:10px}.scroll::-webkit-scrollbar-thumb{background:var(--line);border:3px solid var(--warm);border-radius:6px}.scroll::-webkit-scrollbar-track{background:transparent}.side{flex-shrink:0;background:#fff}@media(max-width:1240px){.side-opt{display:none}}@media(max-width:980px){.rail{display:none}}@keyframes gl-pulse{0%,to{opacity:1}50%{opacity:.32}}.pulse{animation:gl-pulse 1.4s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.pulse{animation:none}}.board{display:flex;gap:12px;align-items:flex-start;overflow-x:auto;overflow-y:hidden;padding:18px 20px;height:100%}.board::-webkit-scrollbar{height:10px}.board::-webkit-scrollbar-thumb{background:var(--line);border:3px solid var(--warm);border-radius:6px}@keyframes gl-fade{0%{opacity:0}to{opacity:1}}@keyframes gl-up{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes gl-in{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}@keyframes gl-drop{0%{opacity:0;transform:translateY(-7px) scale(.985)}to{opacity:1;transform:none}}@keyframes gl-modal{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@keyframes gl-pop{0%{transform:scale(.4);opacity:0}65%{transform:scale(1.18)}to{transform:scale(1);opacity:1}}@keyframes gl-ring{0%{box-shadow:0 0 0 0 var(--ring, rgba(249,115,22,.55))}70%{box-shadow:0 0 0 8px #f9731600}to{box-shadow:0 0 #f9731600}}@keyframes gl-shimmer{0%{background-position:220% 0}to{background-position:-220% 0}}@keyframes gl-sweep{0%{transform:translate(-100%)}to{transform:translate(320%)}}@keyframes gl-spin{to{transform:rotate(360deg)}}.anim-fade{animation:gl-fade .28s ease both}.anim-up{animation:gl-up .34s cubic-bezier(.22,.68,.36,1) both}.anim-in{animation:gl-in .3s cubic-bezier(.22,.68,.36,1) both}.anim-drop{animation:gl-drop .18s cubic-bezier(.22,.68,.36,1) both;transform-origin:top right}.anim-pop{animation:gl-pop .32s cubic-bezier(.3,1.5,.5,1) both}.stagger>*:nth-child(1){animation-delay:0ms}.stagger>*:nth-child(2){animation-delay:35ms}.stagger>*:nth-child(3){animation-delay:70ms}.stagger>*:nth-child(4){animation-delay:105ms}.stagger>*:nth-child(5){animation-delay:.14s}.stagger>*:nth-child(6){animation-delay:175ms}.stagger>*:nth-child(7){animation-delay:.21s}.stagger>*:nth-child(8){animation-delay:245ms}.pane{animation:gl-fade .22s ease both}.btn{transition:background .16s ease,border-color .16s ease,color .16s ease,transform .1s ease,box-shadow .16s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 1px 0 var(--line)}.btn:active{transform:translateY(0);box-shadow:none}.btn:disabled{opacity:.5;transform:none;box-shadow:none;cursor:not-allowed}.btn-p:hover{box-shadow:0 2px 8px #0d948847}.card{transition:border-color .18s ease,box-shadow .18s ease}.kcard{transition:transform .16s cubic-bezier(.22,.68,.36,1),border-color .16s ease,box-shadow .16s ease}.kcard:hover{transform:translateY(-2px);border-color:var(--pale);box-shadow:0 4px 14px #11111112}.kcard:active{transform:translateY(0)}.kcol{transition:box-shadow .2s ease}.bar-fill{transition:width .55s cubic-bezier(.25,.8,.35,1);position:relative;overflow:hidden}.bar-fill.live:after{content:"";position:absolute;inset:0;width:32%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);animation:gl-sweep 1.5s ease-in-out infinite}.dot-live{position:relative;animation:gl-ring 1.8s ease-out infinite}.skel{background:linear-gradient(90deg,var(--line) 25%,#f3f2ef 50%,var(--line) 75%);background-size:220% 100%;animation:gl-shimmer 1.3s linear infinite;border-radius:3px}.spin{animation:gl-spin .8s linear infinite}.gl-overlay{animation:gl-fade .18s ease both}.gl-modal{animation:gl-modal .24s cubic-bezier(.22,.68,.36,1) both}.badge-pop{animation:gl-pop .34s cubic-bezier(.3,1.5,.5,1) both}.row-hover{transition:background .14s ease}.row-hover:hover{background:var(--warm)}@media(prefers-reduced-motion:reduce){.anim-fade,.anim-up,.anim-in,.anim-drop,.anim-pop,.gl-overlay,.gl-modal,.badge-pop,.pane,.skel,.spin,.dot-live,.bar-fill.live:after{animation:none!important}.btn,.card,.kcard,.bar-fill,.row-hover{transition:none!important}.btn:hover,.kcard:hover{transform:none}}.newsrow{transition:border-color .16s ease,transform .14s ease,box-shadow .16s ease}.newsrow:hover{border-color:var(--pale);transform:translateY(-1px);box-shadow:0 3px 10px #1111110d}.newsrow:active{transform:translateY(0)}.newsrow-in{transition:background .18s ease,border-left-color .18s ease}@keyframes gl-glow{0%,to{box-shadow:0 0 #f9731600}50%{box-shadow:0 0 0 4px #f9731624}}.decision-live{animation:gl-up .34s cubic-bezier(.22,.68,.36,1) both,gl-glow 2.8s ease-in-out .45s infinite}@media(prefers-reduced-motion:reduce){.newsrow{transition:none!important}.newsrow:hover{transform:none}.decision-live{animation:none!important}}.railnav{transition:background .15s ease,color .15s ease,padding-left .15s ease}.railnav:hover{background:var(--warm);color:var(--dark);padding-left:12px}.skel-row{position:relative;overflow:hidden}.skel-row:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(13,148,136,.09),transparent);animation:gl-sweep 1.4s ease-in-out infinite;width:45%}@media(prefers-reduced-motion:reduce){.railnav{transition:none!important}.railnav:hover{padding-left:9px}.skel-row:after{animation:none}}.skel-row:nth-child(2):after{animation-delay:.12s}.skel-row:nth-child(3):after{animation-delay:.24s}.skel-row:nth-child(4):after{animation-delay:.36s}@keyframes gl-track{0%{left:-38%}to{left:100%}}.live-card{position:relative}.live-card:before{content:"";position:absolute;top:-1px;left:-38%;width:38%;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--warm-accent),transparent);animation:gl-track 1.9s cubic-bezier(.5,0,.5,1) infinite;pointer-events:none}@keyframes gl-indet{0%{left:-35%;width:35%}50%{left:30%;width:45%}to{left:100%;width:35%}}.bar-indet{position:absolute;top:0;bottom:0;border-radius:inherit;background:var(--warm-accent);animation:gl-indet 1.7s cubic-bezier(.5,0,.5,1) infinite}@keyframes gl-bounce{0%,70%,to{transform:translateY(0);opacity:.35}35%{transform:translateY(-3px);opacity:1}}.dots{display:inline-flex;align-items:center;gap:3px}.dots i{width:3.5px;height:3.5px;border-radius:50%;background:currentColor;animation:gl-bounce 1.25s ease-in-out infinite}.dots i:nth-child(2){animation-delay:.16s}.dots i:nth-child(3){animation-delay:.32s}@keyframes gl-breathe{0%,to{border-color:var(--line)}50%{border-color:#fdba74}}.card-running{animation:gl-breathe 2.4s ease-in-out infinite}.img-pending{position:relative;overflow:hidden}.img-pending:after{content:"";position:absolute;inset:0;width:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);animation:gl-sweep 1.6s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.live-card:before,.bar-indet,.dots i,.card-running,.img-pending:after{animation:none!important}.bar-indet{left:0;width:30%}}
