@import url('https://fonts.googleapis.com/css2?family=Gowun+Dodum&family=IBM+Plex+Mono:wght@400;500;600&display=swap');
:root{color-scheme:light;--bg:#fff;--ink:#27272d;--muted:#646570;--green:#6150a4;--line:#e4e4ec;--mono:'IBM Plex Mono',monospace;--accent:#e2d9ff;--lime:#e7f4b2;--soft:#f8f8fb;--shadow:#27272d}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Gowun Dodum','Malgun Gothic',sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7b61be;outline-offset:5px}[hidden]{display:none!important}.header,main,footer{max-width:1200px;margin:auto}.header{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;font-size:24px;font-weight:bold;white-space:nowrap}.brand img{image-rendering:pixelated}.brand span{font:9px var(--mono);letter-spacing:1.5px;margin-left:5px}.header nav{display:flex;gap:25px;align-items:center;font-size:13px}.header nav>a:not(.admin-login):hover{text-decoration:underline;text-underline-offset:6px}.admin-login{border:1px solid var(--ink);padding:10px 13px;font-size:12px;box-shadow:2px 2px var(--ink)}.mode-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);padding:9px 12px;background:#fff;color:var(--ink);font-size:11px;white-space:nowrap;border-radius:24px}.mode-toggle:hover{border-color:var(--ink)}.mode-toggle[aria-pressed=true]{background:#27272d;color:white}.mode-icon{font-size:17px;line-height:1}.hero{display:grid;grid-template-columns:1fr 1.04fr;gap:55px;align-items:center;padding:72px 0 58px}.eyebrow{font:10px var(--mono);letter-spacing:1.5px;color:var(--green);font-weight:600}.spark{font-size:18px;color:#a58bdb;vertical-align:middle;margin-right:5px}h1{font-size:54px;font-weight:bold;line-height:1.35;letter-spacing:-2.8px;margin:22px 0}h1 span{color:var(--ink);background:linear-gradient(transparent 69%,var(--accent) 69%,var(--accent) 94%,transparent 94%)}.hero-copy>p{font-size:15px;color:var(--muted);line-height:1.9}.hero-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-top:28px}.primary{display:inline-flex;align-items:center;gap:25px;border:2px solid var(--ink);background:var(--lime);color:var(--ink);padding:15px 19px;box-shadow:4px 4px var(--ink);font-size:13px;transition:transform .16s,box-shadow .16s}.primary span{font-size:20px;line-height:1}.primary:hover{transform:translate(2px,2px);box-shadow:2px 2px var(--ink)}.random-quest{display:inline-flex;align-items:center;gap:8px;padding:12px 3px;border:0;border-bottom:1px dashed #a8a4b4;background:white;font-size:12px;color:var(--muted)}.random-quest>span{font-size:25px;color:#7966ad;transition:transform .2s}.random-quest:hover>span{transform:rotate(30deg)}.hero-copy .adventure-message{font-size:12px;line-height:1.6;min-height:0;margin:16px 0 0;color:#6150a4}.adventure-message:empty{display:none}.hero-note{font-size:11px;color:#757480;margin-top:24px}.green-dot{display:inline-block;width:6px;height:6px;background:#9a88bf;margin-right:7px}.scene{position:relative;height:410px;border:2px solid var(--ink);background:#faf9fe;box-shadow:7px 7px 0 #e7e3f0;isolation:isolate;overflow:hidden}.scene-label{position:absolute;inset:0 0 auto;height:43px;background:white;border-bottom:2px solid var(--ink);display:flex;align-items:center;gap:15px;padding:0 16px;font:10px var(--mono);letter-spacing:1px;z-index:2}.window-dots{display:flex;gap:5px}.window-dots i{display:block;width:9px;height:9px;border:1px solid var(--ink);background:#e3d7ff}.window-dots i:nth-child(2){background:#e9f5bd}.window-dots i:nth-child(3){background:#ffd9c5}.scene-label .scene-region{font:10px 'Gowun Dodum',sans-serif;margin-left:auto;color:var(--muted);letter-spacing:0}.scene>.village-backdrop{position:absolute;left:0;top:43px;width:100%;height:calc(100% - 85px);object-fit:cover;opacity:.22;image-rendering:pixelated;z-index:-1;filter:saturate(.7)}.scene:after{content:'';position:absolute;inset:43px 0 43px;background-image:radial-gradient(#aaa0b340 .7px,transparent .7px);background-size:12px 12px;pointer-events:none;z-index:-1}.scene-star{position:absolute;left:28px;top:118px;font-size:55px;color:#bba6e1;transform:rotate(-12deg)}.scene-sticker{position:absolute;right:25px;bottom:80px;padding:13px 15px;border:1px solid var(--ink);background:var(--lime);color:#35372a;font:11px var(--mono);text-align:center;transform:rotate(10deg);box-shadow:3px 3px #27272d;pointer-events:none}.mascot-stage{position:absolute;left:50%;top:121px;transform:translateX(-50%);width:230px;height:235px}.mascot-shadow{position:absolute;background:#4e3a6230;width:134px;height:15px;bottom:7px;left:48px;border-radius:50%}.mascot{display:block;position:relative;margin:auto;width:192px;height:208px;border:0;padding:0;background:transparent;animation:mascot-idle 2.8s steps(2,end) infinite;transform-origin:50% 95%;-webkit-tap-highlight-color:transparent}.mascot img{width:100%;height:100%;image-rendering:pixelated;filter:drop-shadow(4px 5px #5c457524)}.mascot:hover img{filter:drop-shadow(0 0 6px #c4b4e6)}.mascot.is-greeting{animation:mascot-hop .6s steps(5,end)}.mascot-spark{position:absolute;top:65px;right:0;font-size:30px;color:#a18abf;opacity:0;pointer-events:none}.mascot-stage:has(.is-greeting) .mascot-spark{animation:spark-pop .65s steps(4,end)}.speech{position:absolute;top:79px;left:50%;transform:translateX(-50%);max-width:90%;width:max-content;text-align:center;background:white;padding:10px 15px;border:1px solid var(--ink);box-shadow:3px 3px #e3d9f2;font-size:12px;line-height:1.6;pointer-events:none;z-index:1}.speech:after{content:'';position:absolute;bottom:-6px;left:50%;width:10px;height:10px;background:white;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);transform:rotate(45deg)}.scene-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;background:white;border-top:1px solid var(--ink);padding:14px 16px;font-size:10px;color:#63616c}.scene-caption span:first-child:before{content:'●';color:#9280b5;font-size:7px;margin-right:7px}.scene-caption span:last-child{font-size:10px;color:#82748f}.world-bar{display:flex;justify-content:space-between;gap:15px;border-block:1px solid var(--line);padding:17px 0;font-size:12px;color:var(--muted)}.world-bar span:last-child{font:10px var(--mono);letter-spacing:2px}.projects{padding:45px 30px 30px;margin-top:45px;background:white;border:1px solid #d7d5df;box-shadow:5px 5px #f1eff6;position:relative}.projects:before{content:'✦';position:absolute;top:-17px;left:27px;font-size:26px;background:white;padding:0 9px;color:#9d87c3}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;border-bottom:1px dashed #d9d7e1;padding-bottom:25px}.section-heading h2{font-size:29px;margin:12px 0 0;letter-spacing:-1px}.section-heading h2 span{display:inline-block;margin-left:7px;padding:4px 8px;vertical-align:middle;font:12px var(--mono);color:#6f608f;border:1px solid #d3c7e6;background:#f4efff;transform:rotate(-5deg)}.section-heading p{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 3px;max-width:280px}.toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:23px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid #e3dfeb;background:#fff;color:#76717e;padding:10px 17px;border-radius:5px;font-size:12px;transition:background .15s,transform .15s}.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white;box-shadow:2px 2px #d4c8e7}.filters button:hover{transform:translateY(-2px);border-color:#a99bbd}.search{display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid #ddd8e8;background:#faf9fc;border-radius:5px;min-width:0}.search>span{font-size:25px;color:#8a8098}.search input{width:218px;border:0;background:none;padding:12px 0;font-size:12px;color:var(--ink);min-width:0}.search input::placeholder{color:#86808d}kbd{font:10px var(--mono);border:1px solid #d7d0e3;padding:2px 5px;color:#82748e;border-radius:3px}.sample-note{font-size:11px;color:#87808e;margin:20px 0 0;line-height:1.7}.results-line{display:flex;justify-content:space-between;align-items:center;min-height:44px;color:#79717f;font-size:11px}.results-line button{background:none;border:0;color:#786199;font-size:11px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{background:white;border:1px solid #dbd7e3;position:relative;overflow:hidden;border-radius:8px;transition:transform .2s,box-shadow .2s;min-width:0}.card:hover{transform:translateY(-5px) rotate(-.4deg);box-shadow:4px 6px #ede8f5;border-color:#a991c5}.card:focus{outline:2px solid #ad92d5;outline-offset:4px}.card.is-picked{outline:3px dashed #967bbf;outline-offset:5px;background:#fbf8ff}.card.is-picked:before{content:'✦ 오늘의 퀘스트';position:absolute;right:10px;top:12px;background:#fff;color:#66517f;padding:6px 8px;font-size:10px;z-index:3;box-shadow:2px 2px #d8cbe8}.card-art{height:145px;margin:10px 10px 0;border-radius:4px;position:relative;display:grid;place-items:center;background-image:radial-gradient(#ffffffb0 1px,transparent 1px);background-size:12px 12px}.card-art:after{content:'';position:absolute;width:74px;height:77px;background:#ffffff50;border:1px solid #ffffffd0;box-shadow:3px 3px #49324f15;transform:rotate(-5deg)}.card-art svg{width:48px;height:54px;fill:currentColor;shape-rendering:crispEdges;filter:drop-shadow(4px 5px #ffffff80);z-index:1;transition:transform .2s}.card:hover .card-art svg{transform:translateY(-5px) rotate(7deg)}.peach{background-color:#fff0e6;color:#a77751}.green{background-color:#ebf4df;color:#73925b}.purple{background-color:#eee8fb;color:#9075b1}.yellow{background-color:#fcf5d6;color:#a88e40}.blue{background-color:#e7f1fa;color:#6d94b0}.pink{background-color:#fbe9ee;color:#b77c92}.badge{position:absolute;top:9px;left:9px;background:#ffffffd9;border:1px solid #ffffff;padding:4px 7px;border-radius:3px;font-size:9px;color:#756c7c}.art-number{position:absolute;bottom:9px;right:9px;font:8px var(--mono);letter-spacing:1px;opacity:.8}.card-body{padding:21px 19px 0}.category{font-size:10px;color:#8c739f}.card h3{font-size:21px;letter-spacing:-.6px;margin:8px 0 10px;overflow-wrap:anywhere}.description{font-size:12px;line-height:1.9;color:var(--muted);min-height:46px;margin:0;overflow-wrap:anywhere}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0}.tags span{font:9px var(--mono);padding:5px 7px;background:#f6f3fa;border:1px solid #ece6f3;border-radius:3px;color:#7b6a8c}.card-links{display:flex;justify-content:space-between;gap:9px;border-top:1px dashed #e1dbe9;padding:15px 0;font-size:11px;align-items:center}.card-links a{color:#645176;font-weight:bold;padding:5px 0}.card-links a:hover{text-decoration:underline;text-underline-offset:4px}.disabled{color:#94909b;font-size:10px}.empty{margin-top:10px;text-align:center;background:#faf9fd;border:1px dashed #d5c9e3;border-radius:6px;padding:45px 20px;color:#645773}.empty>span{display:inline-grid;place-items:center;width:51px;height:51px;font:28px var(--mono);background:#eee6f8;border:1px solid #d0bedf;box-shadow:4px 4px #ded2ec;transform:rotate(-7deg)}.empty h3{margin-top:25px;font-size:19px}.empty p{font-size:13px;color:var(--muted);line-height:1.8}.empty button{padding:11px 16px;border:1px solid #a591bf;background:white;color:#66517f;border-radius:4px}.about{display:flex;align-items:center;gap:28px;padding:34px;margin:45px 0;background:#faf9fd;border:1px solid #e7e1ef;border-radius:8px}.about-icon{font-size:48px;color:#b6a0ce}.about h2{font-size:23px;margin:12px 0;letter-spacing:-.5px}.about p{font-size:13px;line-height:1.9;color:var(--muted);margin:0}.about-stamp{margin-left:auto;flex-shrink:0;text-align:center;border:1px solid #b7a1cd;background:#eee6fa;color:#7a6395;padding:13px 18px;transform:rotate(7deg);font-size:11px;line-height:1.6;box-shadow:3px 3px #dfd2ed}.about-stamp b{display:block;font-size:28px;line-height:1.3}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px 0 35px}footer .brand{font-size:17px}footer .brand span{font:10px 'Gowun Dodum',sans-serif;letter-spacing:0;color:var(--muted)}footer p,footer>a{font-size:10px;color:#827b89}.skip{position:absolute;top:0;left:8px;transform:translateY(-160%);z-index:20;background:white;border:1px solid #333;padding:14px;font-size:13px}.skip:focus{transform:translateY(0)}.mobile-break{display:none}
@keyframes mascot-idle{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes mascot-hop{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-24px) rotate(-8deg)}65%{transform:translateY(-12px) rotate(7deg)}}@keyframes spark-pop{0%{opacity:0;transform:translateY(5px) scale(.5)}40%{opacity:1;transform:translateY(-15px) scale(1)}100%{opacity:0;transform:translateY(-30px) scale(.7)}}
@media(max-width:1260px){.header,main,footer{margin-inline:32px}h1{font-size:47px}.header nav{gap:20px}.hero{gap:40px}}
@media(max-width:950px){.brand span{display:none}.header nav{gap:15px}.hero{gap:27px}h1{font-size:39px;letter-spacing:-2px}.hero-copy>p{font-size:13px}.scene{height:390px}.scene-sticker{right:15px;font-size:10px;padding:10px}.scene-star{left:15px;font-size:38px}.hero-actions{gap:18px}.primary{padding:12px 15px;font-size:12px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar{gap:15px}.filters button{padding:10px 13px}.search input{width:180px}.about-stamp{display:none}.section-heading p{max-width:210px}footer p{max-width:200px}.projects{padding:35px 23px 23px}}
@media(max-width:600px){.header,main,footer{margin-inline:20px}.header{padding-block:17px;min-height:100px;display:grid;grid-template-columns:1fr auto;gap:15px}.brand{font-size:22px}.header nav{display:contents}.header nav>a[href='#projects'],.header nav>a[href='#about']{grid-row:2;font-size:11px;justify-self:start}.header nav>a[href='#about']{grid-column:2;justify-self:start}.header nav .admin-login{grid-row:2;grid-column:2;justify-self:end;font-size:10px;padding:6px 9px;box-shadow:2px 2px var(--ink)}.mode-toggle{grid-column:2;grid-row:1;font-size:10px;padding:7px 11px;min-height:34px;justify-self:end}.hero{grid-template-columns:1fr;padding:36px 0 38px;gap:32px}h1{font-size:42px;letter-spacing:-2px;margin-block:18px}.eyebrow{font-size:9px;letter-spacing:1.2px}.hero-copy>p{font-size:14px}.hero-actions{margin-top:23px;gap:20px}.primary{padding:14px 16px;font-size:12px;gap:20px}.random-quest{font-size:11px}.hero-note{font-size:10px;margin-top:20px}.scene{height:380px;margin-right:7px}.scene-label{font-size:9px;padding-inline:12px;gap:10px}.scene-label .scene-region{font-size:9px}.mascot-stage{top:116px}.speech{top:78px;font-size:11px;padding:9px 12px;max-width:94%}.scene-star{top:137px;left:13px;font-size:38px}.scene-sticker{right:18px;bottom:65px;padding:10px 11px;font-size:9px}.scene-caption{padding:13px 11px;font-size:9px}.scene-caption span:last-child{font-size:9px}.world-bar{font-size:10px;padding:16px 0}.world-bar span:last-child{font-size:8px;letter-spacing:.5px}.projects{margin-top:34px;padding:31px 13px 15px}.projects:before{left:15px}.section-heading{display:block;padding-bottom:20px}.section-heading h2{font-size:26px;margin-top:10px}.section-heading p{max-width:none;font-size:11px;margin-top:12px}.toolbar{flex-direction:column;align-items:stretch;gap:16px;margin-top:20px}.filters{display:grid;grid-template-columns:repeat(4,1fr)}.filters button{padding:10px 0;font-size:11px}.search input{width:100%;padding:13px 0}.search kbd{display:none}.sample-note{font-size:10px;line-height:1.8}.results-line{font-size:10px}.grid{grid-template-columns:1fr;gap:17px}.card-art{height:145px}.card h3{font-size:22px}.description{min-height:0;font-size:13px}.card-body{padding:20px 19px 0}.about{margin-block:33px;padding:24px 18px;gap:14px;align-items:start}.about-icon{font-size:29px}.about h2{font-size:19px;line-height:1.6}.about p{font-size:12px}.about p br{display:none}footer{flex-wrap:wrap;gap:15px}footer p{order:3;width:100%;max-width:none;margin:0;font-size:9px}.mobile-break{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:600px){.header{grid-template-columns:1fr auto auto;column-gap:14px}.header>.brand{grid-column:1 / 3;grid-row:1}.header nav>a[href='#projects']{grid-column:1;grid-row:2}.header nav>a[href='#about']{grid-column:2;grid-row:2;justify-self:center}.header nav .admin-login{grid-column:3;grid-row:2}.header nav .mode-toggle{grid-column:3;grid-row:1}}

/* Dark palette keeps the pixel artwork in color. */
html[data-display-mode=dark]{color-scheme:dark;--bg:#17171e;--ink:#f0edf6;--muted:#b6afc4;--green:#bea4ee;--line:#36333f;--accent:#55416e;--lime:#d6e99c;--soft:#22212b;--shadow:#09080e;background:var(--bg)}
html[data-display-mode=dark] :is(.mode-toggle,.random-quest,.scene-label,.scene-caption,.speech,.speech:after,.projects,.projects:before,.card,.empty button,.skip){background:#22212b;color:var(--ink)}
html[data-display-mode=dark] .mode-toggle[aria-pressed=true]{background:#eee5fa;color:#302439;border-color:#cbb6e2}
html[data-display-mode=dark] .admin-login{box-shadow:2px 2px #7b658f}
html[data-display-mode=dark] .primary{color:#2e3520;border-color:#8e9c69;box-shadow:4px 4px #08080e}
html[data-display-mode=dark] .scene{background:#22212b;border-color:#a59ab5;box-shadow:7px 7px #302838}
html[data-display-mode=dark] :is(.scene-label,.scene-caption,.speech,.speech:after){border-color:#8f809f}
html[data-display-mode=dark] .scene>.village-backdrop{opacity:.15;filter:saturate(.8)}
html[data-display-mode=dark] .scene-star{color:#b395dc}
html[data-display-mode=dark] .speech{box-shadow:3px 3px #43304e}
html[data-display-mode=dark] :is(.hero-note,.scene-caption,.scene-caption span:last-child,.scene-region,.sample-note,.results-line,footer p,footer>a){color:#b5a9c4}
html[data-display-mode=dark] :is(.projects,.card,.about,.search,.filters button,.section-heading,.tags span,.card-links){border-color:#484051}
html[data-display-mode=dark] .projects{box-shadow:5px 5px #24202b}
html[data-display-mode=dark] .section-heading h2 span{background:#392b49;border-color:#766187;color:#d6bff3}
html[data-display-mode=dark] .filters button{background:#25222e;color:#c4b9d0}
html[data-display-mode=dark] .filters button[aria-pressed=true]{background:#d9c5f1;color:#2c2434;box-shadow:2px 2px #55416b}
html[data-display-mode=dark] .search{background:#1d1b25}
html[data-display-mode=dark] :is(.search input::placeholder,.search>span,kbd){color:#b8a6ca}
html[data-display-mode=dark] kbd{border-color:#63516f}
html[data-display-mode=dark] .card:hover{box-shadow:4px 6px #362a44}
html[data-display-mode=dark] .card.is-picked{background:#2d2438}
html[data-display-mode=dark] .card.is-picked:before{background:#483058;color:#f3e3ff;box-shadow:2px 2px #120e18}
html[data-display-mode=dark] .card-art{background-image:radial-gradient(#ffffff16 1px,transparent 1px)}
html[data-display-mode=dark] .card-art:after{background:#ffffff0a;border-color:#ffffff25;box-shadow:3px 3px #0003}
html[data-display-mode=dark] .card-art svg{filter:drop-shadow(4px 5px #0003)}
html[data-display-mode=dark] .peach{background-color:#48352e;color:#e8b48c}
html[data-display-mode=dark] .green{background-color:#303d2c;color:#b3cf8a}
html[data-display-mode=dark] .purple{background-color:#3c304c;color:#c9a8ef}
html[data-display-mode=dark] .yellow{background-color:#443e26;color:#e1c976}
html[data-display-mode=dark] .blue{background-color:#2a3947;color:#a1c4df}
html[data-display-mode=dark] .pink{background-color:#482e3d;color:#e0a4be}
html[data-display-mode=dark] .badge{background:#211c2c;border-color:#594760;color:#e4d4ef}
html[data-display-mode=dark] .category{color:#c5a2e0}
html[data-display-mode=dark] .tags span{background:#32283e;color:#c9b6da}
html[data-display-mode=dark] :is(.card-links a,.results-line button){color:#c9a7ed}
html[data-display-mode=dark] .disabled{color:#a098ae}
html[data-display-mode=dark] :is(.about,.empty){background:#211e2b;border-color:#4b3e5b;color:#d3bde6}
html[data-display-mode=dark] .empty>span{background:#392946;color:#e6cef9;border-color:#806093;box-shadow:4px 4px #493354}
html[data-display-mode=dark] .about-stamp{background:#3a294a;color:#d6b7ee;border-color:#765789;box-shadow:3px 3px #211628}
html[data-display-mode=dark] .projects:before{background:var(--bg)}
html[data-display-mode=dark] .hero-copy .adventure-message{color:#c9a7ed}
html[data-display-mode=dark] .random-quest>span{color:#b99bdc}

/* Repository view prioritizes names, descriptions and direct project links. */
.projects{border:0;box-shadow:none;background:transparent;padding:0;margin-top:45px}.projects:before{display:none}.section-heading{align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px}.section-heading .eyebrow{font-size:10px;color:var(--muted);letter-spacing:1.6px}.section-heading h2{font-size:28px;margin-top:10px}.section-heading h2 span{transform:none;border:0;background:#f1eff5;border-radius:20px;color:#6f667e;font-size:12px;padding:5px 9px;vertical-align:middle}.section-heading p{max-width:none;font-size:12px}.toolbar{margin-top:22px}.sample-note{margin-top:18px}.results-line{min-height:42px}.grid{display:block;border-top:1px solid var(--line)}.repo-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:18px;align-items:start;padding:26px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.repo-row:hover{transform:none;background:var(--soft);box-shadow:none;border-color:var(--line)}.repo-icon{display:grid;place-items:center;width:36px;height:36px;margin-top:2px;background:#f4f2f8;border:1px solid #e6e1ed;border-radius:7px;color:#83728f}.repo-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.repo-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.repo-row h3{font-size:19px;line-height:1.5;margin:0;letter-spacing:-.4px;overflow-wrap:anywhere}.repo-status{font-size:10px;border:1px solid #ded9e7;padding:3px 7px;border-radius:20px;color:#85768f;white-space:nowrap;flex-shrink:0}.repo-row .description{font-size:13px;line-height:1.8;min-height:0;margin:8px 0 12px;color:var(--muted)}.repo-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.repo-meta .category{font-size:11px;color:#8c7d98}.repo-meta .tags{display:flex;gap:6px;margin:0}.repo-meta .tags span{font-size:10px;padding:3px 6px;background:var(--soft);border-color:var(--line);color:#84728f}.repo-row .card-links{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;max-width:190px;padding:0;border:0;margin-top:3px}.repo-row .card-links a{font-size:11px;border:1px solid #dcd6e5;border-radius:5px;padding:8px 10px;background:white;white-space:nowrap}.repo-row .card-links a:hover{background:#f3eff8;text-decoration:none}.repo-row .disabled{font-size:10px;padding:8px 0;white-space:nowrap}.repo-row .card-links:has(a) .disabled{width:100%;text-align:right}.about{margin-top:45px}.world-bar span:first-child{font-size:11px}
html[data-display-mode=dark] .projects{background:transparent;box-shadow:none}html[data-display-mode=dark] .section-heading h2 span{background:#302a3b;color:#b6a6c7}html[data-display-mode=dark] .repo-row{background:transparent;border-color:var(--line)}html[data-display-mode=dark] .repo-row:hover{background:var(--soft);box-shadow:none}html[data-display-mode=dark] :is(.repo-icon,.repo-status,.repo-meta .tags span){background:#292431;border-color:#51435e;color:#bba7ce}html[data-display-mode=dark] .repo-meta .category{color:#bba6ce}html[data-display-mode=dark] .repo-row .card-links a{background:#26212e;border-color:#574764;color:#d0b5e6}html[data-display-mode=dark] .repo-row .card-links a:hover{background:#392d45}
@media(max-width:900px){.repo-row{gap:13px;grid-template-columns:32px minmax(0,1fr) auto}.repo-icon{width:32px;height:32px}.repo-row .card-links{max-width:150px}.repo-row h3{font-size:18px}.section-heading p{max-width:210px}}
@media(max-width:600px){.projects{padding:0;margin-top:32px}.section-heading{padding-bottom:19px}.section-heading h2{font-size:25px}.section-heading p{max-width:none;font-size:11px}.repo-row{padding:23px 0;grid-template-columns:28px minmax(0,1fr);gap:12px}.repo-icon{width:28px;height:31px;border:0;background:none}.repo-icon svg{width:21px;height:21px}.repo-row h3{font-size:18px}.repo-row .description{font-size:12px;margin-block:8px 11px}.repo-row .card-links{grid-column:2;justify-content:flex-start;max-width:none;margin-top:3px;gap:12px}.repo-row .card-links:has(a) .disabled{width:auto;text-align:left}.repo-heading{gap:8px}.repo-row .card-links a{padding:7px 10px}.repo-meta{gap:9px}.section-heading h2 span{font-size:11px}}
