@font-face{font-family:Inter;src:url('../shared/inter.woff2') format('woff2');font-weight:300 700;font-display:swap}@font-face{font-family:'Space Grotesk';src:url('../shared/space-grotesk.woff2') format('woff2');font-weight:300 700;font-display:swap}
.grcp{font:400 16px/1.6 Inter,sans-serif;color:#A7AFBF;--grcp-accent:#7C5CFF;width:100%;min-width:0;overflow-wrap:anywhere;color-scheme:dark}.grcp *{box-sizing:border-box}.grcp [hidden]{display:none!important}.grcp h2,.grcp h3,.grcp h4{font-family:'Space Grotesk',sans-serif;color:#F5F7FA;line-height:1.25;margin:0 0 16px}.grcp h2{font-size:38px;font-weight:700}.grcp h3{font-size:24px;font-weight:600}.grcp h4{font-size:20px;font-weight:600;margin-top:24px}.grcp p{margin:0 0 16px}.grcp strong{color:#F5F7FA}.grcp a{color:#A7AFBF;text-decoration:underline;text-underline-offset:4px}.grcp a:hover{color:#F5F7FA}.grcp .grcp-kicker{color:#7C5CFF;font-size:12px;letter-spacing:1.3px;font-weight:600;margin-bottom:12px}.grcp .grcp-note{font-size:13px;line-height:1.65;color:#A7AFBF}.grcp .grcp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.grcp .grcp-three{grid-template-columns:repeat(3,minmax(0,1fr))}.grcp .grcp-journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.grcp .grcp-card,.grcp-form,.grcp-dashboard{background:#171B24;border:1px solid #272D38;border-radius:12px;padding:28px;min-width:0}.grcp .grcp-card{height:100%;display:flex;flex-direction:column}.grcp .grcp-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:10px;margin-bottom:22px}.grcp .grcp-card>button:last-child{margin-top:auto;align-self:flex-start}.grcp .grcp-card h3{font-size:24px}.grcp .grcp-journey h3{font-size:20px}.grcp-form{background:#11141B;padding:32px;border-radius:16px}.grcp form label{display:block;color:#F5F7FA;font-size:15px;font-weight:500;min-width:0}.grcp select,.grcp input[type=number],.grcp textarea{font:400 16px/1.4 Inter,sans-serif;color:#F5F7FA;background:#0B0D12;border:1px solid #272D38;border-radius:8px;padding:13px 12px;display:block;width:100%;min-width:0;max-width:100%;margin:8px 0 20px;min-height:48px}.grcp select{padding-right:30px;text-overflow:ellipsis}.grcp input[type=checkbox],.grcp input[type=radio]{width:18px;height:18px;min-width:18px;accent-color:#7C5CFF;margin:0 8px 0 0;vertical-align:middle}.grcp input:focus-visible,.grcp select:focus-visible,.grcp textarea:focus-visible,.grcp a:focus-visible,.grcp button:focus-visible,.grcp summary:focus-visible{outline:2px solid #947AFF;outline-offset:3px}.grcp fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}.grcp legend{font-size:15px;font-weight:500;color:#F5F7FA;margin-bottom:10px}.grcp-goals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.grcp-goals label{border:1px solid #272D38;border-radius:8px;padding:14px 12px;cursor:pointer;background:#0B0D12}.grcp-goals label:has(:checked){border-color:#7C5CFF}.grcp .grcp-check{display:flex;gap:8px;align-items:flex-start;align-self:center;margin:12px 0 24px;line-height:1.5}.grcp .grcp-check input{margin-top:3px}.grcp button,.grcp .grcp-link{border:1px solid #7C5CFF;border-radius:8px;padding:13px 20px;background:#7C5CFF;color:#F5F7FA;font:600 15px/1.5 Inter,sans-serif;cursor:pointer;white-space:normal;max-width:100%;text-decoration:none;transition:background .2s,border-color .2s}.grcp button:hover,.grcp .grcp-link:hover{background:#947AFF;color:#F5F7FA;border-color:#947AFF}.grcp button:disabled{opacity:.6;cursor:wait}.grcp button.grcp-secondary{background:transparent;border-color:#272D38;color:#F5F7FA}.grcp button.grcp-secondary:hover{background:#1C212B;border-color:#737B8C}.grcp .grcp-actions{display:flex;gap:12px;flex-wrap:wrap}.grcp .grcp-storage{font-size:13px;margin:16px 0 28px}.grcp .grcp-warning{color:#F5B942}.grcp .grcp-message{margin:16px 0 0}.grcp .grcp-message:empty{display:none}.grcp-dashboard{margin-top:28px}.grcp-dashboard label{display:block;max-width:350px;margin:20px 0}.grcp .grcp-between,.grcp .grcp-totals{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.grcp .grcp-totals{margin:18px 0}.grcp .grcp-meter{margin-bottom:16px}.grcp progress{appearance:none;display:block;width:100%;height:8px;border:0;border-radius:8px;overflow:hidden;background:#272D38;margin:12px 0}.grcp progress::-webkit-progress-bar{background:#272D38}.grcp progress::-webkit-progress-value{background:#7C5CFF;border-radius:8px}.grcp progress::-moz-progress-bar{background:#7C5CFF}.grcp .grcp-category{border:1px solid #272D38;border-radius:12px;margin-bottom:14px;background:#171B24}.grcp summary{cursor:pointer;color:#F5F7FA;font:600 18px/1.5 'Space Grotesk',sans-serif;padding:22px}.grcp .grcp-chapter{margin:0 16px 16px;background:#11141B;border-radius:8px}.grcp .grcp-chapter summary{font-size:16px}.grcp .grcp-objective{display:flex;align-items:center;justify-content:space-between;gap:22px;border-top:1px solid #272D38;padding:18px 22px}.grcp .grcp-objective>div{flex:1;min-width:0}.grcp .grcp-objective label{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:#A7AFBF;font-size:14px;min-width:110px}.grcp .grcp-objective input[type=number]{width:80px;margin:0;padding:8px;min-height:40px}.grcp .grcp-source{display:block;font-size:12px;margin-top:6px}.grcp .grcp-session-form{margin:24px 0}.grcp .grcp-session-result{margin-top:24px}.grcp .grcp-empty{padding:28px;border:1px dashed #272D38;border-radius:12px}.grcp .grcp-slot{min-width:0}
@media(max-width:1024px){.grcp .grcp-three,.grcp .grcp-journey,.grcp-goals{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.grcp .grcp-grid,.grcp .grcp-three,.grcp .grcp-journey{grid-template-columns:1fr;gap:16px}.grcp .grcp-card,.grcp-form,.grcp-dashboard{padding:20px}.grcp h2{font-size:28px}.grcp h3{font-size:22px}.grcp .grcp-objective{flex-direction:column;align-items:flex-start;padding:16px;gap:12px}.grcp summary{padding:18px;font-size:17px}.grcp .grcp-actions{flex-direction:column}.grcp .grcp-actions button{width:100%}.grcp-goals{grid-template-columns:1fr}.grcp .grcp-chapter{margin:0 10px 12px}}
@media(prefers-reduced-motion:reduce){.grcp *{transition:none!important}}
.grcp.grcp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.grcp.grcp-grid>.grcp-card{height:100%}@media(max-width:767px){.grcp.grcp-grid{grid-template-columns:1fr}}
