﻿html,body{background-color:var(--bg);color:var(--text);font-family:Verdana,Helvetica,Arial;font-size:14px}a{color:var(--koleo-mint)}a img{border:none}a.label{background:rgba(0,0,0,0);border:1px solid var(--border-strong);border-radius:20px;color:var(--koleo-mint);display:inline-flex;align-items:center;height:28px;box-sizing:border-box;padding:0 13px;line-height:1;vertical-align:top;text-decoration:none}a.label:hover{border-color:var(--koleo-mint)}.summary{margin-top:1em;background:var(--surface-inset);border:1px solid var(--border);border-radius:10px;padding:10px;margin-bottom:1em;width:auto;display:table;font-size:95%}h1,h2,h3{color:var(--koleo-mustard)}.clear{clear:both;height:0;overflow:hidden}#container{width:80%;margin:0 auto;background-color:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px 40px;margin-top:20px;box-shadow:0 10px 30px rgba(0,0,0,.35)}table{display:block;overflow-x:auto;white-space:nowrap;font-variant-numeric:tabular-nums}th{padding:5px;color:var(--text-muted);border-bottom:1px dashed var(--border-strong)}td{padding:4px 5px;border-bottom:1px dashed var(--row-line)}input[type=text],input[type=email],input[type=password],input[type=number]{background:var(--field-bg);border:1px solid var(--border-strong);border-radius:8px;color:var(--text);font:inherit;height:34px;box-sizing:border-box;padding:0 10px}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus{outline:none;border-color:var(--koleo-mint);box-shadow:0 0 0 2px rgba(91,212,197,.25)}input[type=submit]{background:var(--koleo-mustard);border:none;border-radius:8px;color:var(--koleo-plum);cursor:pointer;font:inherit;font-weight:bold;height:34px;box-sizing:border-box;padding:0 18px}input[type=submit]:hover{background:#ffc55c}input[type=checkbox]{accent-color:var(--koleo-mint)}#flash_notice,.notice{color:var(--positive)}#flash_alert,.alert{color:var(--negative)}.error_messages,#error_explanation{width:400px;border:1px solid var(--koleo-raspberry);border-radius:10px;overflow:hidden;padding:0px;padding-bottom:12px;margin-bottom:20px;background-color:var(--surface-inset);font-size:12px}.error_messages h2,#error_explanation h2{text-align:left;font-weight:bold;padding:5px 10px;font-size:12px;margin:0;background-color:var(--koleo-raspberry);color:#fff}.error_messages p,#error_explanation p{margin:8px 10px}.error_messages ul,#error_explanation ul{margin-bottom:0}.field_with_errors{display:inline}form .field,form .actions{margin:12px 0}.red{color:var(--negative)}.green{color:var(--positive)}.dot{padding-left:3px}.achivments a{text-decoration:none;font-size:150%}.season-overview{display:flex;flex-wrap:wrap;align-items:stretch;gap:20px;margin:1em 0}.season-overview .summary{margin:0;flex:0 0 auto}.season-chart{flex:1 1 420px;min-width:320px;background:var(--surface-inset);border:1px solid var(--border);border-radius:10px;padding:12px 16px 8px}.season-chart__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.season-chart__header h3{margin:0;font-size:1em}.season-chart__canvas{position:relative;height:240px}.season-chart__controls{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.season-chart__group{display:inline-flex;gap:4px}.season-chart__mode{background:rgba(0,0,0,0);border:1px solid var(--border-strong);border-radius:20px;color:var(--text-muted);cursor:pointer;font:inherit;font-size:12px;display:inline-flex;align-items:center;height:26px;box-sizing:border-box;padding:0 11px;line-height:1}.season-chart__mode:hover{border-color:var(--koleo-mint);color:var(--koleo-mint)}.season-chart__mode[aria-pressed=true]{background-color:var(--koleo-mint);border-color:var(--koleo-mint);color:var(--bg)}.steps-container{max-width:800px;margin:0 auto;padding:2rem}.header{text-align:center;margin-bottom:3rem}.header .title{color:#211563;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.header .subtitle{color:rgba(33,21,99,.7);font-size:1.2rem}.goal-card{background:#fff;border-radius:20px;padding:3rem 2rem;box-shadow:0 10px 30px rgba(91,212,197,.1);text-align:center}.goal-card .goal-value{margin:2rem 0 3rem}.goal-card .goal-value .goal-number{color:#1a7eed;font-size:6rem;font-weight:700;display:block;line-height:1;margin-bottom:1rem}.goal-card .goal-value .goal-unit{color:#5bd4c5;font-size:1.25rem;text-transform:uppercase;letter-spacing:3px;background:rgba(91,212,197,.1);padding:.5rem 1.5rem;border-radius:30px;display:inline-block}.form-wrapper{max-width:400px;margin:2rem auto;background:#fff;padding:2.5rem;border-radius:20px;box-shadow:0 5px 15px rgba(0,0,0,.05)}.form-wrapper .form-group{margin-bottom:2rem}.form-wrapper .form-group label{color:#211563;font-weight:600;margin-bottom:1rem;display:block;font-size:1.2rem;text-align:center}.form-wrapper .form-group input{width:180px;padding:1.2rem;border:2px solid rgba(91,212,197,.3);border-radius:12px;font-size:2rem;transition:all .3s ease;background:#f8fafc;text-align:center;font-weight:600;color:#1a7eed;display:block;margin:0 auto}.form-wrapper .form-group input:focus{border-color:#1a7eed;box-shadow:0 0 0 4px rgba(26,126,237,.1);outline:none;background:#fff}.form-wrapper .form-group input::placeholder{color:#a0aec0}.form-wrapper .buttons-wrapper{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 2rem;font-size:1.1rem;font-weight:600;border-radius:12px;transition:all .3s ease;cursor:pointer;text-decoration:none;border:none;width:100%}.btn.btn-primary{background:linear-gradient(135deg, #1a7eed, #1e88e5);color:#fff;box-shadow:0 4px 12px rgba(26,126,237,.2)}.btn.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(26,126,237,.3)}.btn.btn-primary:active{transform:translateY(0)}.btn.btn-secondary{background:#fff;color:#211563;border:2px solid #e2e8f0}.btn.btn-secondary:hover{border-color:#1a7eed;color:#1a7eed;background:rgba(26,126,237,.05)}.btn.btn-secondary:active{transform:translateY(0)}.edit-button{background:linear-gradient(135deg, #5bd4c5, #4dc0b5);color:#fff;padding:1rem 2rem;border-radius:12px;text-decoration:none;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;box-shadow:0 4px 12px rgba(91,212,197,.2);width:100%;max-width:200px;margin:0 auto}.edit-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(91,212,197,.3)}.edit-button:active{transform:translateY(0)}.edit-button i{font-size:1.1rem}.back-button{display:inline-flex;align-items:center;justify-content:center;padding:1rem 2rem;border-radius:12px;color:#64748b;text-decoration:none;transition:all .3s ease;font-weight:500;width:auto;min-width:120px}.back-button:hover{color:#1a7eed;background:rgba(26,126,237,.05)}.back-button::before{content:"←";margin-right:.5rem}.empty-state{text-align:center;padding:3rem}.empty-state .empty-message{color:#211563;font-size:1.2rem;margin-bottom:2rem}.deadline-info{color:#e1266b;font-size:1.1rem;margin-top:1.5rem;padding:1rem;background:rgba(225,38,107,.05);border-radius:12px;text-align:center}.deadline-warning{color:#e1266b;font-size:1.2rem;font-weight:600;padding:1rem;background:rgba(225,38,107,.05);border-radius:12px;margin-top:1.5rem;text-align:center}:root{--koleo-plum: #211563;--koleo-mint: #5BD4C5;--koleo-blue: #1A7EED;--koleo-mustard: #F7B540;--koleo-raspberry: #E1266B;--bg: #120D33;--surface: #1A1447;--surface-inset: #150F3D;--field-bg: #100B2E;--border: #2E2670;--border-strong: #3A3187;--row-line: #251D5E;--text: #E9E6F8;--text-muted: #A79DDA;--positive: #5BD4C5;--negative: #FF5C93}.logout-form{display:inline}.logout-link{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:inherit;font-family:inherit;padding:0;text-decoration:underline}.logout-link:hover{color:var(--koleo-mint)}
