:root{--bg:#f8f6fa;--surface:#fff;--dark:#2e2433;--muted:#857c8b;--purple:#745283;--deep:#4c365c;--lavender:#eee7f3;--line:#eeeaf0;--rose:#eac9d6;--mint:#d8eee3;--mint-dark:#4f9778;--orange:#f4b58d;--shadow:0 10px 35px rgba(77,50,87,.045)}
*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent}body{margin:0;background:var(--bg);color:var(--dark);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:15px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:var(--purple)}[hidden]{display:none!important}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d3afd6;outline-offset:2px}
.app-shell{display:flex;min-height:100vh}.sidebar{width:247px;flex:none;background:#fcfbfd;border-right:1px solid var(--line);padding:33px 21px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:10px;align-items:center;padding:0 7px 39px}.brand b,.mobile-brand b{font-size:21px;letter-spacing:-.8px;color:var(--deep);font-weight:800}.brand small{display:block;margin-top:4px;font-size:10px;color:#a99ba9;letter-spacing:.1px}.brand-icon{width:34px;height:34px;background:var(--deep);color:white;border-radius:12px;display:grid;place-items:center;font-size:25px;flex-shrink:0;font-weight:400}.desktop-nav{display:grid;gap:7px}.nav-link,.bottom-link{border:0;background:transparent;text-align:left;color:#938697;font-weight:600}.nav-link{padding:15px 14px;border-radius:14px;display:flex;gap:14px;align-items:center;font-size:14px}.nav-link span{font-size:21px;font-weight:400;line-height:1}.nav-link.active{background:#f0eaf4;color:#5b3d6d}.nav-link:hover{background:#f4eff7}.sidebar-footer{font-size:11px;color:#a59daa;display:flex;align-items:center;gap:9px;margin-top:auto;padding:12px}.footer-dot{display:inline-block;width:8px;height:8px;background:#98cbb0;border-radius:50%}.app-content{flex:1;min-width:0}.topbar{height:85px;display:flex;align-items:center;justify-content:flex-end;padding:0 42px;border-bottom:1px solid #f0ebf2;background:#fcfafd7d}.topbar-right{display:flex;align-items:center;gap:21px}.private-mark{font-size:12px;color:#8a748f}.icon-button{width:37px;height:37px;border:1px solid var(--line);background:white;border-radius:12px;color:#745283;font-size:20px}.mobile-brand{display:none;align-items:center;gap:9px}.main-content{max-width:1170px;padding:38px 43px 90px;margin:auto;min-height:calc(100vh - 86px)}.eyebrow{letter-spacing:2.4px;font-size:10px;font-weight:900;color:#ad7d9c}.section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:25px}.section-header h1{font-size:35px;line-height:1.16;letter-spacing:-1.7px;color:#3a2c41;margin:6px 0 9px;font-weight:800}.section-header p{margin:0;color:#9e94a2;line-height:1.6;font-size:14px}.date-controls{display:flex;align-items:center;background:#fff;border:1px solid var(--line);padding:6px;border-radius:15px;gap:4px;white-space:nowrap}.date-controls button{height:34px;min-width:35px;background:#f8f5fa;border:0;border-radius:10px;color:#654870;font-size:21px}.date-controls .date-button{font-size:12px;font-weight:700;color:#5d5063;padding:0 8px;background:white;min-width:105px}.date-field{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.welcome-panel{background:linear-gradient(117deg,#5d3e70,#8a638f 72%,#9d7493);color:white;border-radius:23px;padding:26px 29px;display:flex;justify-content:space-between;align-items:center;margin-bottom:27px;position:relative;overflow:hidden;min-height:140px}.welcome-panel:after{content:'✳';font-size:190px;position:absolute;right:8%;top:-53px;color:#ffffff15;line-height:1;pointer-events:none}.welcome-panel .tiny{font-size:11px;text-transform:uppercase;letter-spacing:1.8px;color:#eadde9;font-weight:800}.welcome-panel h2{font-size:23px;letter-spacing:-.6px;margin:9px 0 7px;position:relative;z-index:1}.welcome-panel p{margin:0;color:#f4e7f0;opacity:.94;font-size:12px;position:relative;z-index:1}.ring{display:grid;place-items:center;flex-shrink:0;width:92px;height:92px;background:conic-gradient(#f2d2df var(--progress,0%),#ffffff37 0);border-radius:50%;position:relative;z-index:1}.ring:before{content:'';position:absolute;inset:9px;border-radius:50%;background:#70507e}.ring div{position:relative;z-index:1;text-align:center}.ring strong{display:block;font-size:28px}.ring small{font-size:10px;color:#f4dfed}.subheading-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:27px 0 15px}.subheading-row h2{font-size:20px;letter-spacing:-.6px;margin:0}.subheading-row span{font-size:12px;color:#a399a6}.habit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.habit-card{background:var(--surface);padding:18px 18px 20px;border:1px solid #eee9ef;border-radius:20px;box-shadow:var(--shadow);transition:border-color .2s,transform .2s}.habit-card.done{border-color:#bddecc;background:#fefffe}.card-title-row{display:flex;align-items:center;gap:11px;min-height:43px}.habit-emoji{height:42px;width:42px;display:grid;place-items:center;background:#f5eef8;border-radius:14px;font-size:22px;flex-shrink:0}.habit-card[data-habit='sport'] .habit-emoji{background:#f5e8f3}.habit-card[data-habit='reading'] .habit-emoji{background:#f4eddd}.habit-card[data-habit='food'] .habit-emoji{background:#eaf4e8}.habit-card[data-habit='skincare'] .habit-emoji{background:#f5e7ee}.habit-card[data-habit='video'] .habit-emoji{background:#e8eef7}.habit-card[data-habit='thesis'] .habit-emoji{background:#efecfa}.habit-card[data-habit='work'] .habit-emoji{background:#fff0e8}.card-info{min-width:0;flex:1}.card-info h3{font-size:14px;font-weight:800;margin:0 0 4px;letter-spacing:-.2px}.card-info p{font-size:11px;line-height:1.35;color:#a299a6;margin:0}.status-pill{border-radius:100px;background:#f5f1f5;color:#a49ba5;font-size:10px;padding:5px 9px;white-space:nowrap;font-weight:700}.habit-card.done .status-pill{background:#e2f2e7;color:#4f9470}.field-row{display:flex;align-items:center;gap:10px;margin-top:19px;min-height:40px}.value-input{border:1px solid #eee9f0;border-radius:12px;background:#fbfafc;width:102px;font-size:21px;font-weight:750;padding:10px 11px;height:48px;color:#4d3a59}.field-unit{font-size:12px;color:#948897}.quick-button{margin-left:auto;border:0;padding:9px 12px;background:#f1eaf3;border-radius:11px;color:#715181;font-weight:800;font-size:12px;white-space:nowrap}.quick-button:hover{background:#e7dce9}.switch-row{display:flex;align-items:center;justify-content:space-between;margin-top:19px;gap:10px}.switch-copy{font-size:12px;color:#807486}.switch{appearance:none;width:48px;height:28px;background:#ded6e0;border-radius:50px;position:relative;flex:none;outline-offset:3px;cursor:pointer;transition:background .2s}.switch:checked{background:#7fba9a}.switch:before{content:'';position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:white;box-shadow:0 2px 5px #0001;transition:transform .2s}.switch:checked:before{transform:translateX(20px)}.food-buttons{display:flex;gap:5px;justify-content:space-between;margin-top:18px}.food-choice{width:45px;height:42px;flex:1;max-width:58px;border:1px solid #efe8f0;border-radius:12px;background:#fbfafc;color:#928599;font-size:15px;font-weight:800}.food-choice.active{background:#705080;color:white;border-color:#705080}.food-guide{margin:10px 0 0;font-size:11px;color:#aaa1ab}.video-extra{display:flex;gap:8px;margin-top:13px}.small-select,.small-text{min-width:0;width:100%;border:1px solid #eee8ef;border-radius:11px;background:#fbfafc;padding:10px 9px;color:#514557;font-size:12px}.small-select{width:42%}.small-text{width:58%}.under-card{color:#93899a;font-size:11px;margin-top:12px}.note-panel{border:1px solid #eee9ef;background:#fff;padding:21px;border-radius:20px;margin-top:18px}.note-panel label{display:block;font-weight:800;font-size:14px;margin-bottom:10px}.note-panel textarea{width:100%;height:76px;resize:vertical;border:1px solid #eee9ef;border-radius:14px;background:#fcfbfd;padding:13px;color:#4b3d53;font-size:13px;line-height:1.5}.save-footer{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-top:17px}.save-state{font-size:12px;color:#9f94a3}.primary-button{border:0;background:#654773;color:white;border-radius:13px;padding:13px 19px;font-weight:800;font-size:13px;box-shadow:0 4px 14px #6a4d7428}.primary-button:hover{background:#52365f}.ghost-button{border:1px solid #e5dce8;background:white;color:#695174;border-radius:12px;padding:11px 16px;font-size:12px;font-weight:700}.ghost-button:hover{background:#f9f5fa}.stat-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:25px}.stat-tile{background:#fff;border:1px solid var(--line);border-radius:19px;padding:20px 18px;min-width:0}.stat-tile .tile-icon{font-size:23px;margin-bottom:16px}.stat-tile h3{font-size:26px;margin:0 0 4px;color:#59426a;letter-spacing:-.8px}.stat-tile p{color:#9c91a0;font-size:11px;margin:0;line-height:1.4}.stat-tile small{color:#765e7f;font-size:11px;display:block;margin-top:6px}.panel{background:white;border:1px solid var(--line);border-radius:22px;padding:25px;box-shadow:var(--shadow);margin-bottom:20px}.panel-header{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:21px}.panel-header h2{font-size:17px;letter-spacing:-.3px;margin:0}.panel-header small{font-size:11px;color:#9b8e9d}.weeks-chart{height:185px;display:flex;align-items:stretch;gap:14px;justify-content:space-between}.week-bar-wrap{display:flex;flex-direction:column;flex:1;min-width:0;align-items:center;gap:9px}.week-bar-column{width:100%;height:152px;display:flex;align-items:flex-end;justify-content:center;background:repeating-linear-gradient(to top,#f5f1f7 0 1px,transparent 1px 38px);border-radius:7px}.week-bar{width:63%;min-height:3px;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,#bf9dc6,#795586);transition:height .25s}.week-bar-wrap small{font-size:11px;color:#a597a6}.analytics-two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:17px}.progress-row{display:grid;grid-template-columns:1fr auto;gap:10px;margin:16px 0}.progress-label{font-size:12px;color:#665b6b;font-weight:650}.progress-number{font-size:12px;font-weight:750;color:#745385}.progress-track{grid-column:1/-1;height:7px;background:#f2ecf4;border-radius:20px;overflow:hidden}.progress-fill{height:100%;background:#9e7aaa;border-radius:20px}.pill-group{display:flex;gap:5px;border:1px solid #eae5ed;background:white;padding:4px;border-radius:14px;align-self:start}.pill-group button{border:0;background:transparent;border-radius:10px;color:#95889b;padding:9px 13px;font-size:11px;font-weight:800}.pill-group button.active{background:#6f527c;color:white}.topic-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #f5f1f5;font-size:12px}.topic-row:last-child{border:0}.topic-count{display:inline-flex;border-radius:11px;padding:4px 10px;background:#f3edf6;color:#70517f;font-weight:750}.month-tools{display:flex;gap:10px;align-items:center}.month-label{font-size:15px;font-weight:800;min-width:150px;text-align:center;color:#51415a}.month-button{background:#fff;border:1px solid #eee7ef;width:35px;height:35px;border-radius:11px;color:#755782;font-size:19px}.calendar-panel{padding:24px 23px 28px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.weekday{text-align:center;font-size:10px;letter-spacing:1px;font-weight:900;color:#aaa0ad;padding-bottom:10px}.day-cell{min-width:0;aspect-ratio:1/1;background:#fbf9fc;border:1px solid #f5f1f5;border-radius:15px;color:#706477;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.day-cell:not(:disabled):hover{border-color:#b89ac2;background:#faf5fb}.day-cell.blank{background:none;border:0}.day-cell.future{opacity:.3}.day-cell.marked{background:#efe6f3;border-color:#e4d5ea;color:#583a69}.day-cell.selected{outline:2px solid #8c6a99;outline-offset:2px}.day-cell strong{font-size:13px}.calendar-dots{height:6px;display:flex;gap:3px}.calendar-dots i{width:5px;height:5px;border-radius:50%;background:#a283b0}.calendar-dots i:nth-child(2){background:#8fbfa7}.calendar-dots i:nth-child(3){background:#eab5c4}.month-summary{display:flex;gap:20px;flex-wrap:wrap;margin-top:23px;padding-top:19px;border-top:1px solid #f0eaf2}.month-summary b{color:#5b3f69}.month-summary span{color:#9c90a0;font-size:12px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.goal-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #f4eff4}.goal-row:last-child{border:0}.goal-row .goal-title{font-weight:750;font-size:13px}.goal-row .goal-sub{font-size:11px;color:#a89da9;margin-top:4px}.goal-row input{width:65px;border:1px solid #eae2ed;border-radius:10px;padding:9px 10px;text-align:center;font-size:15px;font-weight:750;color:#5a3f68}.setting-help{font-size:12px;line-height:1.65;color:#958a9a;margin:0 0 13px}.settings-button-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}.file-input{display:none}.toast{position:fixed;right:23px;bottom:26px;background:#45354e;color:#fff;box-shadow:0 12px 45px #3a264657;border-radius:12px;padding:13px 17px;z-index:100;opacity:0;transform:translateY(9px);pointer-events:none;transition:.2s;font-size:12px;max-width:310px}.toast.visible{opacity:1;transform:none}.login-page{min-height:100vh;background:#f9f6fa;position:relative;display:grid;place-items:center;padding:35px 18px;overflow:hidden}.login-bg-shape{position:absolute;border-radius:50%;filter:blur(1px)}.shape-a{width:520px;height:520px;background:#eee1f0;top:-310px;left:-180px}.shape-b{width:370px;height:370px;background:#f3e4ee;bottom:-220px;right:-140px}.login-card{position:relative;z-index:1;background:white;border:1px solid #eee8f0;box-shadow:0 24px 80px #63526a18;border-radius:27px;width:100%;max-width:430px;padding:39px 39px 27px}.login-symbol{display:inline-grid;place-items:center;background:#755484;border-radius:16px;width:53px;height:53px;color:white;font-size:36px;margin-bottom:21px}.login-card h1{font-size:42px;line-height:1;letter-spacing:-2.2px;color:#4f3b5c;margin:11px 0 16px}.login-card h1 span{color:#d599bb}.login-card p{color:#918696;font-size:13px;line-height:1.7;margin:0 0 27px}.login-card label{display:block;font-size:12px;color:#5f5066;font-weight:800;margin:15px 0 8px}.login-card input{height:48px;border:1px solid #e9e2eb;border-radius:12px;background:#fcfbfd;width:100%;padding:12px;color:#4e3d5b}.login-card .login-error{font-size:12px;color:#bd566c;margin:13px 0 0}.login-button{width:100%;height:48px;display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding:0 16px}.login-button span{font-size:22px}.login-caption{text-align:center;font-size:11px;color:#b0a5b3;margin-top:29px}.startup{position:fixed;inset:0;background:#f7f4f8;display:flex;align-items:center;justify-content:center;gap:10px;color:#654572;font-weight:850;font-size:23px;z-index:200}.startup:first-letter{font-size:39px}.empty-hint{color:#a59aaa;font-size:12px;padding:20px 0}.footer-note{color:#a99bac;font-size:11px;line-height:1.6;margin-top:13px}.bottom-nav{display:none}
@media(max-width:1090px){.main-content{padding:32px 30px 80px}.sidebar{width:207px;padding:30px 13px}.stat-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-two-col{grid-template-columns:1fr}.topbar{padding:0 30px}}
@media(max-width:700px){.sidebar{display:none}.app-shell{display:block}.topbar{height:62px;padding:0 18px;justify-content:space-between}.mobile-brand{display:flex}.mobile-brand .brand-icon{width:29px;height:29px;font-size:21px;border-radius:10px}.mobile-brand b{font-size:18px}.topbar-right{gap:8px}.private-mark{font-size:10px}.icon-button{width:33px;height:33px}.main-content{padding:27px 16px calc(115px + env(safe-area-inset-bottom));min-height:calc(100vh - 62px)}.section-header{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:20px}.section-header h1{font-size:29px;margin:6px 0 6px}.section-header p{font-size:12px}.date-controls{align-self:stretch;justify-content:space-between;padding:5px;width:100%}.date-controls .date-button{flex:1}.welcome-panel{border-radius:20px;padding:20px;min-height:128px;margin-bottom:23px}.welcome-panel h2{font-size:18px;max-width:225px}.welcome-panel p{font-size:11px;max-width:210px;line-height:1.4}.welcome-panel .tiny{font-size:9px}.welcome-panel:after{font-size:140px;top:-34px;right:0}.ring{width:74px;height:74px}.ring:before{inset:8px}.ring strong{font-size:23px}.ring small{font-size:9px}.habit-grid{grid-template-columns:1fr;gap:12px}.habit-card{padding:16px 17px;border-radius:18px}.subheading-row{margin-top:21px}.subheading-row h2{font-size:18px}.stat-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-tile{padding:15px 14px}.stat-tile .tile-icon{margin-bottom:10px}.stat-tile h3{font-size:23px}.panel{padding:20px 17px;border-radius:19px}.weeks-chart{gap:6px}.week-bar-wrap small{font-size:9px}.pill-group{width:100%;justify-content:space-around}.pill-group button{padding:9px 11px}.settings-grid{grid-template-columns:1fr}.calendar-panel{padding:17px 12px 23px}.calendar-grid{gap:5px}.day-cell{border-radius:11px}.day-cell strong{font-size:12px}.month-tools{width:100%;justify-content:space-between}.month-label{min-width:auto}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:calc(69px + env(safe-area-inset-bottom));padding:6px 8px env(safe-area-inset-bottom);justify-content:space-around;background:#ffffffed;backdrop-filter:blur(15px);border-top:1px solid #eee7f0;z-index:80}.bottom-link{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;flex:1;border-radius:13px;color:#a395a7}.bottom-link span{font-size:24px;line-height:1.1}.bottom-link small{font-size:10px;margin-top:4px}.bottom-link.active{color:#6c4c7c;background:#f4eff7}.login-card{padding:32px 25px 25px}.login-card h1{font-size:36px}.save-footer{gap:8px}.save-footer .primary-button{padding:13px 15px}.toast{bottom:calc(82px + env(safe-area-inset-bottom));left:16px;right:16px;max-width:none;text-align:center}}
@media(min-width:701px) and (max-width:880px){.habit-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}

/* Мой ритм 2.0: спорт по видам, полка книг, задачи, настроение, награды */
:root{--glow:#f5edf7;--ink:#47384f}
.main-content{max-width:1190px}
.text-button{background:transparent;border:0;color:#725386;font-size:12px;font-weight:800;padding:7px 0}
.text-button:hover{text-decoration:underline}
.muted-text{color:#a397a8;font-size:11px;margin:10px 0}
.empty-inline{color:#a69ba9;font-size:12px;padding:11px 0;line-height:1.6;margin:0}
.legacy-note{font-size:11px;color:#998c9c;margin:9px 0}
.plan-ahead{background:#f0e9f5;border:1px solid #e2d3ee;border-radius:16px;padding:15px 18px;color:#6b5278;line-height:1.6;margin:10px 0 22px;font-size:13px}
.sport-card{grid-column:1/-1;padding-bottom:22px}
.sport-card .habit-emoji{background:#e4f2e9}
.status-pill.lavender{background:#ede4f3;color:#70517e}
.sport-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:19px}
.sport-item{border-radius:16px;background:#f9f7fa;border:1px solid #f0edf1;padding:14px 13px;min-width:0}
.sport-item:nth-child(1){background:#f5f3fa}
.sport-item:nth-child(2){background:#eff8f4}
.sport-item:nth-child(3){background:#f9f3ef}
.sport-item-title{font-size:13px;font-weight:850;color:#4d4155}
.sport-item-title small{display:block;font-size:10px;color:#a195a4;font-weight:500;margin-top:5px}
.track-toggle{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:16px;min-height:38px;cursor:pointer}
.track-toggle b{display:block;font-size:12px;line-height:1.4;color:#685a70;font-weight:650}
.track-toggle small{display:block;margin-top:4px;font-size:10px;color:#9a8e9c}
.mini-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:11px}
.mini-row>span{font-size:11px;color:#8f8394}
.field-row.small{margin:0;gap:5px;min-height:32px}
.field-row.small .value-input{height:36px;width:58px;font-size:14px;padding:8px;border-radius:9px}
.field-row.small .field-unit{font-size:10px}
.field-row.small .quick-button{margin-left:0;padding:9px 8px;font-size:11px}
.feelings-panel{margin:0 0 22px;background:#fff;box-shadow:var(--shadow)}
.feelings-two{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.feelings-two>div+div{border-left:1px solid var(--line);padding-left:24px}
.feelings-two h3{font-size:14px;margin:0 0 6px;letter-spacing:-.1px}
.feelings-two p{font-size:11px;margin:0 0 13px;color:#a397a8}
.moods{display:flex;gap:8px;align-items:center}
.mood-choice{display:grid;place-items:center;font-size:27px;background:#f8f4f9;border:1px solid transparent;border-radius:14px;width:47px;height:46px;transition:.17s;filter:saturate(.9)}
.mood-choice.active{border-color:#b18abe;background:#eee4f3;transform:translateY(-2px);box-shadow:0 4px 9px #76528712;filter:saturate(1.3)}
.smoked-choice{display:flex;flex-wrap:wrap;gap:7px}
.smoked-choice button{border:1px solid #ebe4ee;background:#fbf9fc;color:#847587;border-radius:11px;padding:11px 12px;font-size:11px;font-weight:750;min-height:39px}
.smoked-choice button.active{background:#e9dcf0;color:#604572;border-color:#af94bf}
.habit-vocal .habit-emoji{background:#f7e5f2}
.reading-list{display:grid;gap:0;margin:17px 0 3px}
.reading-row{display:grid;grid-template-columns:34px minmax(0,1fr) 80px;gap:10px;align-items:center;padding:8px 0;border-top:1px solid #f3eef4}
.reading-row:first-child{border-top:0}
.tiny-cover{height:46px;width:34px;border-radius:6px;background:#f1e7eb;display:grid;place-items:center;overflow:hidden;font-size:18px}
.tiny-cover img{height:100%;width:100%;object-fit:cover}
.reading-name{min-width:0}
.reading-name b{font-size:12px;color:#59475f;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reading-name small{color:#9b8c9d;display:block;margin-top:3px;font-size:10px}
.reading-value{display:grid;justify-items:center;gap:4px}
.reading-value input{width:76px;height:38px;border:1px solid #e9e1ec;border-radius:9px;font-size:16px;font-weight:700;text-align:center;background:#fbf8fd;color:#624d70}
.reading-value small{font-size:9px;color:#aba0ae}
.reading-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid #f2edf4}
.reading-footer b{font-size:12px;color:#695075}
.task-panel{margin-top:23px}
.task-panel .panel-header{margin-bottom:12px}
.task-panel .panel-header h2{margin-bottom:5px}
.task-counter{white-space:nowrap;color:#887492;background:#f6f1f7;font-size:11px;padding:8px 9px;border-radius:12px;font-weight:750}
.task-form{display:flex;gap:9px;margin:13px 0 18px}
.task-form input{flex:1;min-width:0;border:1px solid #ece5ef;border-radius:12px;background:#fbf9fc;padding:12px 14px;color:#4d3e56;font-size:13px}
.task-form .primary-button{white-space:nowrap;font-size:12px}
.task-list{display:grid;gap:9px}
.task-row{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #f0eaf2;border-radius:13px;background:#fcfafc}
.task-row.task-done{background:#f5fbf7;border-color:#dceee1}
.task-row.task-followup{background:#fcf8ed;border-color:#f6edda}
.task-check{width:30px;height:30px;border:1px solid #e6dae9;border-radius:10px;background:white;flex:none;color:#aa97b3;font-size:19px}
.task-check.is-done{background:#d2ebdb;color:#3b8b61;border-color:#b7ddc4}
.task-body{min-width:0;flex:1}
.task-text{width:100%;background:transparent;border:0;color:#5b5162;font-weight:650;line-height:1.3;padding:5px 0;font-size:13px}
.task-done .task-text{text-decoration:line-through;opacity:.65}
.task-bottom{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.task-status{color:#8c7396;border:0;background:#f4eef6;border-radius:8px;font-size:11px;padding:6px 8px;max-width:100%}
.task-followup .task-status{background:#f8e8cc;color:#8d6a39}
.followup-note{flex:1;min-width:150px;background:#fffdf6;color:#6f6551;border:1px solid #f0e4c8;border-radius:9px;padding:7px 9px;font-size:11px}
.task-remove{border:0;background:transparent;color:#c6b8c8;font-size:23px;line-height:1;padding:2px 6px}
.task-remove:hover{color:#ae5574}
.calendar-mood{font-size:18px;margin-top:3px}
.calendar-tasks{position:absolute;bottom:4px;right:6px;color:#8a648e;font-size:9px;font-weight:800}
.day-cell{position:relative;min-height:55px}
.day-cell.future{opacity:.8;background:#fff;border-style:dashed}
.day-cell.future.marked{background:#f9f2ec}
.day-cell[disabled]{opacity:.2}
.heatmap-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:repeat(7,1fr);grid-auto-flow:column;gap:7px}
.heat-cell{aspect-ratio:1/1;min-width:0;border:0;border-radius:6px;background:#f3eff3;display:block}
button.heat-cell:hover{outline:2px solid #886695;outline-offset:2px}
.heat-1{background:#efe0f1}.heat-2{background:#dbbfdf}.heat-3{background:#b18fbe}.heat-4{background:#7b5989}
.heatmap-legend{display:flex;align-items:center;gap:5px;margin-top:15px;color:#9e92a2;font-size:10px}
.heatmap-legend .heat-cell{width:16px;height:16px}
.moods-chart{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;height:165px}
.mood-col{display:flex;align-items:center;gap:7px;flex:1;flex-direction:column;color:#84748c}
.mood-col span{font-size:11px}.mood-col b{font-size:20px;font-weight:400}
.mood-track{height:110px;width:100%;max-width:37px;background:#f8f4f9;border-radius:9px;display:flex;align-items:flex-end;overflow:hidden}
.mood-fill{width:100%;background:linear-gradient(#ac84bd,#73518d);border-radius:9px;min-height:2px}
.mini-heading{font-size:12px;color:#ad99af;margin:19px 0 10px;letter-spacing:.2px}
.streak-line{display:grid;grid-template-columns:minmax(0,1fr) 70px 76px;align-items:center;gap:5px;padding:11px 0;border-bottom:1px solid #f6f2f7}
.streak-line span{font-size:11px;color:#665772}
.streak-line b{font-size:12px;color:#725381;white-space:nowrap;text-align:right}
.streak-line small{font-size:10px;color:#b19eaf;text-align:right}
.insight-line{margin:0 0 13px;padding:11px;background:#faf7fb;border-radius:11px;font-size:12px;line-height:1.5;color:#6b586f}
.topic-summary{margin-top:21px}
.topic-summary h3{font-size:13px;margin:0 0 7px}
.award-teaser{display:flex;gap:20px;justify-content:space-between;align-items:center;background:linear-gradient(107deg,#f9f4fb,#f3eaf3)}
.award-teaser h2{font-size:17px;margin:0 0 5px}
.award-teaser p{margin:0;color:#97879b;font-size:12px;line-height:1.6}
.award-teaser button{flex:none}
.book-form{display:grid;grid-template-columns:135px minmax(0,1fr);gap:21px;align-items:start}
.cover-upload{width:135px;height:170px;display:flex;align-items:stretch;cursor:pointer}
.cover-upload #cover-preview{background:linear-gradient(155deg,#ede5f0,#e0d6e5);width:100%;border:2px dashed #cab6d3;border-radius:13px;overflow:hidden;display:grid;place-items:center;color:#80638d}
.cover-upload #cover-preview>span{font-size:38px;text-align:center;line-height:1}
.cover-upload #cover-preview small{display:block;font-size:11px;margin-top:8px}
.cover-upload img{width:100%;height:100%;object-fit:cover}
.cover-upload input{display:none}
.book-form-fields{display:grid;gap:12px}
.book-form-fields label,.award-form label{display:flex;flex-direction:column;gap:7px;color:#77697f;font-size:12px;font-weight:750}
.book-form-fields input,.award-form input,.award-form select{border:1px solid #ede5ef;background:#fbf9fc;border-radius:11px;padding:12px;color:#524459;width:100%;min-height:43px;font-size:13px}
.form-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:4px}
.books-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:22px}
.book-card{background:#fff;border:1px solid #eee8f0;border-radius:19px;padding:16px;display:flex;gap:15px;min-width:0;box-shadow:var(--shadow)}
.book-cover{width:105px;min-height:150px;flex:none;background:#f2e7ed;border-radius:12px;overflow:hidden;display:grid;place-items:center}
.book-cover img{height:100%;width:100%;object-fit:cover;min-height:150px}
.book-placeholder{font-size:46px}
.book-body{min-width:0;flex:1}
.book-body h3{font-size:15px;margin:5px 0 8px;line-height:1.35;overflow-wrap:anywhere}
.book-body p{color:#9b8b9d;font-size:11px;line-height:1.4;margin:7px 0}
.book-status{font-size:9px;color:#9b7ca8;letter-spacing:1.1px;font-weight:900}
.book-finished .book-status{color:#5c9a77}
.star-rating{display:flex;margin-top:10px;gap:2px}
.star-rating button{color:#d69c5d;font-size:25px;border:0;background:none;padding:0 2px;line-height:1.3}
.book-actions{display:flex;align-items:center;gap:8px;margin-top:13px;flex-wrap:wrap}
.book-actions .ghost-button{font-size:11px;padding:9px 11px}
.book-actions .text-button{font-size:11px}
.tiny-danger{background:transparent;border:0;color:#c7bdc9;font-size:19px;padding:5px}
.awards-banner{margin-bottom:29px}
.big-award{font-size:64px;position:relative;z-index:1}
.badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:28px}
.badge{border:1px solid #eee5ef;background:white;text-align:center;padding:21px 12px;border-radius:19px;min-width:0}
.badge.locked{opacity:.65;background:#f9f7fa}
.badge.unlocked{border-color:#d7c3dd;background:linear-gradient(160deg,#fff,#f9f3fb)}
.badge-icon{font-size:31px;display:block;height:44px}
.badge h3{font-size:13px;color:#5c4b62;margin:7px 0}
.badge p{font-size:11px;line-height:1.5;min-height:33px;margin:0 0 14px;color:#aa9eac}
.badge-status{display:inline-block;padding:5px 9px;background:#f3edf6;border-radius:20px;font-size:10px;color:#8b7596}
.badge.unlocked .badge-status{background:#e5f4e9;color:#50926b}
.award-form{display:grid;grid-template-columns:90px 1fr 155px;gap:13px;align-items:end}
.award-form .wide{grid-column:1/-1}
.award-form .primary-button{justify-self:start;grid-column:1/-1}
.personal-awards{margin-top:23px;display:grid;gap:9px}
.personal-award{border:1px solid #f0e9f2;padding:14px;border-radius:15px;display:flex;align-items:center;gap:14px;background:#fcf9fd}
.personal-award>span{font-size:29px}
.personal-award>div{flex:1;min-width:0}
.personal-award b{font-size:13px;display:block;color:#594861}
.personal-award small{font-size:11px;display:block;color:#9e8ea2;margin-top:4px;line-height:1.4;overflow-wrap:anywhere}
.personal-award button{background:none;border:0;font-size:24px;color:#c3b3c7}
@media(max-width:1100px){.sport-inner{grid-template-columns:1fr}.sport-item{display:grid;grid-template-columns:minmax(120px,1fr) 1fr;column-gap:10px}.sport-item-title{grid-row:1}.sport-item .track-toggle{grid-column:1}.sport-item .mini-row{grid-column:2;grid-row:2}.books-grid{grid-template-columns:1fr}.badge-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){
  .main-content{padding-bottom:calc(105px + env(safe-area-inset-bottom))}
  .bottom-link{min-width:0;padding:2px 0}.bottom-link span{font-size:20px}.bottom-link small{font-size:9px;margin-top:5px;letter-spacing:-.2px}
  .bottom-nav{gap:2px;padding:6px 6px env(safe-area-inset-bottom)}
  .feelings-two{grid-template-columns:1fr;gap:19px}
  .feelings-two>div+div{border-left:0;border-top:1px solid #eee8f0;padding:16px 0 0}
  .moods{justify-content:space-between}.mood-choice{width:19%;font-size:29px}
  .smoked-choice{justify-content:space-between}.smoked-choice button{flex:1}
  .sport-inner{grid-template-columns:1fr;gap:9px}
  .sport-item{display:block;padding:13px}
  .sport-item .mini-row{margin-top:8px}
  .sport-item .track-toggle{margin-top:8px}
  .book-form{grid-template-columns:100px 1fr;gap:12px}
  .cover-upload{width:100px;height:142px}
  .book-card{gap:13px;padding:13px}.book-cover{width:86px;min-height:130px}.book-cover img{min-height:130px}
  .book-body h3{font-size:13px}
  .book-actions{gap:4px}.book-actions .ghost-button{padding:9px 8px}
  .badge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .badge{padding:17px 10px}
  .award-form{grid-template-columns:82px 1fr;gap:10px}.award-form label:nth-child(3){grid-column:1/-1}
  .panel-header{flex-wrap:wrap}.task-counter{white-space:normal}
  .task-form .primary-button{padding:12px}
  .task-form input{min-width:0}
  .streak-line{grid-template-columns:minmax(0,1fr) 50px 65px}
  .streak-line small{font-size:9px}
  .award-teaser{flex-direction:column;align-items:flex-start}
  .date-controls{margin-top:2px}
  .calendar-mood{font-size:15px}
  .calendar-tasks{font-size:8px;bottom:2px;right:2px}
}
@media(max-width:370px){.bottom-link small{font-size:8px}.book-form{grid-template-columns:1fr}.cover-upload{width:115px;height:145px}.smoked-choice button{padding:9px 5px}.habit-card{padding:15px 12px}.task-form{flex-wrap:wrap}.task-form button{width:100%}}

.heat-future{background:#fcfafc;border:1px dashed #eee8ee;opacity:.65}

.tiny-continue{background:#fbf2d8;border:1px solid #f4e3c1;color:#8d6a3e;border-radius:9px;font-size:10px;padding:7px 9px;font-weight:800;white-space:nowrap}
.tiny-continue:disabled{opacity:.5}
/* --- Мой ритм 3: паузы, знания, капсула, личные и рабочие задачи --- */
.capsule-top-link{width:36px;height:36px;background:#f3ebf6;border:1px solid #e8d9ec;border-radius:12px;font-size:19px;color:#795987;display:grid;place-items:center}
.freeze-section{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-10px 0 23px;padding:17px 19px;background:linear-gradient(115deg,#f4f9fb,#f8f3fb);border:1px solid #d7e3e9;border-radius:18px}
.freeze-section b{font-size:14px;color:#507b92}.freeze-section p{font-size:11px;line-height:1.5;color:#7c8792;margin:5px 0 0}
.freeze-section button{flex:none;max-width:165px}.freeze-section.is-frozen{background:linear-gradient(105deg,#e9f4fb,#f4f3fd);border-color:#b9d9e8}
.knowledge-form{display:grid;gap:9px;margin-top:17px}.knowledge-form input,.knowledge-form textarea,.thesis-progress input{border:1px solid #e9e2ef;background:#fcfafd;border-radius:11px;padding:11px 12px;color:#564662;font-size:12px;width:100%}
.knowledge-form textarea{min-height:68px;resize:vertical}.knowledge-form .ghost-button{justify-self:start}
.knowledge-list{display:grid;gap:9px;margin-top:11px}.knowledge-note{display:flex;gap:9px;justify-content:space-between;padding:11px;border:1px solid #ebe4ef;border-radius:12px;background:#fdfbfe;min-width:0}
.knowledge-note b{font-size:12px;overflow-wrap:anywhere}.knowledge-note p{font-size:11px;line-height:1.5;color:#80768d;margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.knowledge-note button{background:none;border:0;font-size:19px;color:#a9a0b1;align-self:flex-start}
.thesis-progress{border-top:1px solid #f0e8f2;padding-top:13px;margin-top:13px}.thesis-progress .mini-row{flex-wrap:wrap;gap:10px}.thesis-progress .field-row{margin-top:0}
.thesis-progress .small-text{margin-top:8px}.task-row.task-work{border-left:4px solid #758bc8;background:#f5f7fe}.task-row.task-personal{border-left:4px solid #dd9b7e;background:#fff8f1}
.task-row.task-done{opacity:.8}.task-row.task-followup{border-style:solid;border-top-color:#f2dfbf;border-bottom-color:#f2dfbf}
.task-type-label{font-size:10px;font-weight:800;letter-spacing:.1px;margin-bottom:2px}.work-label{color:#5c71ad}.personal-label{color:#be785f}
.task-kind-select{border:1px solid #e9e1f1;border-radius:8px;background:#fff;padding:5px;font-size:11px;color:#756580}
.task-transfer{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:11px;padding:8px 9px;background:#ffffff8c;border:1px dashed #e5ddeb;border-radius:11px}
.task-transfer label{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#7c7082;font-size:11px}
.task-transfer input{background:#fff;border:1px solid #e7e0e9;border-radius:8px;font-size:11px;padding:6px;color:#53465e;max-width:150px}
.task-form select{border:1px solid #e9e2ed;border-radius:12px;padding:10px 9px;color:#6c6078;background:#fff;font-size:12px}
.task-pills{display:flex;gap:2px;align-items:center;flex-wrap:wrap;justify-content:center;width:100%;margin-top:3px}
.task-pill{padding:2px 3px;border-radius:6px;font-size:9px;font-weight:800;white-space:nowrap}
.task-pill.work-dot{background:#dfe8fd;color:#526da7}.task-pill.personal-dot{background:#fbe5d7;color:#b86e50}
.day-cell{min-height:80px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;padding:8px 2px}
.day-cell.frozen-day,.week-day-card.frozen-day{background:#eef6fb;border-color:#a5d1e7}
.day-cell .calendar-dots{margin-top:4px}.calendar-view-switch{display:flex;gap:5px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:5px;align-items:center}
.calendar-view-switch button{border:0;border-radius:10px;background:transparent;font-size:11px;font-weight:750;color:#8d8297;padding:10px 14px}
.calendar-view-switch button.active{background:#765787;color:#fff}
.calendar-toolbar{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:13px;margin-bottom:17px}
.calendar-toolbar .month-label{min-width:160px;text-align:center}.week-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-bottom:21px}
.week-day-card{background:#fcfafd;border:1px solid #eee9f2;border-radius:14px;min-height:115px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 3px;min-width:0;color:#746080}
.week-day-card.selected{background:#f0e8f4;border-color:#9574a4}.week-day-card strong{font-size:19px}.week-day-card>span{font-size:11px}.week-day-card>small{font-size:10px}
.calendar-agenda{border-top:1px solid #f0ebf2;padding:20px 0 8px}.calendar-agenda .panel-header h2{font-size:17px}.calendar-agenda .muted-text{margin:8px 0 15px}
.agenda-tasks{display:grid;gap:9px}.agenda-task{display:flex;align-items:center;gap:10px;border-radius:10px;padding:12px;border-left:4px solid #758bc8;background:#f1f5fc}
.agenda-task.task-personal{background:#fff4e9;border-color:#d99571}.agenda-task b{font-size:12px;font-weight:700;flex:1;overflow-wrap:anywhere}.agenda-task small{font-size:10px;color:#786b7f;flex:none}
.frozen-inline{font-size:12px;color:#4f7d98;background:#edf7ff;border-radius:9px;padding:11px}
.capsule-banner{background:linear-gradient(120deg,#5a4372,#916a99)}.capsule-big-icon{font-size:59px;position:relative;z-index:1}
.capsule-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.capsule-summary span{display:block;border-radius:12px;padding:12px 13px;background:#f8f3f9;color:#6f6079;font-size:12px}.capsule-summary b{display:block;font-size:17px;margin-top:6px;color:#6c5080}
.capsule-form{margin-top:18px}.capsule-form h2{font-size:17px;margin:10px 0 5px}.capsule-form p{font-size:12px;color:#92869a;line-height:1.5}
.capsule-form textarea{width:100%;min-height:130px;padding:15px;resize:vertical;border-radius:12px;border:1px solid #e9e1ef;background:#fcfafd;color:#54445e;font-size:13px;line-height:1.55}
.capsule-form .save-footer{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px;margin-top:17px}
.custom-habit-panel{margin-top:25px}.custom-habit-form{display:flex;align-items:end;flex-wrap:wrap;gap:9px}.custom-habit-form>input,.custom-habit-form label input{border:1px solid #ece3ef;background:#fcfafd;border-radius:11px;padding:11px;font-size:12px;color:#594969;min-height:43px}
.custom-habit-form #custom-emoji{width:64px}.custom-habit-form #custom-title{flex:1;min-width:160px}.custom-habit-form label{font-size:10px;color:#7a6a83;display:grid;gap:4px;max-width:105px}
.custom-habit-form label input{width:90px}.archive-btn{padding:8px 10px;font-size:10px;flex:none}.goal-row:has(.archive-btn){gap:9px}.goal-row:has(.archive-btn)>input{max-width:52px}
.heat-frozen{color:#4f89ab!important;background:#d6e8f2!important;font-size:10px;padding:0}
@media(max-width:700px){
 .capsule-top-link{width:32px;height:32px;font-size:17px}.topbar-right{gap:8px}.private-mark{display:none}
 .freeze-section{align-items:flex-start;flex-direction:column}.freeze-section button{max-width:none}
 .calendar-view-switch{margin-top:4px}.calendar-view-switch button{padding:10px 9px}
 .day-cell{min-height:78px}.task-pills{flex-direction:column;gap:1px}.task-pill{font-size:7px;padding:1px 2px}.week-calendar{gap:3px}
 .week-day-card{min-height:99px;padding:10px 2px}.week-day-card>small{font-size:8px}.week-day-card strong{font-size:15px}
 .calendar-agenda{padding-top:13px}.capsule-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.capsule-summary span{padding:10px;font-size:10px}
 .task-transfer{padding:8px 5px}.task-transfer input{max-width:140px}.task-form{flex-wrap:wrap}.task-form input{flex-basis:100%;min-width:0}.task-form .primary-button{flex:1}
 .custom-habit-form #custom-title{flex-basis:calc(100% - 80px)}.custom-habit-form label{flex:1}.archive-btn{padding:7px 8px;font-size:9px}
}
/* Fixed 7-column month grid: the old square cells forced a larger min width on phones. */
.calendar-grid>.day-cell{aspect-ratio:auto;width:100%;min-width:0;max-width:100%;min-height:78px;overflow:hidden;box-sizing:border-box}
.calendar-grid>.day-cell .task-pills{max-width:100%;min-width:0}
.calendar-grid>.day-cell .task-pill{max-width:100%;overflow:hidden;text-overflow:clip}
.streak-click{background:transparent;border:0;width:100%;text-align:left;cursor:pointer;font-family:inherit}
.streak-click:hover{background:#faf6fb}.streak-click:focus-visible{outline:2px solid #986ba3}
.streak-detail{margin-top:18px;padding:15px;background:#faf7fc;border:1px solid #eadfec;border-radius:14px}
.streak-detail h3{font-size:13px;margin:0}.streak-detail .panel-header{margin-bottom:7px}
.streak-day-list{display:flex;gap:7px;flex-wrap:wrap;max-height:230px;overflow:auto;margin-top:10px}
.streak-day-list button{border:1px solid #e4d6e9;color:#735482;background:#fff;border-radius:10px;font-size:10px;padding:8px 10px}
.knowledge-filter{font-size:12px;font-weight:750;color:#685875;display:grid;gap:10px;margin-bottom:17px}
.knowledge-filter input{border:1px solid #ebe3ee;background:#fbf9fc;padding:12px;border-radius:12px;color:#554760}
.knowledge-timeline{display:grid;gap:13px}.knowledge-history{background:#fcfafd;border:1px solid #ece4ef;border-left:4px solid #9a7db0;border-radius:13px;padding:15px 17px}
.knowledge-history>span{font-size:10px;color:#9e88ae}.knowledge-history h3{font-size:14px;color:#584862;margin:7px 0 6px}
.knowledge-history p{font-size:12px;color:#7b6f82;line-height:1.6;white-space:pre-wrap;margin:0 0 10px}.knowledge-history .text-button{font-size:11px}

/* Мой ритм 4.0: Instagram / время внимания, фильмы на посмотреть */
.habit-instagram .habit-emoji{background:#e9f4f5}
.habit-instagram.over-limit{border-color:#f1b7b7;background:linear-gradient(155deg,#ffffff 55%,#fff2f2)}
.habit-instagram.over-limit .status-pill{background:#fce1e0;color:#bd4153}
.screen-time-lead{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#81768e;font-size:11px;margin:17px 0 10px}
.screen-time-lead strong{padding:7px 10px;border-radius:12px;background:#e8f5ef;color:#3d8f70;font-size:11px;white-space:nowrap}
.screen-time-controls{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin-top:8px}
.screen-time-controls label{display:grid;gap:6px;color:#918397;font-size:10px;font-weight:700}
.screen-time-controls input{height:46px;min-width:75px;width:84px;border:1px solid #e7deec;border-radius:12px;padding:9px 12px;font-size:19px;font-weight:750;background:#fbf9fd;color:#5d4c66;outline-offset:1px}
.screen-time-controls .screen-clear{height:42px;padding:9px 12px;flex:1;max-width:115px}
.screen-time-status{font-size:12px;padding:12px 13px;margin-top:14px;border-radius:12px;font-weight:800;line-height:1.5}
.screen-time-status.unmarked{background:#f6f2f7;color:#97889e}
.screen-time-status.within{background:#e5f6ed;color:#287453;border:1px solid #d0eddb}
.screen-time-status.over{background:#ffe6e7;color:#b72e48;border:1px solid #ffc8cd}
.instagram-analytics{margin:17px 0 24px;padding-bottom:24px}
.ig-over-count{font-size:11px;font-weight:800;border-radius:10px;padding:8px 10px;color:#ba3c4f;background:#ffecef;white-space:nowrap}
.instagram-analytics-hero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:16px 0 24px}
.instagram-analytics-hero>div{min-width:0;background:#f8f5fa;border:1px solid #eee7f2;border-radius:15px;padding:15px}
.instagram-analytics-hero b{display:block;font-size:23px;color:#664978;line-height:1.15;letter-spacing:-.7px}
.instagram-analytics-hero small{display:block;font-size:10px;color:#94899a;margin-top:5px;line-height:1.4}
.instagram-chart{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:7px;height:176px;align-items:end;padding-top:10px}
.instagram-bar-col{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;background:transparent;border:0;min-width:0;padding:0}
.ig-bar-number{font-size:9px;color:#877888;white-space:nowrap;letter-spacing:-.3px}
.ig-bar-track{height:127px;width:100%;display:flex;align-items:flex-end;justify-content:center;border-radius:7px;background:#f9f6fa;overflow:hidden;border:1px solid #f3eff5}
.ig-bar-fill{width:100%;border-radius:6px 6px 0 0;display:block;transition:height .25s;min-height:2px}
.ig-bar-fill.ig-good{background:linear-gradient(0deg,#4ca68a,#84caba)}
.ig-bar-fill.ig-danger{background:linear-gradient(0deg,#d75769,#f4a1a1)}
.ig-bar-fill.ig-empty{background:#e6dce9}
.ig-bar-date{font-size:9px;color:#918494}
.instagram-legend{display:flex;flex-wrap:wrap;gap:11px;margin-top:14px;color:#9b91a1;font-size:10px}
.instagram-legend span:first-child{color:#429e83}.instagram-legend span:nth-child(2){color:#d25a6b}
.film-counter{border:1px solid #eee4ef;background:#fcf8ff;border-radius:12px;padding:11px 14px;font-size:11px;color:#7f6887;font-weight:800}
.film-form-panel{background:linear-gradient(130deg,#fff 60%,#fbf5fc)}
.film-form{display:grid;gap:13px}.film-form label{font-size:11px;font-weight:800;color:#71617b;display:grid;gap:8px}
.film-form input,.film-form textarea{background:#fcfafc;border:1px solid #e9dfed;border-radius:12px;padding:13px 14px;width:100%;font-size:13px;color:#54415f;font-weight:450}
.film-form textarea{min-height:90px;resize:vertical;line-height:1.55}
.film-form-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.film-list-panel{margin-top:22px}.film-list-panel .panel-header{gap:15px;flex-wrap:wrap}
.film-filters{display:flex;gap:7px;flex-wrap:wrap;margin:19px 0 14px}
.film-filters button{border-radius:999px;padding:10px 13px;border:1px solid #eee4ef;background:#fcfafd;color:#93839c;font-size:11px;font-weight:800}
.film-filters button.active{background:#725184;border-color:#725184;color:white}
.film-search{display:flex;align-items:center;gap:9px;padding:0 13px;margin-bottom:15px;border-radius:11px;background:#faf7fc;border:1px solid #ebe2ef;color:#907c9a}
.film-search input{background:none;border:0;height:44px;outline:none;width:100%;font-size:12px;color:#594a61}
.film-list{display:grid;gap:10px}
.film-item{border:1px solid #eae3ed;border-radius:16px;background:#fff;display:flex;align-items:stretch;gap:14px;padding:13px;min-width:0;transition:.15s}
.film-item.film-picked{background:#f1e7f6;border-color:#9b74a8;box-shadow:0 0 0 3px #aa88b54d}
.film-item.film-watched{background:#f7fbf9;border-color:#e0eee8}
.film-art{width:56px;min-width:56px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#785188,#c5a6d0);color:white;font-size:25px;font-weight:700}
.film-watched .film-art{background:linear-gradient(135deg,#578e7a,#95c5ae)}
.film-body{flex:1;min-width:0}.film-body h3{font-size:14px;color:#584461;line-height:1.4;margin:2px 0 6px;overflow-wrap:anywhere}
.film-body p{font-size:11px;color:#8e8294;line-height:1.55;margin:0 0 12px;white-space:pre-wrap;overflow-wrap:anywhere}
.film-footer{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.film-footer>span{font-size:10px;color:#a291a6;font-weight:650}.film-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.tiny-film{border:1px solid #e9dff0;background:#faf7fd;color:#725680;font-size:10px;font-weight:850;padding:8px 9px;border-radius:9px}
.tiny-film:hover{background:#eee7f3}
@media(max-width:700px){
  .instagram-chart{gap:4px;height:157px}.ig-bar-track{height:110px}.ig-bar-number,.ig-bar-date{font-size:8px}
  .instagram-analytics-hero{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.instagram-analytics-hero>div{padding:11px 8px}.instagram-analytics-hero b{font-size:17px}.instagram-analytics-hero small{font-size:9px}
  .film-art{width:43px;min-width:43px}.film-item{gap:10px;padding:10px}.film-form-panel,.film-list-panel{padding:17px}
  .film-footer{align-items:flex-start}.film-actions{margin-top:4px}.film-filters button{font-size:10px;padding:9px 10px}
  .bottom-nav{gap:1px;padding-left:3px;padding-right:3px}.bottom-link span{font-size:20px}.bottom-link small{font-size:8px;letter-spacing:-.15px}
}
