/* Hide default Daggerheart countdown tracker */ .daggerheart.countdowns { display: none !important; } /* Modern Countdown Tracker Application */ .dh-improved-countdowns { position: fixed; pointer-events: none; /* Let clicks pass through to child elements */ z-index: 100; } .countdown-tracker-window { pointer-events: all; background: rgba(20, 20, 25, 0.25); backdrop-filter: blur(8px); border: 1px solid rgba(255, 255, 255, 0.05); border-radius: 12px; padding: 8px; display: flex; flex-direction: column; gap: 12px; box-shadow: none; transition: all 0.3s ease; min-width: 120px; color: #eee; font-family: 'Inter', 'Roboto', sans-serif; } .countdown-tracker-window:hover { background: rgba(20, 20, 25, 0.85); border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5); } .countdown-tracker-window.minimized { min-width: fit-content; padding: 8px 12px; } .countdown-tracker-window.minimized .value-control { display: none; } .countdown-tracker-window.minimized .countdown-visual { gap: 0; } .countdown-tracker-window.minimized:hover { min-width: 120px; } .countdown-tracker-window.minimized:hover .value-control { display: flex; } .countdown-tracker-window.minimized:hover .countdown-visual { gap: 10px; } /* Header and Drag Handle */ .tracker-header { display: flex; justify-content: space-between; align-items: center; opacity: 0; height: 0; overflow: hidden; transition: all 0.2s ease; } .countdown-tracker-window:hover .tracker-header { opacity: 1; height: 24px; margin-bottom: 4px; } .drag-handle { cursor: grab; color: rgba(255, 255, 255, 0.5); padding: 2px 8px; } .countdown-tracker-window.locked .drag-handle { display: none; } .header-controls { display: flex; gap: 8px; padding-right: 4px; } .control-btn { color: rgba(255, 255, 255, 0.6); cursor: pointer; font-size: 14px; } .control-btn:hover { color: #fff; text-shadow: 0 0 8px rgba(255, 255, 255, 0.5); } /* Countdowns List */ .countdowns-list { display: flex; flex-direction: column; gap: 16px; max-height: 60vh; overflow-y: auto; overflow-x: hidden; padding-right: 4px; /* Space for scrollbar */ /* Custom scrollbar for webkit */ scrollbar-width: thin; scrollbar-color: rgba(255, 255, 255, 0.2) transparent; } .countdowns-list::-webkit-scrollbar { width: 4px; } .countdowns-list::-webkit-scrollbar-track { background: transparent; } .countdowns-list::-webkit-scrollbar-thumb { background-color: rgba(255, 255, 255, 0.2); border-radius: 4px; } .countdown-item { display: flex; flex-direction: column; align-items: center; gap: 6px; position: relative; } .countdown-name { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; color: rgba(255, 255, 255, 0.8); text-align: center; /* max-width removed to allow natural width, or increased if needed */ max-width: 150px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; /* Allow wrapping */ line-height: 1.2; transition: max-width 0.3s ease; } .countdown-tracker-window:not(.minimized):hover .countdown-name { max-width: 250px; /* Reduced from none to provide some limit, or use none */ overflow: visible; white-space: normal; /* Allow wrapping */ } .countdown-visual { display: flex; align-items: center; gap: 10px; } .visual-wrapper { position: relative; display: flex; align-items: center; justify-content: center; /* Ensure the number overlay is positioned relative to this wrapper */ } .icon-container { position: relative; width: 48px; height: 48px; background: rgba(0, 0, 0, 0.3); border: 2px solid rgba(255, 255, 255, 0.1); overflow: hidden; transition: border-radius 0.3s ease; } .icon-container.shape-circle { border-radius: 50%; } .icon-container.shape-rounded { border-radius: 8px; } .countdown-icon { width: 100%; height: 100%; object-fit: cover; display: block; } .value-overlay { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); pointer-events: none; display: flex; align-items: center; justify-content: center; } .value-overlay.number { font-size: 22px; font-weight: 800; color: #fff; text-shadow: 0 0 4px rgba(0, 0, 0, 0.9), 0 0 8px rgba(0, 0, 0, 0.9); width: max-content; /* Allow numbers to extend beyond icon width if needed */ pointer-events: none; z-index: 10; } .value-overlay.visual { width: 100%; height: 100%; top: 0; left: 0; transform: none; background: rgba(0, 0, 0, 0.2); } /* Clock Visual */ .clock-visual { width: 100%; height: 100%; border-radius: 50%; /* Opacity and Color handled inline via template */ } /* Bar Visual */ .bar-visual { position: absolute; bottom: 0; left: 0; /* Box shadow removed as it might interfere with custom colors/transparency */ transition: all 0.3s ease; /* Color handled inline via template */ } /* SVG Border Visual */ .progress-border-svg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; /* Rotation handled inline to start at top */ } /* Grayscale Filter */ .grayscale-filter { backdrop-filter: grayscale(100%) !important; background: transparent !important; opacity: 1 !important; box-shadow: none !important; } .bar-visual.vertical { width: 100%; /* height is set inline */ } .bar-visual.horizontal { height: 100%; /* width is set inline */ } /* +/- Controls */ .value-control { opacity: 0; transition: opacity 0.2s ease; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.1); border-radius: 4px; cursor: pointer; color: #ccc; font-size: 12px; } .countdown-item:hover .value-control { opacity: 1; } .value-control:hover { background: rgba(255, 255, 255, 0.2); color: #fff; } .value-control.plus:hover { background: rgba(74, 222, 128, 0.2); color: #4ade80; } .value-control.minus:hover { background: rgba(248, 113, 113, 0.2); color: #f87171; } /* No Countdowns State */ .no-countdowns { font-size: 11px; font-style: italic; color: rgba(255, 255, 255, 0.4); padding: 8px; text-align: center; } /* Sidebar Injection */ .dh-improved-countdowns-sidebar { border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 8px; padding: 8px; margin-top: 8px; } .dh-improved-countdowns-sidebar .menu-refresh-container { display: flex; justify-content: center; } .dh-improved-countdowns-sidebar .create-countdown-btn { background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 4px; color: #eee; cursor: pointer; font-family: inherit; font-size: 13px; padding: 6px 12px; transition: all 0.2s ease; display: flex; align-items: center; gap: 8px; } .dh-improved-countdowns-sidebar .create-countdown-btn:hover { background: rgba(255, 255, 255, 0.1); border-color: rgba(255, 255, 255, 0.3); box-shadow: 0 0 10px rgba(255, 255, 255, 0.1); } .dh-improved-countdowns-sidebar i { font-size: 12px; }