/* OfficeCalculator.Net v108 — online alarm clock */
.oc-alarm-v108{--alarm-blue:#2563eb;--alarm-deep:#0f315f;--alarm-line:var(--r47-line,#d8e2ef);--alarm-soft:var(--r47-soft,#f4f7fb);--alarm-text:var(--r47-text,#152036);--alarm-muted:var(--r47-muted,#667189)}
.oc-alarm-v108-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:18px;align-items:start}
.oc-alarm-v108-setup{display:grid;gap:14px}
.oc-alarm-v108-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.oc-alarm-v108-quick .oc-v103-btn{min-height:44px}
.oc-alarm-v108-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.oc-alarm-v108-field.full{grid-column:1/-1}
.oc-alarm-v108-field label,.oc-alarm-v108-setting label{display:block;margin:0 0 6px;color:var(--alarm-muted);font-size:.71rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.oc-alarm-v108-field input,.oc-alarm-v108-field select,.oc-alarm-v108-setting select,.oc-alarm-v108-setting input[type="range"]{width:100%!important;min-height:47px!important}
.oc-alarm-v108-field input[type="time"]{font-size:1.35rem!important;font-weight:900!important;font-variant-numeric:tabular-nums}
.oc-alarm-v108-custom-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:10px;border:1px solid var(--alarm-line);border-radius:12px;background:var(--alarm-soft)}
.oc-alarm-v108-day{position:relative}.oc-alarm-v108-day input{position:absolute;opacity:0;pointer-events:none}.oc-alarm-v108-day span{display:grid;place-items:center;min-height:38px;border:1px solid var(--alarm-line);border-radius:9px;background:var(--r47-surface,#fff);color:var(--alarm-muted);font-size:.72rem;font-weight:900;cursor:pointer}.oc-alarm-v108-day input:checked+span{background:#e7efff;border-color:#9bb8f2;color:#174fb7}.oc-alarm-v108-day input:focus-visible+span{outline:3px solid rgba(37,99,235,.22);outline-offset:2px}
.oc-alarm-v108-actions{display:grid;grid-template-columns:1.3fr 1fr;gap:9px}.oc-alarm-v108-actions .oc-v103-btn{min-height:48px}
.oc-alarm-v108-advanced{border:1px solid var(--alarm-line);border-radius:13px;background:var(--alarm-soft);overflow:hidden}.oc-alarm-v108-advanced summary{padding:12px 13px;cursor:pointer;color:var(--alarm-text);font-weight:900}.oc-alarm-v108-advanced[open] summary{border-bottom:1px solid var(--alarm-line)}
.oc-alarm-v108-settings{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:13px}.oc-alarm-v108-setting.full{grid-column:1/-1}.oc-alarm-v108-volume-row{display:grid;grid-template-columns:1fr 52px;gap:9px;align-items:center}.oc-alarm-v108-volume-row output{font-size:.82rem;font-weight:900;text-align:right}
.oc-alarm-v108-check{display:flex!important;align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--alarm-line);border-radius:10px;background:var(--r47-surface,#fff);color:var(--alarm-text)!important;font-size:.8rem!important;font-weight:800!important;text-transform:none!important;letter-spacing:0!important}.oc-alarm-v108-check input{width:18px!important;height:18px!important;min-height:0!important;margin:0!important}
.oc-alarm-v108-status{position:relative;overflow:hidden;min-height:350px;padding:24px;border:1px solid #244f81;border-radius:18px;background:radial-gradient(circle at 50% 5%,#2968aa,#0e2e51 72%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 18px 40px rgba(14,46,81,.18)}
.oc-alarm-v108-status:after{content:"";position:absolute;left:-15%;right:-15%;bottom:-45%;height:65%;background:radial-gradient(circle,rgba(93,174,255,.25),transparent 68%)}
.oc-alarm-v108-current,.oc-alarm-v108-next{position:relative;z-index:1}.oc-alarm-v108-current{text-align:center}.oc-alarm-v108-clock{font-size:clamp(3rem,6vw,5.2rem);font-weight:950;line-height:1;letter-spacing:-.045em;font-variant-numeric:tabular-nums;text-shadow:0 5px 20px rgba(0,0,0,.25)}.oc-alarm-v108-date{margin-top:10px;color:#d4e8ff;font-size:.84rem;font-weight:800}.oc-alarm-v108-zone{margin-top:4px;color:#a9ccec;font-size:.72rem}
.oc-alarm-v108-next{margin-top:22px;padding:16px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.09);backdrop-filter:blur(5px)}.oc-alarm-v108-kicker{display:block;color:#bcdcff;font-size:.66rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.oc-alarm-v108-countdown{margin-top:5px;color:#fff;font-size:clamp(2rem,4vw,3.1rem);font-weight:950;font-variant-numeric:tabular-nums}.oc-alarm-v108-next-title{margin-top:5px;color:#e8f3ff;font-size:.9rem;font-weight:850}.oc-alarm-v108-next-meta{margin-top:4px;color:#bcd2e8;font-size:.75rem}.oc-alarm-v108-state{margin-top:13px;color:#d4e8ff;font-size:.8rem;line-height:1.5}
.oc-alarm-v108-list-wrap{margin-top:18px}.oc-alarm-v108-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.oc-alarm-v108-list-head h3{margin:0!important}.oc-alarm-v108-list{display:grid;gap:9px;max-height:360px;overflow:auto}.oc-alarm-v108-empty{padding:24px;border:1px dashed var(--alarm-line);border-radius:13px;background:var(--alarm-soft);color:var(--alarm-muted);text-align:center}
.oc-alarm-v108-item{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid var(--alarm-line);border-radius:13px;background:var(--r47-surface,#fff)}.oc-alarm-v108-item-time{color:#174fb7;font-size:1.35rem;font-weight:950;font-variant-numeric:tabular-nums}.oc-alarm-v108-item-main{min-width:0}.oc-alarm-v108-item-main strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.oc-alarm-v108-item-main span{display:block;margin-top:3px;color:var(--alarm-muted);font-size:.73rem}.oc-alarm-v108-item-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.oc-alarm-v108-item-actions button{min-height:35px;padding:7px 9px;font-size:.72rem}.oc-alarm-v108-item.is-off{opacity:.58}.oc-alarm-v108-item.is-off .oc-alarm-v108-item-time{color:var(--alarm-muted)}
.oc-alarm-v108-ring{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;padding:18px;background:rgba(5,18,34,.76);backdrop-filter:blur(7px)}.oc-alarm-v108-ring[hidden]{display:none!important}.oc-alarm-v108-ring-card{width:min(100%,620px);padding:28px;border:1px solid rgba(255,255,255,.22);border-radius:24px;background:linear-gradient(145deg,#184f8c,#0e2e51);color:#fff;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.45);animation:ocAlarmPulse 1.25s ease-in-out infinite}.oc-alarm-v108-ring-icon{font-size:3rem}.oc-alarm-v108-ring-time{margin-top:8px;font-size:clamp(3.4rem,10vw,6.5rem);font-weight:950;line-height:1;font-variant-numeric:tabular-nums}.oc-alarm-v108-ring-label{margin-top:10px;font-size:1.25rem;font-weight:900}.oc-alarm-v108-ring-note{margin-top:6px;color:#cfe6ff;font-size:.83rem}.oc-alarm-v108-ring-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:22px}.oc-alarm-v108-ring-actions button{min-height:48px}.oc-alarm-v108-stop{grid-column:1/-1;background:#fff!important;border-color:#fff!important;color:#123c75!important}.oc-alarm-v108-stop:hover{background:#e7efff!important;color:#0f315f!important}
.oc-alarm-v108-toast{position:fixed;left:50%;bottom:24px;z-index:21000;transform:translateX(-50%);padding:9px 13px;border-radius:10px;background:#152036;color:#fff;font-size:.78rem;font-weight:850;box-shadow:0 10px 30px rgba(0,0,0,.28)}
@keyframes ocAlarmPulse{50%{box-shadow:0 0 0 10px rgba(66,153,255,.18),0 30px 90px rgba(0,0,0,.45)}}
body.oc-dark .oc-alarm-v108-day span,body.oc-dark .oc-alarm-v108-check,body.oc-dark .oc-alarm-v108-item{background:#152337;border-color:#31465f}.oc-dark .oc-alarm-v108-day input:checked+span{background:#1b3763;border-color:#466aa0;color:#d6e7ff}
@media(max-width:900px){.oc-alarm-v108-grid{grid-template-columns:1fr}.oc-alarm-v108-status{min-height:300px}.oc-alarm-v108-item{grid-template-columns:82px minmax(0,1fr)}.oc-alarm-v108-item-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:560px){.oc-alarm-v108-quick{grid-template-columns:repeat(2,minmax(0,1fr))}.oc-alarm-v108-fields,.oc-alarm-v108-settings{grid-template-columns:1fr}.oc-alarm-v108-field.full,.oc-alarm-v108-setting.full{grid-column:auto}.oc-alarm-v108-custom-days{grid-template-columns:repeat(4,minmax(0,1fr))}.oc-alarm-v108-actions{grid-template-columns:1fr}.oc-alarm-v108-item{grid-template-columns:72px minmax(0,1fr);padding:10px}.oc-alarm-v108-ring-actions{grid-template-columns:1fr}.oc-alarm-v108-stop{grid-column:auto}}
