﻿*,*::before,*::after{box-sizing:border-box}*{margin:0;padding:0}html{overflow-y:scroll;height:100%}body{display:flex;flex-direction:column;min-height:100%;background-color:var(--color-background);color:var(--color-text-body);line-height:var(--line-height-body)}img,picture,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}h1,h2,h3,h4,h5,h6{color:var(--color-text-header);line-height:var(--line-height-headers)}h1{font-size:var(--font-size-xxxl)}h2{font-size:var(--font-size-xxl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-l)}a{color:var(--color-primary);text-decoration:none;transition:color 200ms}a:hover,a:focus,a:active{color:var(--color-primary-rotate)}@font-face{font-family:"Stardew Valley";src:url(/assets/Stardew_Valley-dd376d1b3a3cfb1e8baf1909e9dd973bb9b40ae69d11467e6b3e11995b1266e6.ttf) format("truetype");font-weight:normal;font-style:normal}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-3rem;left:0.5rem;z-index:2000;background:#1e3a5f;color:#ffffff;padding:0.75rem 1.25rem;border-radius:0 0 0.5rem 0.5rem;transition:top 0.2s ease}.skip-link:focus{top:0;color:#ffffff}body{background:url(/assets/background-a20a43b1fa65d5ade2dd04e4bad4e0c7f62a4bc0d5f118eb2807d7fce7448678.png) no-repeat center center;background-size:cover;image-rendering:pixelated;image-rendering:crisp-edges;height:100vh;margin:0;font-family:"Fuzzy Bubbles", cursive}@media (max-width: 800px){html{min-height:100%}body{min-height:100vh;height:auto;background-attachment:fixed;background-size:cover;background-position:center top}}.container{width:100%;max-width:1200px;margin:0 auto}.stardew-window{position:relative;box-sizing:border-box;overflow:visible;min-height:200px;display:flex;flex-direction:column}.stardew-window .stardew-window__frame{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;min-height:0;border:3px solid #96533a;clip-path:polygon(39px 0, calc(100% - 33px) 0, calc(100% - 33px) 107px, 100% 107px, 100% calc(100% - 23px), calc(100% - 21px) calc(100% - 23px), calc(100% - 21px) 100%, 21px 100%, 21px calc(100% - 23px), 0 calc(100% - 23px), 0 164px, 39px 164px)}.stardew-window .stardew-window__corner{position:absolute;z-index:1;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none}.stardew-window .stardew-window__corner--tl{top:0;left:0;width:45px;height:168px;background-image:url(/assets/tasks-top-left-dae2d1ba0569f708e53ffcfd7af40b59830f14d47fbd0b5073bdc567fa432deb.png);background-position:top left}.stardew-window .stardew-window__corner--tr{top:0;right:0;width:39px;height:111px;background-image:url(/assets/tasks-top-right-a1e3de5c2e521967d3ac9dea495c73892d14f63ef39801b47df91c52db86ef70.png);background-position:top right}.stardew-window .stardew-window__corner--bl{bottom:0;left:0;width:27px;height:27px;background-image:url(/assets/tasks-bottom-left-82e636fbcc66341e43e899f74d5b0f9e4d77575e1364498d3efb4a42433376bd.png);background-position:bottom left}.stardew-window .stardew-window__corner--br{bottom:0;right:0;width:27px;height:27px;background-image:url(/assets/tasks-bottom-right-c8440c224a1d583d453ed8b2bc46f07b13953ffd11f4bc39c50d5bf1eca4cd8c.png);background-position:bottom right}.stardew-window .stardew-window__border--outer{position:relative;margin:0;flex:1;display:flex;flex-direction:column;min-height:0;border:3px solid #d89356;border-radius:9px}.stardew-window .stardew-window__border--middle{position:relative;margin:0;flex:1;display:flex;flex-direction:column;min-height:0;border:6px solid #ffd684;border-radius:6px}.stardew-window .stardew-window__border--inner{position:relative;margin:0;flex:1;display:flex;flex-direction:column;min-height:0;background-color:#ffe4b5;border-radius:3px}.stardew-window .stardew-window__content{position:relative;flex:1;background-color:#ffe4b5;min-height:1em;box-sizing:border-box}.site-header{width:100%;position:relative;color:white}@media (max-width: 800px){.site-header{z-index:1001}}.site-header__top{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem}.logo-container img{height:50px}@media (max-width: 800px){.logo-container img{height:30px;width:30px}}.mobile-menu-toggle{display:none;background:none;border:none;color:white;cursor:pointer;padding:0.5rem}.mobile-menu-toggle svg{width:28px;height:28px;fill:white;display:block;transform:scaleY(0.75);transform-origin:center}.progress-drawer-toggle{position:relative;box-sizing:border-box;background:none;border:none;color:white;cursor:pointer;padding:0.25rem;width:28px;height:28px}.progress-drawer-toggle svg{width:20px;height:20px;fill:white;display:block}.progress-drawer-toggle__icon{position:absolute;top:0.25rem;left:0.25rem}.progress-drawer-toggle__icon--solid{opacity:0;transition:opacity 0.15s ease}.progress-drawer-toggle:hover .progress-drawer-toggle__icon--solid{opacity:1}.progress-drawer-toggle:hover .progress-drawer-toggle__icon--outline{opacity:0}.progress-drawer-toggle--mobile{display:none}.reference-icon-button{background:none;border:none;color:white;cursor:pointer;padding:0.25rem;display:flex;align-items:center}.reference-icon-button svg{width:20px;height:20px;fill:white;display:block}.reference-selector--mobile{display:none}.header-mobile-actions{display:none}.header-right{display:flex;align-items:center;gap:20px;height:50px}@media (max-width: 800px){.header-right{height:30px}}@media (max-width: 800px){.site-header__top{padding:1rem 1rem 0.5rem 1rem}.header-right--desktop{display:none}.mobile-menu-toggle{display:block;padding:0.25rem;margin:-0.25rem -0.25rem -0.25rem 0}.progress-drawer-toggle--mobile{display:block}.reference-selector--mobile{display:block}.header-mobile-actions{display:flex;align-items:center;gap:0.5rem;margin-left:auto;margin-right:0.5rem}}@media (min-width: 801px){.mobile-menu{display:none}}.reference-selector{position:relative}.reference-selector button{background:none;border:none;color:white;font-size:16px;cursor:pointer}.playthrough-selector{position:relative}.playthrough-selector button{background:none;border:none;color:white;font-size:16px;cursor:pointer}.user-actions{position:relative}.user-actions button{background:none;border:none;color:white;font-size:16px;cursor:pointer}.reference-selector button svg,.playthrough-selector button svg,.user-actions button svg{width:20px;height:20px;fill:white;display:inline-block}.dropdown-menu{position:absolute;top:38px;right:0;background:white;color:black;border-radius:5px;box-shadow:0 4px 6px rgba(0,0,0,0.1);list-style:none;padding:0;margin:0;width:200px;display:block;z-index:100;overflow:hidden}.dropdown-menu.hidden{display:none}.dropdown-menu li{cursor:pointer}.dropdown-menu li:hover{background:#f4f4f4}.dropdown-menu li a,.dropdown-menu li button{width:100%;display:block;padding:10px}.dropdown-menu li button{background:none;border:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.dropdown-menu__link--admin{color:#ce5252;font-weight:600}.dropdown-menu__item--divider{border-top:1px solid #eee}.dropdown-menu li a.dropdown-menu__link--new{display:flex;align-items:center;justify-content:center;gap:0.4rem}.dropdown-menu li a.dropdown-menu__link--new svg{width:13px;height:13px;fill:currentColor}.playthrough-dropdown__current{font-weight:600}.playthrough-dropdown__current a{display:flex;justify-content:space-between;align-items:center}.playthrough-dropdown__indicator{margin-left:0.35em;color:#4ade80}.auth-link{color:white;margin-left:10px;text-decoration:none}.auth-link:hover{text-decoration:underline}.mobile-menu__overlay{display:none;position:fixed;top:60px;left:0;right:0;bottom:0;background:rgba(0,0,0,0.4);z-index:999}@media (min-width: 801px){.mobile-menu__overlay{display:none !important}}.mobile-menu__overlay--open{display:block;touch-action:none}.mobile-menu__overlay--closed{display:none}.mobile-menu{position:fixed;top:60px;left:0;right:0;max-height:0;overflow:hidden;background:#7e9ee5;color:#1e3a5f;transition:max-height 0.12s ease-out;box-shadow:0 4px 12px rgba(0,0,0,0.15);z-index:1000}@media (min-width: 801px){.mobile-menu{display:none}}.mobile-menu--open{max-height:calc(100vh - 60px);overflow-y:auto;transition:max-height 0.15s ease-in}.mobile-menu--closed{max-height:0;transition:max-height 0.12s ease-out}.mobile-menu__content{padding:1rem 0 1.5rem}.mobile-menu__section:not(:last-child){margin-bottom:1.5rem}.mobile-menu__heading{font-family:'Stardew Valley', sans-serif;font-size:1.5rem;font-weight:600;letter-spacing:0.05em;color:white;margin:0 0 0.5rem;padding:0 1rem 0.25rem}.mobile-menu__list{list-style:none;padding:0;margin:0;border-top:1px solid rgba(255,255,255,0.2);border-bottom:1px solid rgba(255,255,255,0.2)}.mobile-menu__list .mobile-menu__item+.mobile-menu__item{border-top:1px solid rgba(255,255,255,0.2)}.mobile-menu__item{padding-left:1rem;padding-right:1rem}.mobile-menu__link{display:flex;align-items:center;justify-content:space-between;margin-left:1rem;padding:0.75rem 0;color:white;text-decoration:none;font-size:1rem}.mobile-menu__link:hover,.mobile-menu__link:focus{color:#bfdbfe}.mobile-menu__link--admin{color:#ffb4b4}.mobile-menu__link--admin:hover,.mobile-menu__link--admin:focus{color:#ffdada}.mobile-menu__link--new{justify-content:center;gap:0.4rem}.mobile-menu__link--new svg{width:13px;height:13px;fill:currentColor}.mobile-menu__item--current .mobile-menu__link{font-weight:600}.mobile-menu__item--current .playthrough-dropdown__indicator{margin-left:0.25em;color:#4ade80}.flash{position:fixed;top:-100px;left:50%;transform:translateX(-50%);width:800px;background:white;color:black;text-align:center;padding:15px;border-radius:10px;box-shadow:0px 2px 4px rgba(0,0,0,0.1);opacity:0;transition:opacity 0.5s ease-in-out;z-index:1100}.flash-message{font-size:1rem}.hidden{display:none}@keyframes slideDown{0%{top:-100px;opacity:0}100%{top:20px;opacity:1}}.slide-down{animation:slideDown 0.8s forwards}@keyframes slideUp{0%{top:20px;opacity:1}100%{top:-100px;opacity:0}}.slide-up{animation:slideUp 1s forwards}@media (max-width: 800px){@keyframes slideDownMobile{0%{top:-100px;opacity:0}100%{top:0;opacity:1}}@keyframes slideUpMobile{0%{top:0;opacity:1}100%{top:-100px;opacity:0}}.slide-down{animation-name:slideDownMobile}.slide-up{animation-name:slideUpMobile}}.page-title{font-family:'Stardew Valley', sans-serif;font-size:3rem;color:#FFFFFF;text-align:center}.button{display:flex;align-items:center;justify-content:center;position:relative;font-size:1.5rem;font-family:"Stardew Valley", sans-serif;text-transform:uppercase;text-decoration:none;color:#ce5252;background-color:#ffd789;border:none;cursor:pointer;width:232px;height:52px;margin:1rem auto;padding:0;background-image:url(/assets/button-88d4a400da742145afa77c44f8666f6a6e087223e505dfecbe0ee0679d03ba8b.png);background-size:cover;background-repeat:no-repeat;image-rendering:pixelated;image-rendering:crisp-edges;transition:background-color 0.2s, color 0.2s}.button:hover{color:#ee7474;background-color:#fff3b9}.button:focus:not(:focus-visible){outline:none}.button--danger{color:#ffffff;background-color:#c0392b}.button--danger:hover{color:#ffffff;background-color:#e74c3c}.progress-drawer__overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.4);z-index:1049}.progress-drawer__overlay--open{display:block;touch-action:none}.progress-drawer__overlay--closed{display:none}.progress-drawer{position:fixed;top:0;right:0;bottom:0;width:420px;max-width:90vw;z-index:1050;transform:translateX(100%);transition:transform 0.2s ease-out}.progress-drawer--open{transform:translateX(0)}.progress-drawer--closed{transform:translateX(100%)}.progress-drawer__frame{position:relative;height:100%;display:flex;flex-direction:column;color:black;background-color:#ffe4b5;background-image:linear-gradient(to right, #96533a 0, #96533a 3px, #d89356 3px, #d89356 6px, #ffd684 6px, #ffd684 12px, transparent 12px);background-repeat:no-repeat;background-size:12px 100%;background-position:left top;box-shadow:-4px 0 12px rgba(0,0,0,0.15);clip-path:polygon(39px 0, 100% 0, 100% 100%, 21px 100%, 21px calc(100% - 23px), 0 calc(100% - 23px), 0 164px, 39px 164px)}.progress-drawer__corner{position:absolute;z-index:3;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none}.progress-drawer__corner--tl{top:0;left:0;width:45px;height:168px;background-image:url(/assets/tasks-top-left-dae2d1ba0569f708e53ffcfd7af40b59830f14d47fbd0b5073bdc567fa432deb.png);background-position:top left}.progress-drawer__corner--bl{bottom:0;left:0;width:27px;height:27px;background-image:url(/assets/tasks-bottom-left-82e636fbcc66341e43e899f74d5b0f9e4d77575e1364498d3efb4a42433376bd.png);background-position:bottom left}.progress-drawer__header{position:relative;display:flex;align-items:center;justify-content:center;padding:1.25rem 1.5rem;flex-shrink:0}.progress-drawer__header h2{font-family:'Stardew Valley', sans-serif;font-size:1.75rem;margin:0}.progress-drawer__close{position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);cursor:pointer;display:block;background:none;border:none;padding:0}.progress-drawer__close svg{width:24px;height:24px;fill:#333}.progress-drawer__content{flex:1;overflow-y:auto;padding:1rem 1.5rem 2rem}.progress-drawer__group summary{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 0.25rem;cursor:pointer;list-style:none}.progress-drawer__group summary::-webkit-details-marker{display:none}.progress-drawer__group summary::before{content:"▸";display:inline-block;transition:transform 0.15s ease;color:#999;font-size:0.8rem;flex-shrink:0}.progress-drawer__group[open]>summary::before{transform:rotate(90deg)}.progress-drawer__group--top{border-bottom:1px solid white}.progress-drawer__group--top:first-child{border-top:1px solid white}.progress-drawer__group--top>summary{font-size:1.125rem;font-weight:600;padding-left:1.5rem}.progress-drawer__group--room>summary{font-size:1rem;font-weight:600}.progress-drawer__group--room.progress-drawer__group--complete{order:1}.progress-drawer__group--room.progress-drawer__group--complete>summary{color:#999;text-decoration:line-through}.progress-drawer__group--bundle>summary{font-size:0.95rem;font-weight:400}.progress-drawer__group--bundle.progress-drawer__group--complete{order:1}.progress-drawer__group--bundle.progress-drawer__group--complete>summary{color:#999;text-decoration:line-through}.progress-drawer__subgroups{padding-left:1.25rem;border-left:1px solid white;margin:0 0 0.75rem 0.5rem;display:flex;flex-direction:column}.progress-drawer__count{font-weight:400;font-size:0.85rem;color:#777;margin-left:auto}.progress-drawer__list{list-style-type:none;margin:0 0 1rem;padding:0;display:flex;flex-direction:column}.progress-drawer__list li{display:flex;align-items:center;gap:0.6rem;padding:0.4rem 0.25rem;font-size:0.95rem}.progress-drawer__list li label{cursor:pointer}.progress-drawer__list li:has(input:checked){order:1}.progress-drawer__list li:has(input:checked) input,.progress-drawer__list li:has(input:checked) label{opacity:0.6}.progress-drawer__list li:has(input:checked) label{text-decoration:line-through;color:#999}.progress-drawer__group--top>.progress-drawer__list{padding-left:1.5rem}@media (max-width: 480px){.progress-drawer{width:100%;max-width:100vw}}.home{position:relative}.junimo-patrol{position:absolute;top:0;left:0;width:36px;height:36px;z-index:5;pointer-events:none}.home-title{font-family:'Stardew Valley', sans-serif;font-size:8em;color:#FFFFFF;text-align:center;margin:2rem auto 0 auto;text-shadow:1px 1px 1px #333, -1px -1px 1px #333, 1px -1px 1px #333, -1px 1px 1px #333}@media (max-width: 800px){.home-title{margin-top:0;font-size:4.75rem;line-height:1.1}}.home-subtitle{font-family:"Fuzzy Bubbles", cursive;font-weight:bold;color:#FFFFFF;font-size:2rem;text-align:center;width:60%;letter-spacing:-1px;margin:0 auto}@media (max-width: 800px){.home-subtitle{font-size:1.6rem;width:75%}}.home-description-window .stardew-window{margin-top:4rem;width:70%;margin-left:auto;margin-right:auto}@media (max-width: 800px){.home-description-window .stardew-window{width:90%}}.home-description-window .stardew-window .stardew-window__content{display:flex;align-items:center;justify-content:center}.home-description{color:#000000;font-size:1.55rem;line-height:1.6;text-align:center;width:85%;margin:0 auto;font-weight:400}@media (max-width: 800px){.home-description{font-size:1.3rem;line-height:1.45;width:90%}}.home-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:2.5rem}.home-actions .button{margin:0;color:#000000}.home-actions .button:hover{color:#333333}.devise{width:100%;min-height:calc(100vh - 82px);display:flex;flex-direction:column}.devise .devise-title{font-family:'Stardew Valley', sans-serif;font-size:3.5em;color:#FFFFFF;text-align:center}.devise form{width:500px;margin:2rem auto 0 auto;display:flex;flex-direction:column}.devise form .field{margin:0.5rem 0}.devise form .field label{color:#000000;font-size:1em}.devise form .field em{color:#000000;font-size:0.8rem}.devise form .field input{display:block;width:100%;padding:0.75rem 1rem;margin:0.2rem 0 0 0}.devise .delete-account-warning{width:500px;max-width:100%;margin:1rem auto 0 auto;text-align:center;color:#FFFFFF}.devise .delete-account-warning p{margin:0.5rem 0}.devise .delete-account-phrase{font-family:monospace;font-size:1.15rem;letter-spacing:0.02em;background-color:#FFFFFF;color:#000000;border-radius:0.5rem;padding:0.75rem 1rem;display:inline-block;user-select:all}.devise .devise-legal{width:500px;max-width:100%;margin:auto auto 2rem auto;text-align:center;font-size:0.8rem;color:#FFFFFF}.devise .devise-legal a{color:inherit;text-decoration:underline}.field_with_errors{display:contents}.field_with_errors input{border:1px solid #c0392b}.form{width:100%;max-width:500px;margin:3rem auto 0 auto;display:flex;flex-direction:column}@media (max-width: 800px){.form{padding:0 0.5rem}}.form-row{display:flex;gap:0.75rem}.form-row .text-input{flex:1;min-width:0}@media (max-width: 480px){.form-row{flex-direction:column;gap:0}}.form-errors{background:white;color:#c0392b;border:1px solid #333;border-radius:0.75rem;padding:1rem 1.25rem;margin-bottom:1.5rem}.form-errors h2{font-size:1.1rem;margin:0 0 0.5rem}.form-errors ul{margin:0;padding-left:1.5rem}.text-input{margin:0.5rem 0}.text-input label{color:#000000;font-size:1em}.text-input input,.text-input textarea{width:100%;padding:0.75rem 1rem;margin:0.2rem 0 0 0}.text-input textarea{height:14rem;resize:vertical}.farm-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:10px;margin-top:2rem}.farm-option{text-align:center;cursor:pointer;transition:transform 0.2s ease-in-out}.farm-option:hover{transform:scale(1.05)}.farm-image{width:100px;height:100px;border-radius:8px;transition:filter 0.3s ease-in-out, opacity 0.3s ease-in-out;display:block;margin:0 auto;filter:grayscale(100%);opacity:0.5}.farm-option:hover .farm-image,.farm-option__input:checked~.farm-image{filter:grayscale(0%);opacity:1}.farm-option__input:focus-visible~.farm-image{outline:2px solid #1e3a5f;outline-offset:2px}.farm-label{display:block;margin-top:10px;font-size:14px}.date-fields{margin:1.5rem 0 0.5rem}.date-fields__row{display:flex;gap:0.75rem}@media (max-width: 480px){.date-fields__row{flex-direction:column;gap:0.5rem}}.date-fields__field{flex:1;min-width:0}.date-fields__field label{display:block;color:#000000;font-size:1em}.date-fields__field--narrow{flex:0 0 5.5rem}@media (max-width: 480px){.date-fields__field--narrow{flex-basis:auto}}.date-fields__subrow{flex:1;min-width:0;display:flex;gap:0.75rem}@media (max-width: 480px){.date-fields__subrow{gap:0.5rem}}.date-fields__select-wrapper{position:relative;margin:0.2rem 0 0 0}.date-fields__select-wrapper select{width:100%;padding:0.75rem 1.9rem 0.75rem 1rem;margin:0;appearance:none;-webkit-appearance:none;-moz-appearance:none}.date-fields__caret{position:absolute;top:50%;right:0.65rem;transform:translateY(-50%);pointer-events:none;display:flex}.date-fields__caret svg{width:10px;height:10px;fill:#333}.reference-page{padding:0 clamp(1rem, 6vw, 3rem);margin:2rem auto;display:flex;flex-direction:column;align-items:center;width:100%;box-sizing:border-box}.reference-page .stardew-window{width:920px;max-width:100%;margin:0 auto;height:calc(100vh - 12rem);display:flex;flex-direction:column;overflow:hidden}.reference-page .stardew-window .stardew-window__content{flex:1;overflow-y:auto;padding:0;scrollbar-width:none}.reference-page .stardew-window .stardew-window__content::-webkit-scrollbar{display:none}.reference-content{padding:clamp(1.5rem, 4vw, 3rem) clamp(1.5rem, 5vw, 3.75rem);box-sizing:border-box}.reference-content .reference-title{font-family:"Stardew Valley", sans-serif;font-size:clamp(2rem, 5vw, 3rem);text-align:center;margin:0 0 1.5rem 0;letter-spacing:0.02em;line-height:1.2}.reference-content h2{font-family:"Stardew Valley", sans-serif;font-size:clamp(1.5rem, 3.5vw, 2.1rem);margin:0 0 0.75rem 0}.reference-content .reference-section>summary{padding-left:0.25rem;gap:0.75rem}.reference-content .reference-section>summary h2{margin:0;line-height:1}.reference-content .reference-section>summary::before{font-size:1.5rem;line-height:1}.reference-content h3{font-family:"Stardew Valley", sans-serif;font-size:clamp(1.25rem, 2.5vw, 1.6rem);margin:1rem 0 0.5rem 0;font-weight:normal}.reference-content p,.reference-content ul,.reference-content li{font-family:"Fuzzy Bubbles", cursive;font-size:20px;font-weight:normal;line-height:1.6rem}.reference-content ul{list-style-type:disc;margin-inline-start:0;padding-inline-start:1.5rem}.reference-content li{margin:0.5rem 0 0.5rem 1rem;padding:0.5rem 0}.reference-content p{margin:0.5rem 0 1rem 0;padding:0 0.25rem}.reference-content .reference-table{width:100%;border-collapse:collapse;margin:0.75rem 0 1.5rem 0;font-family:"Fuzzy Bubbles", cursive}.reference-content .reference-table th,.reference-content .reference-table td{padding:0.5rem 0.75rem;text-align:left;border-bottom:1px solid rgba(0,0,0,0.15)}.reference-content .reference-table td{font-size:clamp(14px, 1.75vw, 16px);font-weight:normal}.reference-content .reference-table th{font-family:"Fuzzy Bubbles", cursive;font-size:clamp(14px, 1.75vw, 16px);font-weight:bold;background:rgba(0,0,0,0.06)}.reference-content .reference-table th.table-name,.reference-content .reference-table tr.table-name th:first-child{font-family:"Fuzzy Bubbles", cursive;font-weight:bold;font-size:clamp(14px, 1.75vw, 16px);color:#2d4a3e;min-width:0;background:rgba(45,74,62,0.08)}.reference-content .reference-table tr:hover th.table-name,.reference-content .reference-table tr.table-name:hover th:first-child{background:rgba(45,74,62,0.06)}@media (max-width: 600px){.reference-content .reference-table th,.reference-content .reference-table td{padding:0.4rem 0.5rem}.reference-content .reference-table th,.reference-content .reference-table td{font-size:14px}.reference-content .reference-table th.table-name,.reference-content .reference-table tr.table-name th:first-child{font-size:14px}}.reference-panel__overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.4);z-index:1059}.reference-panel__overlay--open{display:block;touch-action:none}.reference-panel__overlay--closed{display:none}.reference-panel__section{display:none}.reference-panel__section--active{display:block}.reference-modal{position:fixed;top:50%;left:50%;z-index:1060;width:900px;max-width:92vw;height:720px;max-height:85vh;transform:translate(-50%, -50%) scale(0.96);opacity:0;pointer-events:none;transition:opacity 0.15s ease, transform 0.15s ease;color:black}.reference-modal .stardew-window{height:100%}.reference-modal .stardew-window__content{flex:1;overflow-y:auto;scrollbar-width:none}.reference-modal .stardew-window__content::-webkit-scrollbar{display:none}.reference-modal.reference-panel--open{opacity:1;pointer-events:auto;transform:translate(-50%, -50%) scale(1)}.reference-modal.reference-panel--closed{opacity:0;pointer-events:none}.reference-modal__close{position:absolute;top:-14px;right:-14px;z-index:2;cursor:pointer;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#ffe4b5;border:3px solid #96533a;border-radius:50%}.reference-modal__close svg{width:18px;height:18px;fill:#333}@media (max-width: 800px){.reference-modal{display:none !important}}.reference-drawer{position:fixed;top:0;right:0;bottom:0;width:420px;max-width:90vw;z-index:1060;transform:translateX(100%);transition:transform 0.2s ease-out}.reference-drawer.reference-panel--open{transform:translateX(0)}.reference-drawer.reference-panel--closed{transform:translateX(100%)}.reference-drawer__frame{position:relative;height:100%;display:flex;flex-direction:column;color:black;background-color:#ffe4b5;background-image:linear-gradient(to right, #96533a 0, #96533a 3px, #d89356 3px, #d89356 6px, #ffd684 6px, #ffd684 12px, transparent 12px);background-repeat:no-repeat;background-size:12px 100%;background-position:left top;box-shadow:-4px 0 12px rgba(0,0,0,0.15);clip-path:polygon(39px 0, 100% 0, 100% 100%, 21px 100%, 21px calc(100% - 23px), 0 calc(100% - 23px), 0 164px, 39px 164px)}.reference-drawer__corner{position:absolute;z-index:3;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none}.reference-drawer__corner--tl{top:0;left:0;width:45px;height:168px;background-image:url(/assets/tasks-top-left-dae2d1ba0569f708e53ffcfd7af40b59830f14d47fbd0b5073bdc567fa432deb.png);background-position:top left}.reference-drawer__corner--bl{bottom:0;left:0;width:27px;height:27px;background-image:url(/assets/tasks-bottom-left-82e636fbcc66341e43e899f74d5b0f9e4d77575e1364498d3efb4a42433376bd.png);background-position:bottom left}.reference-drawer__header{position:relative;display:flex;align-items:center;justify-content:center;padding:1.25rem 1.5rem;flex-shrink:0}.reference-drawer__header h2{font-family:'Stardew Valley', sans-serif;font-size:1.75rem;margin:0}.reference-drawer__close{position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);cursor:pointer;display:block;background:none;border:none;padding:0}.reference-drawer__close svg{width:24px;height:24px;fill:#333}.reference-drawer__content{flex:1;overflow-y:auto}@media (min-width: 801px){.reference-drawer{display:none !important}}@media (max-width: 480px){.reference-drawer{width:100%;max-width:100vw}}.guide{display:flex;flex-direction:column;width:100%}.guide-header{height:4rem;flex-shrink:0}.guide-main{display:flex;justify-content:space-between;padding:0 5%;margin:2rem 0 0 0}.guide-main .left{width:55%}.selected-tasks-list{width:100%}.guide-main .right{width:40%;display:flex;flex-direction:column;gap:2rem}.guide-main .guide-column{height:550px}.guide-main .guide-column .stardew-window{height:100%;display:flex;flex-direction:column;overflow:hidden}.guide-main .guide-column .stardew-window .stardew-window__content{flex:1;overflow-y:auto;padding:1rem 1.75rem;scrollbar-width:none}.guide-main .guide-column .stardew-window .stardew-window__content::-webkit-scrollbar{display:none}.guide-main .right .drawer-content{height:100%}.daily-insights{display:flex;flex-direction:column;gap:1.5rem}.suggested-tasks{width:100%}.reminders{width:100%}@media (max-width: 800px){.guide-main{flex-direction:column;align-items:center}.guide-main .left,.guide-main .right{width:100%}.guide-main .guide-column{height:auto;min-height:300px}.guide-main .guide-column .stardew-window{height:auto;min-height:300px}.guide-main .right{margin-top:1.5rem;margin-bottom:1.5rem}.guide-main .right .drawer-content{display:flex;flex-direction:column;gap:1.5rem}.guide-main .right .drawer-content .stardew-window+.stardew-window{margin-top:0;margin-bottom:1.5rem}.guide-main .right .close-drawer{display:none}}@media (max-width: 480px){.guide-main{flex-direction:column;align-items:center}.guide-main .left,.guide-main .right{width:100%}.guide-main .right{margin-top:1rem}}.guide-footer{display:flex;justify-content:space-between;align-items:center;height:3rem;padding:2rem 0;border-top:2px solid black;width:100%}.open-drawer,.close-drawer{display:none;cursor:pointer;background:none;border:none;padding:0}@media (max-width: 480px){.guide-main{flex-direction:column;align-items:center}.guide-main .left{width:100%}.guide-main .right{width:100%;margin-top:1rem}.guide-main .right .drawer-content{display:flex;flex-direction:column;gap:0.75rem;width:100%}}.guide-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px;position:relative;font-family:"Stardew Valley", sans-serif;font-size:3.5rem;color:white;text-shadow:1px 1px 1px #333, -1px -1px 1px #333, 1px -1px 1px #333, -1px 1px 1px #333}@media (max-width: 1080px){.guide-header{font-size:2.75rem}}@media (max-width: 800px){.guide-header{font-size:2.5rem}}@media (max-width: 600px){.guide-header{font-size:1.75rem}}.guide-header__day{position:relative;width:70%;margin:0 auto;display:flex;justify-content:center;align-items:center}@media (max-width: 800px){.guide-header__day{width:90%}}@media (max-width: 480px){.guide-header__day{width:90%}}.guide-header__back{position:absolute;left:0;top:50%;transform:translateY(-50%);color:white}.guide-header__back svg{height:34px;width:34px;fill:currentColor;stroke:#333;stroke-width:2px;paint-order:stroke fill}.guide-header__back svg path{vector-effect:non-scaling-stroke}@media (max-width: 800px){.guide-header__back svg{height:24px;width:24px}}@media (max-width: 480px){.guide-header__back svg{height:20px;width:20px}}.guide-header__date{display:inline-block}.guide-header__next{position:absolute;right:0;top:50%;transform:translateY(-50%);color:white}.guide-header__next svg{height:34px;width:34px;fill:currentColor;stroke:#333;stroke-width:2px;paint-order:stroke fill}.guide-header__next svg path{vector-effect:non-scaling-stroke}@media (max-width: 800px){.guide-header__next svg{height:24px;width:24px}}@media (max-width: 480px){.guide-header__next svg{height:20px;width:20px}}#search-container{position:relative;width:70%;margin:0 auto}#search-container #search-input{display:block;width:100%;margin:1rem auto;padding:1rem;border:1px solid #AAA;border-radius:1rem;font-size:1.125rem}#search-container #search-input:focus{outline:none;border-color:#7e9ee5;box-shadow:0 0 0 3px rgba(126,158,229,0.25)}#search-container #autocomplete-dropdown{display:none;position:absolute;top:59px;width:100%;padding-top:0.5rem;border:1px solid #AAA;border-top:none;border-radius:0 0 1rem 1rem;max-height:300px;overflow-y:auto;background-color:#fff;font-size:1.125rem;box-shadow:0 4px 12px rgba(0,0,0,0.1);z-index:1000}#search-container #autocomplete-dropdown .dropdown-option{padding:12px 1rem;cursor:pointer;border-bottom:1px solid #AAA}#search-container #autocomplete-dropdown .dropdown-option:first-child{border-top:1px solid #AAA}#search-container #autocomplete-dropdown .dropdown-option:last-child{border-bottom:none}#search-container #autocomplete-dropdown .dropdown-option:hover,#search-container #autocomplete-dropdown .dropdown-option.active{background-color:#f0f0f0}@media (max-width: 800px){#search-container{width:90%}}@media (max-width: 480px){#search-container{width:90%}#search-container #search-input{margin:1rem auto 0 auto}}.selected-tasks h3{font-family:'Stardew Valley', sans-serif;font-size:2rem;text-align:center}.selected-tasks ul#selected-tasks-list{list-style-type:none;margin-inline-start:0;margin-top:1rem}.selected-tasks ul#selected-tasks-list li{position:relative;font-size:1.125rem;margin:0.5rem 0;padding:0.5rem 1.5rem;background:white;border-radius:1rem;display:flex;flex-direction:row;align-items:center;line-height:1.35rem;gap:0.5rem}.selected-tasks ul#selected-tasks-list li span.task-name{flex:1;min-width:0;margin:0 auto}.selected-tasks ul#selected-tasks-list li .icon{display:block;justify-content:center;align-items:center;cursor:pointer;transition:transform 0.2s ease;background:none;border:none;padding:0}.selected-tasks ul#selected-tasks-list li .icon:hover{transform:scale(1.08)}.selected-tasks ul#selected-tasks-list li .icon svg{height:20px;width:20px;margin-top:2px}.selected-tasks ul#selected-tasks-list li .drag-handle{position:absolute;left:0.4rem;top:50%;transform:translateY(-50%);cursor:grab}.selected-tasks ul#selected-tasks-list li .drag-handle:hover{transform:translateY(-50%) scale(1.08)}.selected-tasks ul#selected-tasks-list li .drag-handle:active{cursor:grabbing}.selected-tasks ul#selected-tasks-list li .drag-handle svg{width:10px;height:10px;margin-top:0}.selected-tasks ul#selected-tasks-list li.completed{text-decoration:line-through;opacity:0.6}.selected-tasks ul#selected-tasks-list li.sortable-chosen{box-shadow:0 2px 8px rgba(0,0,0,0.15)}.selected-tasks ul#selected-tasks-list li.sortable-ghost{opacity:0.4}@media (max-width: 480px){.selected-tasks ul#selected-tasks-list li{font-size:1.125rem;padding:0.5rem 0.5rem}}.reminders h3{font-family:'Stardew Valley', sans-serif;font-size:2rem;text-align:center}.reminders .reminders-list{list-style-type:none;margin-inline-start:0;margin-top:1.25rem}.reminders .reminders-list li{font-size:1.125rem;margin:0.5rem 0;padding:0.5rem 1rem;background:white;border-radius:1rem;display:flex;align-items:center;line-height:1.35rem}.reminders .empty-message{margin-top:1.25rem;margin-bottom:0;font-size:1.125rem}.suggested-tasks h3{font-family:'Stardew Valley', sans-serif;font-size:2rem;text-align:center}.suggested-tasks .suggested-tasks-list{list-style-type:none;margin-inline-start:0;margin-top:1.25rem}.suggested-tasks .suggested-tasks-list li{font-size:1.125rem;margin:0.5rem 0;padding:0.5rem 1rem;background:white;border-radius:1rem;display:flex;flex-direction:row;align-items:center;line-height:1.35rem}.suggested-tasks .suggested-tasks-list li span.task-name{width:80%;margin:0 auto}.suggested-tasks .suggested-tasks-list li span.add{display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform 0.2s ease}.suggested-tasks .suggested-tasks-list li span.add:hover{transform:scale(1.08)}.suggested-tasks .suggested-tasks-list li span.add svg{height:20px;width:20px}.suggested-tasks .empty-message{margin-top:1.25rem;margin-bottom:0;font-size:1.125rem}.guide-footer a{flex-basis:20%;display:flex;justify-content:center;align-items:center}.guide-footer img{height:auto;image-rendering:pixelated}.guide-footer img.guide-footer__my-list{width:40px}.guide-footer img.guide-footer__today{width:36px}.guide-footer img.guide-footer__reminders{width:41px}.guide-footer img.guide-footer__all{width:42px}.guide-footer img.guide-footer__encyclopedia{width:35px}.guide-header__calendar{display:inline-flex;align-items:center;justify-content:center;margin-right:0.85rem;padding:0;background:none;border:none;cursor:pointer;color:white}.guide-header__calendar svg{height:30px;width:30px;fill:currentColor;stroke:#333;stroke-width:2px;paint-order:stroke fill}.guide-header__calendar svg path{vector-effect:non-scaling-stroke}@media (max-width: 800px){.guide-header__calendar svg{height:22px;width:22px}}@media (max-width: 480px){.guide-header__calendar svg{height:18px;width:18px}}.date-picker__overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.4);z-index:1059}.date-picker__overlay--open{display:block;touch-action:none}.date-picker__overlay--closed{display:none}.date-picker-modal{position:fixed;top:50%;left:50%;z-index:1060;width:420px;max-width:92vw;transform:translate(-50%, -50%) scale(0.96);opacity:0;pointer-events:none;transition:opacity 0.15s ease, transform 0.15s ease;color:black;font-size:1rem;text-shadow:none}.date-picker-modal .stardew-window{min-height:unset}.date-picker-modal.date-picker--open{opacity:1;pointer-events:auto;transform:translate(-50%, -50%) scale(1)}.date-picker-modal.date-picker--closed{opacity:0;pointer-events:none}.date-picker-modal__close{position:absolute;top:-14px;right:-14px;z-index:2;cursor:pointer;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#ffe4b5;border:3px solid #96533a;border-radius:50%}.date-picker-modal__close svg{width:18px;height:18px;fill:#333}.date-picker-modal__content{padding:1.5rem 2.75rem 1.5rem;text-align:center;font-family:"Fuzzy Bubbles", cursive}.date-picker-modal__content h2{font-family:"Stardew Valley", sans-serif;font-size:1.75rem;margin:0 0 1rem}.date-picker-modal__content .date-fields__row{text-align:left}.date-picker-modal__content .form-actions{margin-top:1rem}.date-picker-modal__content .button{margin:0 auto}body.admin{background:#f4efe3;background-image:none;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;color:#1e3a5f;height:auto;min-height:100vh}.admin-shell{display:flex;min-height:100vh}.admin-sidebar{display:flex;flex-direction:column;width:240px;flex-shrink:0;background:#1e3a5f;color:white;padding:1.5rem 0}.admin-sidebar__brand{padding:0 1.5rem 1.5rem;border-bottom:1px solid rgba(255,255,255,0.15);margin-bottom:1rem}.admin-sidebar__brand a{color:white;text-decoration:none;font-family:"Stardew Valley", sans-serif;font-size:1.75rem}.admin-sidebar__brand-tag{display:block;color:#7e9ee5;font-size:0.85rem;letter-spacing:0.1em;text-transform:uppercase;margin-top:0.25rem}.admin-sidebar__nav{list-style:none;margin:0;padding:0;flex:1}.admin-sidebar__link{display:block;padding:0.75rem 1.5rem;color:#cfe0ff;text-decoration:none;border-left:3px solid transparent}.admin-sidebar__link:hover{background:rgba(255,255,255,0.08);color:white}.admin-sidebar__link--current{color:white;font-weight:600;border-left-color:#4ade80;background:rgba(255,255,255,0.08)}.admin-sidebar__footer{border-top:1px solid rgba(255,255,255,0.15);padding-top:1rem}.admin-sidebar__footer .admin-sidebar__link{padding:0.5rem 1.5rem;font-size:0.9rem}.admin-content{flex:1;min-width:0;padding:2rem 2.5rem}.admin-page-title{font-family:"Stardew Valley", sans-serif;font-size:2.5rem;color:#1e3a5f;margin:0 0 0.75rem}.admin-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}@media (max-width: 800px){.admin-shell{flex-direction:column}.admin-sidebar{width:100%;flex-direction:row;align-items:center;padding:0.75rem 1rem;flex-wrap:wrap}.admin-sidebar__brand{padding:0;border-bottom:none;margin:0 1rem 0 0}.admin-sidebar__nav{display:flex;flex:1}.admin-sidebar__link{padding:0.5rem 0.75rem;border-left:none;border-bottom:3px solid transparent}.admin-sidebar__link--current{border-left-color:transparent;border-bottom-color:#4ade80}.admin-sidebar__footer{border-top:none;padding-top:0;display:flex}.admin-content{padding:1.5rem}}.admin-card{background:white;border-radius:0.75rem;border:1px solid #e6ddc9;box-shadow:0 1px 3px rgba(0,0,0,0.06);padding:1.25rem 1.5rem}.admin-stats{display:flex;gap:1.25rem;margin-bottom:1.5rem}.admin-stat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.5rem}.admin-stat__value{font-family:"Stardew Valley", sans-serif;font-size:2.5rem;color:#1e3a5f;line-height:1}.admin-stat__label{margin-top:0.5rem;font-size:0.9rem;color:#777;text-transform:uppercase;letter-spacing:0.05em}.admin-charts{display:flex;flex-wrap:wrap;gap:1.25rem}.admin-chart-card{flex:1 1 320px;min-width:0}.admin-card__title{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#1e3a5f}.admin-chart-card__canvas-wrap{position:relative;height:220px}@media (max-width: 480px){.admin-stats{flex-direction:column}}.admin-table{width:100%;border-collapse:collapse;background:white;border-radius:0.75rem;overflow:hidden;border:1px solid #e6ddc9;box-shadow:0 1px 3px rgba(0,0,0,0.06)}.admin-table th,.admin-table td{text-align:left;padding:0.75rem 1rem;font-size:0.95rem}.admin-table thead{background:#1e3a5f}.admin-table thead th{color:white;font-weight:600;font-size:0.85rem;text-transform:uppercase;letter-spacing:0.03em}.admin-table tbody tr:not(:last-child){border-bottom:1px solid #eee2cc}.admin-table tbody tr:hover{background:#faf6ea}.admin-table a{color:#3a5a9e}.admin-table__actions{display:flex;align-items:center;gap:0.9rem;white-space:nowrap}.admin-icon-link{display:inline-flex;color:#6b7280}.admin-icon-link svg{width:15px;height:15px;fill:currentColor}.admin-icon-link:hover{color:#1e3a5f}.admin-icon-link--danger:hover{color:#c0392b}.admin-badge{display:inline-block;padding:0.15rem 0.6rem;border-radius:999px;font-size:0.8rem;font-weight:600;background:#e0e7ff;color:#3a5a9e}.admin-badge--admin{background:#dcfce7;color:#16803c}.admin-detail-list{background:white;border-radius:0.75rem;border:1px solid #e6ddc9;box-shadow:0 1px 3px rgba(0,0,0,0.06);padding:1.5rem;margin:0 0 1.5rem;display:grid;grid-template-columns:max-content 1fr;gap:0.75rem 1.5rem}.admin-detail-list dt{font-weight:600;color:#777}.admin-detail-list dd{margin:0}.admin-detail-list dd ul{margin:0;padding-left:1.25rem}@media (max-width: 800px){.admin-table{display:block;overflow-x:auto}}.admin-form-field{display:flex;flex-direction:column;gap:0.35rem;margin-bottom:1.25rem;max-width:420px}.admin-form-field label{font-weight:600;font-size:0.9rem;color:#1e3a5f}.admin-form-field input,.admin-form-field select{padding:0.6rem 0.75rem;border:1px solid #ccc;border-radius:0.4rem;font-size:1rem;font-family:inherit}.admin-form-field input:focus,.admin-form-field select:focus{outline:none;border-color:#7e9ee5;box-shadow:0 0 0 3px rgba(126,158,229,0.25)}.admin-form-errors{background:#fde8e8;border:1px solid #f5b5b5;border-radius:0.5rem;padding:1rem 1.25rem;margin-bottom:1.5rem;color:#9b2c2c}.admin-form-errors h2{font-size:1rem;margin:0 0 0.5rem}.admin-form-errors ul{margin:0;padding-left:1.25rem}.admin-form-actions{display:flex;gap:0.75rem;margin-top:1.5rem}.admin-button{display:inline-block;background:#1e3a5f;color:white;border:none;border-radius:0.5rem;padding:0.6rem 1.25rem;font-size:0.95rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color 0.15s ease}.admin-button:hover{background:#2c4f80;color:white}.admin-button--secondary{background:transparent;color:#1e3a5f;border:1px solid #ccc}.admin-button--secondary:hover{background:#f4efe3;color:#1e3a5f}
