.anitrack{gap:16px;display:grid}.anitrack__header{grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:20px;display:grid}.anitrack__header>button{grid-column:3;justify-self:end}.anitrack__title{grid-column:2;margin:0}.anitrack__list--grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px 22px;margin:0;display:grid}.anitrack__list--list{flex-direction:column;gap:16px;display:flex}.anitrack__controls-panel{row-gap:16px;display:grid}.anitrack__controls-panel-wrapper{justify-content:space-between;align-items:center;gap:16px;display:flex}.anitrack__controls-panel-wrapper>*{flex:1}.anitrack__controls-panel-wrap{align-items:center;gap:16px;display:flex}.anitrack__controls-panel-view{flex-shrink:0;justify-content:end;gap:6px;display:flex}.anitrack__controls-panel-view button{flex-shrink:0}.anitrack__counter{margin-block:8px 0;font-size:12px}@media (width<=768px){.anitrack__header{margin-bottom:10px}.anitrack__header>button{z-index:180;width:40px;height:40px;position:fixed;bottom:30px;right:30px}.anitrack__header>button span{display:none}.anitrack__list--grid{grid-template-columns:1fr;gap:8px}.anitrack__list--list{gap:8px}}.anime-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-card);transition-duration:.2s;position:relative}.anime-card--list.anime-card{flex-direction:row-reverse;justify-content:space-between;display:flex}.anime-card--list.anime-card .anime-card__poster{flex-shrink:0;width:200px;height:100px}.anime-card--list.anime-card .anime-card__poster img{border-radius:0 var(--radius) var(--radius) 0}.anime-card--list.anime-card .anime-card__content{width:100%}@media (hover:hover){.anime-card:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-hover)}.anime-card:hover .anime-card__overlay{opacity:0}}.anime-card__header{justify-content:space-between;gap:16px;display:flex}.anime-card__rating{white-space:nowrap}.anime-card__name{text-align:left;margin-bottom:0;font-size:18px}.anime-card__delete{z-index:100;color:var(--color-text);filter:drop-shadow(0 1px 2px #00000026);background:#ffffffe6;width:40px;height:40px;font-size:20px;position:absolute;top:12px;right:10px}.anime-card__status,.anime-card__rating{font-weight:600}.anime-card__status span,.anime-card__rating span{font-weight:400}.anime-card__content{gap:10px;padding:16px;display:grid}.anime-card__poster{height:150px;position:relative;overflow:hidden}.anime-card__poster img{object-fit:cover;object-position:center 25%;border-radius:var(--radius) var(--radius) 0 0;width:100%;height:100%}.anime-card__overlay{pointer-events:none;mix-blend-mode:soft-light;background:#ff96c859;width:100%;height:100%;transition-duration:.2s;position:absolute;inset:0}.anime-card__badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}@media (width<=768px){.anime-card__header{justify-content:start;align-items:start}.anime-card--list.anime-card .anime-card__poster{z-index:0;border-radius:var(--radius);width:100%;height:100%;position:absolute;top:0;right:0}.anime-card--list.anime-card .anime-card__poster img{filter:saturate(.8);border-radius:var(--radius)}.anime-card--list.anime-card .anime-card__poster:after{content:"";border-radius:var(--radius);background:linear-gradient(90deg,#fffffff2 0%,#ffffffd9 55%,#ffffff40 100%);position:absolute;inset:0}.anime-card--list.anime-card .anime-card__content{z-index:50;padding-right:50px;position:relative}.anime-card--grid.anime-card .anime-card__poster{height:100px}.anime-card__delete{width:32px;height:32px}}.badge{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.22rem .62rem;font-size:.65rem;font-weight:600;line-height:1;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.badge--success{color:#4f8c63;background:#edf8ef;border-color:#cfe8d5}.badge--info{background:var(--color-bg-secondary);color:var(--color-primary-dark);border-color:var(--color-border)}.badge--warning{color:#b77a2d;background:#fff5e7;border-color:#f5ddb3}.badge--danger{color:#b95b6c;background:#fdecef;border-color:#f3c7d1}.badge--default{background:var(--color-bg-secondary);color:var(--color-text-secondary);border-color:var(--color-border)}.badge--type{color:#5b6da8;background:#eef4ff;border-color:#d8e3fb}.badge--genre{color:#7d63a7;background:#f6efff;border-color:#e3d6f7}.confirm-dialog{width:min(300px,90vw)}.confirm-dialog__close{cursor:pointer;font-size:20px;position:absolute;top:12px;right:12px}.confirm-dialog__message{text-align:center}.confirm-dialog__actions{justify-content:center;column-gap:6px;display:flex}.search-form{width:100%;position:relative}.search-form svg{color:var(--color-primary);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-form input{padding-left:40px}.filters{position:relative}.filters__panel{z-index:150;background-color:var(--color-surface);border-radius:var(--radius);row-gap:5px;width:200px;padding:10px;display:grid;position:absolute;top:calc(100% + 4px);left:0}@media (width<=768px){.filters__toggle span{display:none}.filters__panel{transform:translate(-35%)}}.anime-card-skeleton{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:1rem}.anime-card-skeleton__title,.anime-card-skeleton__line{background:var(--color-bg-secondary);border-radius:var(--radius-sm);position:relative;overflow:hidden}.anime-card-skeleton__title:after,.anime-card-skeleton__line:after{content:"";background:linear-gradient(90deg,#0000,#fffc,#0000);animation:1.5s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.anime-card-skeleton__title{height:24px;margin-bottom:1rem}.anime-card-skeleton__line{height:16px;margin-bottom:.5rem}.anime-card-skeleton__line.short{width:60%}@keyframes shimmer{to{transform:translate(100%)}}.add-anime-dialog{width:min(600px,90vw)}.add-anime-dialog__close{cursor:pointer;font-size:20px;position:absolute;top:12px;right:12px}.anime-form{gap:16px;display:grid}.anime-form select,.anime-form input,.anime-form textarea{width:100%}.anime-form__wrapper{gap:16px;display:flex}.anime-form__column{flex-direction:column;flex:0 0 calc(40% - 8px);row-gap:16px;display:flex}.anime-form__item{width:100%;position:relative}.anime-form__error{position:absolute;bottom:0;left:0;transform:translateY(100%)}.anime-form__preview{border-radius:var(--radius);width:160px}.anime-form__counter{font-size:12px}.anime-form__textarea{width:100%}.anime-form__textarea textarea{height:calc(100% - 20px)}@media (width<=768px){.anime-form{gap:10px}.anime-form__wrapper{flex-direction:column;gap:10px}}.rating-input{justify-content:center;column-gap:4px;display:flex}.rating-input button{flex-shrink:0}.rating-input__emoji{opacity:.3;transition:all .2s}.rating-input__emoji--active{opacity:1}.upload-area{border-radius:var(--radius);text-align:center;cursor:pointer;border:2px dashed #ccc;min-height:70px;padding:10px;position:relative}.upload-area__body{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.upload-area__body--dragging{border-color:var(--color-accent);background:#ffc0cb26}.upload-area__preview{object-fit:contain;border-radius:var(--radius);width:200px;height:auto}.upload-area__remove{width:32px;height:32px;position:absolute;top:15px;right:15px}@media (width<=768px){.upload-area{padding:10px}.upload-area__remove{top:5px;right:0}}.toast{border-radius:var(--radius);color:var(--color-surface);box-shadow:var(--shadow-card);padding:12px 16px;font-size:14px;animation:.2s toastIn;position:fixed;bottom:20px;right:20px}.toast--success{background:var(--color-success)}.toast--error{background:var(--color-error)}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.sort{max-width:110px}.pagination{justify-content:center;gap:4px;padding-top:20px;display:flex}.anime-details{row-gap:16px;display:grid}.anime-details__wrapper{background-color:var(--color-surface);border-radius:var(--radius);align-items:flex-start;gap:16px;padding:30px;display:flex}.anime-details__content{width:100%}.anime-details__rating{margin-bottom:20px}.anime-details__title{text-align:left;margin-bottom:5px}.anime-details__poster{flex-shrink:0;width:100%;max-width:280px;max-height:500px;overflow:hidden}.anime-details__poster img{border-radius:var(--radius);width:100%;height:auto;box-shadow:var(--shadow-card)}.anime-details__header{justify-content:space-between;gap:16px;display:flex}.anime-details__badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.anime-details__note{overflow-wrap:anywhere;max-width:100%}@media (width<=768px){.anime-details{row-gap:10px}.anime-details__wrapper{flex-direction:column}.anime-details__poster{margin:0 auto}}.rating{font-weight:700}:root{--color-bg:#fff8fa;--color-bg-secondary:#fff2f6;--color-surface:#fff;--color-primary:#e88aa0;--color-primary-light:#f7b7c3;--color-primary-dark:#d86f88;--color-success:#9bcf9b;--color-error:#d95d6f;--color-warning:#f6c177;--color-favorite:#ff7ba9;--color-text:#3d3d3d;--color-text-secondary:#7a7a7a;--color-text-muted:#a0a0a0;--color-border:#f3d6df;--color-border-hover:#eab4c2;--shadow-card:0 8px 20px #e88aa01f;--shadow-hover:0 12px 28px #e88aa02e;--radius:12px;--radius-sm:6px}@font-face{font-family:Noto Sans JP;src:url(/assets/NotoSansJP-Regular-BPcEjQkM.ttf)format("ttf");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans JP;src:url(/assets/NotoSansJP-Medium-BbzHqs6W.ttf)format("ttf");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Noto Sans JP;src:url(/assets/NotoSansJP-Bold-utV2OrD5.ttf)format("ttf");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Zen Maru Gothic;src:url(/assets/ZenMaruGothic-Regular-BY0O8It-.ttf)format("ttf");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Zen Maru Gothic;src:url(/assets/ZenMaruGothic-Medium-CSDg34F-.ttf)format("ttf");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Zen Maru Gothic;src:url(/assets/ZenMaruGothic-Bold-CB3WBOdI.ttf)format("ttf");font-weight:700;font-style:normal;font-display:swap}html *{box-sizing:border-box}html body{padding:100px 30px;font-family:Zen Maru Gothic,sans-serif}@media (width<=768px){html body{padding:0}}html :focus,html :focus-visible{outline:2px dashed var(--color-primary-dark);outline-offset:2px}html mark{background-color:var(--color-success)}html h1{color:var(--color-text);text-align:center;margin:0}@media (width<=768px){html h1{font-size:24px}}html h2{text-align:center;margin:0 0 5px}html ul,html ol{padding:0;list-style:none}html a{color:var(--color-text);text-decoration:none}html button,html .button{background:var(--color-primary);color:#fff;cursor:pointer;border-radius:var(--radius);border:none;justify-content:center;align-items:center;column-gap:6px;padding:7px 10px;font-size:18px;transition-duration:.2s;display:flex}html button:active,html .button:active{border-color:var(--color-surface);scale:1.1}html button:disabled,html .button:disabled{opacity:.4}@media (hover:hover){html button:hover,html .button:hover{background:var(--color-primary-dark)}}html button--with-icon,html .button--with-icon{width:35px;height:35px;color:var(--color-text);background:0 0;border:none;padding:0;font-size:18px}@media (hover:hover){html button--with-icon:hover,html .button--with-icon:hover{color:var(--color-primary-dark);background:0 0}}html button--danger,html .button--danger{background-color:var(--color-error)}html button.is-active,html .button.is-active{background:var(--color-primary);border-color:var(--color-surface);color:var(--color-surface)}html input,html select,html textarea{box-sizing:border-box;background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius);width:100%;padding:10px 14px;font-family:Zen Maru Gothic,sans-serif;font-size:16px}html input.is-error,html select.is-error,html textarea.is-error{border:2px solid var(--color-error)}html select{padding:10px;font-size:14px}html textarea{resize:vertical;min-height:60px}html dialog{border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-card);opacity:0;transform-origin:50%;border:none;margin:auto;padding:3rem 1.5rem 1.5rem;transition:all .2s;position:fixed;inset:0;transform:scale(.95)}html dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009}html dialog.is-open{opacity:1;transform:scale(1)}html .page{background:radial-gradient(circle at top left, #ffe2ec 0%, transparent 45%), radial-gradient(circle at bottom right, #fff0f6 0%, transparent 50%), var(--color-bg);width:100%;max-width:780px;color:var(--color-text);border-radius:var(--radius);box-shadow:var(--shadow-card);background-size:200% 200%;margin:0 auto;padding:40px;animation:20s infinite gradientMove;position:relative}@media (width<=768px){html .page{padding:20px}}@keyframes gradientMove{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}html .error{color:var(--color-error);font-size:12px}html .spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}html .loading{text-align:center;margin:0 auto}
