.dashboard-intro{gap:.3rem;margin-bottom:1.2rem;display:grid}.dashboard-layout{grid-template-columns:minmax(320px,430px) minmax(380px,1fr);align-items:start;gap:1.5rem;display:grid}.dashboard-left{gap:1.5rem;display:grid}.clock-component,.calendar,.summary-panel{border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:linear-gradient(#fff 0%,#fbfcff 100%)}.clock-component{padding:1.55rem;position:relative;overflow:hidden}.clock-component:before{content:"";pointer-events:none;background:linear-gradient(120deg,#bc173114,#0c162608);position:absolute;inset:0}.clock-component p,.clock-component h2{position:relative}.clock-kicker{text-transform:uppercase;letter-spacing:.11em;margin-bottom:.2rem;font-size:.73rem;font-weight:800}.clock-component p{color:var(--text-muted);font-weight:600}.clock-component h2{color:var(--primary-strong);margin-top:.2rem;font-family:DM Sans,Manrope,sans-serif;font-size:clamp(2.2rem,5vw,3.3rem)}.calendar{overflow:hidden}.calendar-header{color:#fff;background:linear-gradient(110deg,#c91533 0%,#7b0f21 100%);justify-content:space-between;align-items:center;padding:1rem 1.1rem;display:flex}.calendar-title{font-size:1.02rem;font-weight:700}.calendar-options button{color:#fff;cursor:pointer;width:2rem;height:2rem;transition:transform var(--transition), background-color var(--transition);background:#ffffff1f;border:1px solid #ffffff57;border-radius:50%;margin-left:.45rem}.calendar-options button:hover{background:#ffffff4d;transform:translateY(-1px)}.calendar-weekdays{grid-template-columns:repeat(7,1fr);gap:.35rem;padding:.7rem .95rem 0;display:grid}.calendar-weekdays span{text-align:center;color:#8f99ad;font-size:.72rem;font-weight:800}.calendar-month{text-align:center;color:var(--text-main);background:var(--surface-soft);border-bottom:1px solid var(--border-soft);margin-top:.55rem;padding:.65rem;font-family:Fraunces,serif;font-size:1.2rem;font-weight:700}.day-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;padding:.95rem;display:grid}.day{aspect-ratio:1;border-radius:var(--radius-sm);color:#3c4658;transition:transform var(--transition), background-color var(--transition), color var(--transition);justify-content:center;align-items:center;font-size:.88rem;font-weight:700;display:flex}.day:hover{color:var(--primary);background-color:#fdecef;transform:translateY(-1px)}.day-current{color:var(--primary-strong);background:#fbd8df}.calendar-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:radial-gradient(circle at 20% 20%,#bc173129,#0000 55%),radial-gradient(circle at 80% 0,#34538c1f,#0000 50%),#0b121f94;place-items:center;padding:1.1rem;display:grid;position:fixed;inset:0}.calendar-modal{background:linear-gradient(#fff 0%,#fff8fa 100%);border:1px solid #f0c8d0;border-radius:22px;width:min(760px,100%);max-height:min(88vh,860px);padding:1.35rem 1.4rem 1.5rem;overflow-y:auto;box-shadow:0 24px 52px #0e142247}.calendar-modal-header{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.calendar-modal-header h3{color:#8f1026;margin:0;font-size:clamp(1.15rem,2vw,1.4rem)}.calendar-modal-close{color:#8f1026;cursor:pointer;width:2.2rem;height:2.2rem;transition:transform var(--transition), background-color var(--transition), color var(--transition);background:#fff3f6;border:1px solid #f4c7cf;border-radius:50%;font-size:1.1rem;line-height:1}.calendar-modal-close:hover{background:var(--primary);color:#fff;transform:translateY(-1px)}.calendar-modal-content{margin-top:1rem}.calendar-modal-divider{border:none;border-top:1px dashed #e7b6c0;margin:1rem 0}.calendar-modal-clocking-item{background:#fff;border:1px solid #efc5cd;border-radius:12px;margin:.55rem 0;padding:.72rem .85rem}.calendar-modal-clocking-item p{margin:.2rem 0}.calendar-modal-form-title{color:#3d4658;margin-top:1.5rem;margin-bottom:0}.calendar-modal-form{flex-direction:column;gap:.6rem;margin-top:.9rem;display:flex}.calendar-modal-form label{color:#5b6475;font-size:.84rem;font-weight:700}.calendar-modal-control{width:100%;font:inherit;transition:border-color var(--transition), box-shadow var(--transition);background:#fff;border:1px solid #d3dae6;border-radius:10px;padding:.62rem .75rem}.calendar-modal-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #bc173121}.calendar-modal-form textarea.calendar-modal-control{resize:vertical;min-height:82px}.calendar-modal-form .auth-button{font:inherit;letter-spacing:.01em;color:#fff;cursor:pointer;transition:transform var(--transition), box-shadow var(--transition), filter var(--transition);background:linear-gradient(120deg,#bc1731 0%,#8f1026 100%);border:0;border-radius:12px;margin-top:.35rem;padding:.78rem 1rem;font-weight:800;box-shadow:0 10px 22px #8f102647}.calendar-modal-form .auth-button:hover{filter:saturate(112%);transform:translateY(-1px);box-shadow:0 14px 28px #8f102657}.calendar-modal-form .auth-button:active{transform:translateY(0);box-shadow:0 7px 16px #8f102647}.calendar-modal-form .auth-button:disabled{opacity:.65;cursor:not-allowed;box-shadow:none;transform:none}.summary-panel{min-height:560px;padding:1.6rem;position:relative;overflow:hidden}.summary-panel:after{content:"";pointer-events:none;background:radial-gradient(circle,#bc173129,#bc173100);border-radius:50%;width:210px;height:210px;position:absolute;top:-70px;right:-70px}.summary-kicker{text-transform:uppercase;letter-spacing:.12em;color:#8f97a6;margin-bottom:.25rem;font-size:.74rem;font-weight:700}.summary-title{color:#991327;margin-bottom:1.2rem;font-family:DM Sans,Manrope,sans-serif;font-size:clamp(1.6rem,3vw,2.05rem)}.summary-main-row{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.2rem;display:grid}.summary-block{border-radius:var(--radius-lg);background:var(--primary-soft);border:1px solid #f3c4ce;padding:.95rem}.summary-clocking-actions{background:linear-gradient(145deg,#fff4f6 0%,#ffe7eb 100%);gap:.7rem;display:grid}.summary-clocking-caption{color:#5f2734;margin:0;font-size:.9rem;font-weight:600}.summary-action-buttons{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.summary-action-button{color:#fff;cursor:pointer;transition:transform var(--transition), filter var(--transition);background:linear-gradient(120deg,#bc1731 0%,#8f1026 100%);border:none;border-radius:12px;padding:.68rem .75rem;font-weight:700}.summary-action-button:hover:not(:disabled){filter:saturate(110%);transform:translateY(-1px)}.summary-action-button:disabled{opacity:.65;cursor:not-allowed}.summary-action-button-muted{background:linear-gradient(120deg,#3e4f6b 0%,#2f3c56 100%)}.summary-action-feedback{color:#6a2b39;background:#fff;border:1px solid #efc2cb;border-radius:10px;margin:0;padding:.55rem .62rem;font-size:.88rem;font-weight:600}.summary-label{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);font-size:.74rem;font-weight:800}.summary-emphasis{color:var(--primary-strong);margin-top:.4rem;font-size:2rem;font-weight:800}.summary-ring-section{flex-direction:column;align-items:center;display:flex}.worked-ring{--progress:0%;background:conic-gradient(var(--ring-color) var(--progress), var(--ring-track) 0);width:176px;height:176px;transition:background var(--transition);border-radius:50%;place-items:center;margin-top:.45rem;display:grid}.ring-pending{--ring-color:var(--primary)}.ring-ok{--ring-color:var(--success)}.worked-ring-inner{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:136px;height:136px;display:flex;box-shadow:inset 0 0 0 1px #eef1f7}.worked-ring-hours{font-size:1.04rem;font-weight:800}.worked-ring-percent{color:var(--text-muted);margin-top:.08rem;font-size:.88rem;font-weight:700}.worked-ring-status{color:#334156;margin-top:.5rem;font-size:.87rem;font-weight:700}.summary-month-block{margin-top:.25rem}.summary-note{color:#7f2f40;border-top:1px dashed #e0a7b2;margin-top:1rem;padding-top:.85rem;font-size:.9rem;font-weight:600}.account-layout{grid-template-columns:repeat(2,minmax(320px,1fr));align-items:start;gap:1.2rem;margin-top:1rem;display:grid}.account-card{border:1px solid var(--border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:linear-gradient(170deg,#fff 0%,#fbfcff 100%);padding:1.35rem}.account-title{color:#991327;margin-top:0;margin-bottom:.9rem}.account-data-grid{grid-template-columns:120px 1fr;gap:.55rem .75rem;margin-bottom:1.2rem;display:grid}.account-data-grid p{margin:0}.account-logout-button{color:#c91533;border-radius:var(--radius-sm);cursor:pointer;width:100%;transition:all var(--transition);background:linear-gradient(120deg,#fef2f4 0%,#fdf5f6 100%);border:1px solid #f6c2cb;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;padding:.85rem;font-size:.95rem;font-weight:800;display:flex}.account-logout-button:hover{background:linear-gradient(120deg, var(--primary) 0%, var(--primary-strong) 100%);color:#fff;border-color:#0000;transform:translateY(-2px);box-shadow:0 6px 15px #c9153340}.security-legend{color:var(--text-muted);font-size:.95rem;font-weight:500}.security-form{gap:1.1rem;margin-top:1.2rem;display:grid}.security-form-group{gap:.45rem;display:grid}.security-form-group label{color:#4e5c74;font-size:.88rem;font-weight:700}.security-form-group input{border-radius:var(--radius-sm);width:100%;font:inherit;transition:all var(--transition);background:#fbfdff;border:1px solid #ced7e7;padding:.75rem .9rem}.security-form-group input:focus{border-color:var(--primary);background:#fff;outline:none;box-shadow:0 0 0 3px #bc17311f}.account-save-button{border-radius:var(--radius-sm);font:inherit;color:#fff;background:linear-gradient(120deg, var(--primary) 0%, var(--primary-strong) 100%);cursor:pointer;transition:transform var(--transition), box-shadow var(--transition);border:none;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;padding:.8rem 1rem;font-weight:700;display:flex}.account-save-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #bc173140}.feedback-success{color:#0e7047;background:#e8f8f1;border:1px solid #b9e8d3;border-radius:10px;padding:.55rem .8rem;font-weight:700}@media (width<=950px){.dashboard-layout{grid-template-columns:1fr}.summary-panel{min-height:auto}.account-layout{grid-template-columns:1fr}}@media (width<=680px){.calendar-modal{border-radius:18px;padding:1rem .95rem 1.15rem}.calendar-modal-header h3{max-width:90%}.summary-main-row{grid-template-columns:1fr}.worked-ring{width:156px;height:156px}.worked-ring-inner{width:122px;height:122px}.summary-emphasis{font-size:1.7rem}}
