/* Rakosun Code. Native controls, access checks and code/diff syntax stay intact. */
:root {
  --color-primary: #28c5b0; --color-primary-dark-1: #21b5a2; --color-primary-dark-2: #199b8c;
  --color-primary-light-1: #49d4c2; --color-primary-light-2: #71e1d3;
  --color-primary-alpha-10: #28c5b01a; --color-primary-alpha-20: #28c5b033;
  --color-primary-alpha-30: #28c5b04d; --color-primary-alpha-50: #28c5b080;
  --border-radius: 9px; --border-radius-medium: 10px; --border-radius-large: 14px;
  --fonts-proportional: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
html[data-theme="rakosun-dark"] {
  --color-body: #0e1523; --color-nav-bg: #101a2b; --color-nav-hover-bg: #1c2b41;
  --color-box-header: #172337; --color-box-body: #131e30; --color-secondary-bg: #162237;
  --color-input-background: #0e1828; --color-menu: #172337; --color-text: #dce5f1;
  --color-text-light: #9eacc3; --color-text-light-2: #8a9bb5; --color-text-light-3: #74869f;
  --color-secondary: #2b3a51; --color-secondary-light-1: #26354a;
  --color-secondary-light-2: #203047; --color-secondary-light-3: #1b293e;
  --color-code-bg: #0f1929; --color-light: #ffffff08;
}
html[data-theme="rakosun-light"] {
  --color-body: #f4f7fb; --color-nav-bg: #fff; --color-box-header: #edf3f8;
  --color-box-body: #fff; --color-secondary-bg: #f0f5f8; --color-primary: #087f75;
  --color-primary-dark-1: #076e66; --color-primary-light-1: #119b8c;
  --color-text: #203047; --color-text-light: #617289; --color-secondary: #dbe4ed;
}
body { font-family: var(--fonts-proportional); -webkit-font-smoothing: antialiased; }
#navbar { min-height: 66px; padding: 8px max(20px,calc((100vw - 1460px)/2)); border-bottom: 1px solid var(--color-secondary); }
#navbar-logo img { width: 33px; height: 33px; }
#navbar:not(.rakosun-public-nav) #navbar-logo::after { content: "rakosun code"; margin-left: 10px; margin-right: 12px; font-size: 15px; font-weight: 700; letter-spacing: -.045em; }
#navbar .rakosun-workspace-link { border: 1px solid var(--color-primary-alpha-30); color: var(--color-primary-light-1); margin-left: 12px; gap: 10px; }
#navbar .item { border-radius: 8px; font-weight: 550; }
#navbar .active.item { color: var(--color-primary-light-1); background: var(--color-primary-alpha-10); }
.ui.menu { box-shadow: none; }
.ui.segment,.ui.attached.segment,.ui.segments,.ui.table { border-color: var(--color-secondary); }
.ui.button { border-radius: 8px; font-weight: 600; transition: background-color .14s,border-color .14s; }
.ui.primary.button,.ui.primary.buttons .button { background: var(--color-primary); color: #062b2a; }
html[data-theme="rakosun-light"] .ui.primary.button { color: white; }
.ui.primary.button:hover,.ui.primary.button:focus { background: var(--color-primary-light-1); color: #062b2a; }
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible { outline: 3px solid #36d7c0; outline-offset: 3px; }
.repository .repo-header { padding-top: 24px; padding-bottom: 20px; }
.repository .header-wrapper,.secondary-nav { background: var(--color-nav-bg); }
.repository .ui.top.attached.header { padding: 16px 20px; }
.repository .ui.table td { padding-top: 13px; padding-bottom: 13px; }
.issue-list .issue-title { font-weight: 600; letter-spacing: -.01em; }
.issue-list > .flex-item { border-radius: 10px; padding: 18px 16px; margin: 4px 0; }
.issue-list > .flex-item:hover { background: var(--color-primary-alpha-10); }
.page-footer.rakosun-footer { background: transparent; border-top: 1px solid var(--color-secondary); padding: 21px max(24px,calc((100vw - 1370px)/2)); color: var(--color-text-light-2); gap: 18px; }
.rakosun-footer .left-links,.rakosun-footer .right-links { gap: 20px; align-items: center; }
.rakosun-footer-brand { color: var(--color-text); font-size: 18px; font-weight: 750; letter-spacing: -.05em; }

/* Public login: a private workspace, with its own identity. */
#navbar.rakosun-public-nav { min-height: 96px; padding: 24px max(36px,calc((100vw - 1260px)/2)); border: 0; background: transparent; display: flex; align-items: center; justify-content: space-between; }
.rakosun-brand { display: inline-flex; align-items: center; gap: 12px; color: var(--color-text); font-size: 25px; font-weight: 760; letter-spacing: -.07em; }
.rakosun-brand:hover { color: var(--color-text); }
.rakosun-brand > span { line-height: 1.03; }
.rakosun-brand-detail { display: block; font-size: 10px; text-transform: uppercase; letter-spacing: .19em; font-weight: 600; color: var(--color-text-light-2); margin-top: 7px; }
.rakosun-hub-link { font-size: 12px; color: var(--color-text-light); display: inline-flex; align-items: center; gap: 17px; }
.rakosun-hub-link span { color: var(--color-primary); font-size: 20px; }
.rakosun-login {
  width: min(1180px,calc(100% - 72px)); margin: 20px auto 70px; min-height: calc(100vh - 260px);
  display: grid; grid-template-columns: minmax(0,1.22fr) minmax(0,1fr); gap: 94px; align-items: center;
  position: relative; isolation: isolate; padding: 25px 0 40px;
}
.rakosun-login::before { content: ""; position: absolute; z-index: -1; inset: -100px -100px -50px -150px; pointer-events: none; background: radial-gradient(ellipse at 18% 36%,#1e9d9321,transparent 47%),radial-gradient(ellipse at 91% 54%,#44649a17,transparent 48%); }
.rakosun-welcome { padding: 20px 0; min-width: 0; }
.rakosun-eyebrow { color: var(--color-primary-light-1); font-size: 10px; font-weight: 720; letter-spacing: .2em; display: flex; align-items: center; gap: 9px; margin: 0 0 27px; }
.rakosun-eyebrow > span { width: 6px; height: 6px; display: inline-block; border-radius: 50%; background: #47d6c0; box-shadow: 0 0 0 5px #47d6c013; }
.rakosun-welcome h1 { font-size: clamp(42px,4.9vw,66px); line-height: 1.06; letter-spacing: -.065em; margin: 0; font-weight: 730; color: var(--color-text); }
.rakosun-welcome h1 em { font-style: normal; color: #45d6c2; }
.rakosun-intro { max-width: 435px; margin: 26px 0 30px; font-size: 15px; line-height: 1.75; color: var(--color-text-light); }
.rakosun-flow { display: flex; gap: 0; margin: 30px 0; max-width: 470px; }
.rakosun-flow > div { flex: 1; display: grid; gap: 6px; padding-left: 20px; border-left: 1px solid var(--color-secondary); }
.rakosun-flow > div:first-child { padding-left: 0; border: 0; }
.rakosun-step { font-family: ui-monospace,monospace; font-size: 10px; color: var(--color-primary); letter-spacing: .1em; margin-bottom: 6px; }
.rakosun-flow strong { font-size: 13px; color: var(--color-text); font-weight: 650; }
.rakosun-flow > div > span:last-child { font-size: 11px; color: var(--color-text-light-2); }
.rakosun-code-card { max-width: 476px; margin-top: 32px; border: 1px solid #34445b; background: linear-gradient(130deg,#1b2a3bde,#101a29f5); border-radius: 14px; overflow: hidden; box-shadow: 0 20px 50px #00000026; transform: rotate(-1.2deg); }
.rakosun-code-top { height: 42px; border-bottom: 1px solid #34445b80; display: flex; align-items: center; gap: 6px; padding: 0 18px; color: #8190a9; }
.rakosun-code-top > span { height: 6px; width: 6px; background: #46556d; border-radius: 50%; }
.rakosun-code-top > span:first-child { background: #d68c80; }.rakosun-code-top > span:nth-child(2) { background: #d5b878; }.rakosun-code-top > span:nth-child(3) { background: #70b4a0; }
.rakosun-code-top b { font-size: 9px; font-weight: 500; letter-spacing: .06em; margin-left: auto; }
.rakosun-code-line { display: flex; align-items: baseline; gap: 7px; padding: 0 20px; font: 12px/1.95 ui-monospace,"SFMono-Regular",monospace; color: #d0deec; }
.rakosun-code-line:nth-child(2) { margin-top: 19px; }.rakosun-code-line:nth-child(4) { margin-bottom: 20px; }
.rakosun-code-line i { font-style: normal; font-size: 9px; width: 22px; color: #506681; }
.rakosun-syntax { color: #bdabef; }.rakosun-code-string { color: #77d2bb; }.rakosun-code-comment { color: #718ca3; }
.rakosun-code-bottom { border-top: 1px solid #34445b80; padding: 11px 18px; display: flex; justify-content: space-between; font-size: 9px; color: #8b9eb4; }.rakosun-code-bottom b { color: #50d4c0; }
.rakosun-welcome-note { margin: 26px 0 0; font-size: 11px; color: var(--color-text-light-2); line-height: 1.7; }
.rakosun-auth-panel { min-width: 0; width: 100%; box-sizing: border-box; border: 1px solid var(--color-secondary); border-radius: 20px; background: var(--color-box-body); box-shadow: 0 26px 70px #00000017; padding: 37px 35px 24px; position: relative; }
.rakosun-auth-panel::before { content: ""; height: 3px; background: linear-gradient(90deg,transparent,#2ac7b1,transparent); position: absolute; left: 25%; right: 25%; top: -1px; border-radius: 5px; }
.rakosun-auth-heading .rakosun-eyebrow { margin-bottom: 18px; font-size: 9px; }
.rakosun-auth-heading h2 { color: var(--color-text); font-size: 29px; line-height: 1.16; letter-spacing: -.04em; font-weight: 660; margin: 0 0 15px; }
.rakosun-auth-heading > p:last-child { font-size: 12px; color: var(--color-text-light); margin-bottom: 31px; }
.page-content.user.signin .rakosun-auth-panel > .ui.container { margin: 0!important; min-width: 0; max-width: 100%!important; width: 100%!important; }
.rakosun-standard-login .rakosun-auth-panel h4.ui.header { display: none; }
.rakosun-auth-panel .ui.attached.segment { border: 0; border-radius: 0; background: transparent; margin: 0; width: 100%; padding: 0; }
.rakosun-auth-panel .ui.form .field > label { font-size: 11px; font-weight: 550; color: var(--color-text-light); margin-bottom: 9px; }
.rakosun-auth-panel .ui.form input[type=text],.rakosun-auth-panel .ui.form input[type=password] { height: 48px; border-radius: 9px; background: var(--color-input-background); border: 1px solid var(--color-secondary); padding: 0 14px; color: var(--color-text); }
.rakosun-auth-panel .ui.form .required.field > label::after { color: var(--color-text-light-3); margin-left: 3px; }
.rakosun-auth-panel .ui.form > .field { margin-bottom: 22px; }
.rakosun-auth-panel .ui.checkbox label { font-size: 11px; color: var(--color-text-light); }
.rakosun-auth-panel .ui.form .ui.primary.button { min-height: 48px; margin-top: 4px; font-size: 12px; font-weight: 700; box-shadow: 0 5px 20px #23bdab15; }
.rakosun-auth-panel .ui.attached.segment.header { padding-top: 19px; display: block; text-align: center; }
.rakosun-auth-panel .ui.attached.segment.header .field { font-size: 11px; }
.rakosun-auth-note { text-align: center; margin: 29px 0 0; border-top: 1px solid var(--color-secondary); padding-top: 22px; font-size: 9px; letter-spacing: .04em; color: var(--color-text-light-3); }
.rakosun-auth-panel .ui.message { font-size: 12px; margin-bottom: 20px; }
@media(max-width:1000px) { .rakosun-login { gap: 45px; grid-template-columns: 1.05fr 1fr; }.rakosun-auth-panel { padding: 30px 25px 24px; }.rakosun-code-card { transform: none; }.rakosun-welcome h1 { font-size: 47px; } }
@media(max-width:760px) { #navbar.rakosun-public-nav { min-height: 83px; padding: 20px 24px; }.rakosun-brand { font-size: 22px; }.rakosun-brand-detail { font-size: 8px; }.rakosun-hub-link { font-size: 10px; gap: 8px; }.rakosun-login { width: min(480px,calc(100% - 40px)); display: flex; flex-direction: column; align-items: stretch; margin: 2px auto 40px; gap: 27px; padding: 10px 0; }.rakosun-welcome { padding: 0; }.rakosun-welcome > .rakosun-eyebrow { margin-bottom: 17px; font-size: 8px; }.rakosun-welcome h1 { font-size: 41px; }.rakosun-intro { font-size: 12px; margin: 18px 0 0; line-height: 1.65; }.rakosun-code-card,.rakosun-flow,.rakosun-welcome-note { display: none; }.rakosun-auth-panel { padding: 29px 25px 23px; border-radius: 15px; }.rakosun-auth-heading h2 { font-size: 26px; }.page-footer.rakosun-footer { padding: 19px 24px; }.rakosun-footer .left-links > span:last-child { display: none; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior: auto!important; transition: none!important; animation: none!important; } }
@media(max-width:760px) { #navbar:not(.rakosun-public-nav) #navbar-logo::after { display: none; } #navbar .rakosun-workspace-link { margin-left: 0; } }
