@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(../media/a128116a0bc3fa8c-s.1j5s5ojb4-d-s.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(../media/9db33c57cd4391b8-s.237s8-2g-gft2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(../media/8010b10db0d5feb2-s.0hamgza7cpt1x.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/167cd0713aa75522-s.40v7iydlhc_yt.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/e455bcff747f0d5e-s.438h7bwt6ldsi.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/791bf8c4bb753ed6-s.0rg7ym60g9xsl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_7e0cd64a-module__4Jh4lG__className{font-family:Fraunces,Fraunces Fallback}.fraunces_7e0cd64a-module__4Jh4lG__variable{--gfr-font-fraunces:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.270md_-rr62el.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.0lsanbtneewqp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_65313353-module__t32fZG__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_65313353-module__t32fZG__variable{--gfr-font-dm-sans:"DM Sans", "DM Sans Fallback"}
@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(../media/da4b870ab52b3094-s.2uxt0u9yugpfw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(../media/86d70b7c76b6ec6e-s.2zeei6axiu3qn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(../media/11cc37d7380d16b4-s.27211fhlic14m.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a85fe84266768609-s.00hx3ibfyf9qx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/da4b870ab52b3094-s.2uxt0u9yugpfw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/86d70b7c76b6ec6e-s.2zeei6axiu3qn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/11cc37d7380d16b4-s.27211fhlic14m.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url(../media/a85fe84266768609-s.00hx3ibfyf9qx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat Fallback;src:local(Arial);ascent-override:124.77%;descent-override:38.99%;line-gap-override:0.0%;size-adjust:76.94%}.caveat_aaa0c520-module___6awLG__className{font-family:Caveat,Caveat Fallback;font-style:normal}.caveat_aaa0c520-module___6awLG__variable{--gfr-font-caveat:"Caveat", "Caveat Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e950ad761845b50b-s.0xni8obhzwg1u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/b4b686805da2be9a-s.1_42vkugwmqvo.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/16b20fbdf3771492-s.3y9pj4xnjwrec.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/9a73e1a274516b8c-s.1_8e5lzf36kdt.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/695e67c98dd80708-s.1xzc3d3t1k8-g.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e506d31c18fd42e6-s.0k0di8efl80ld.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_93279888-module__EecMPq__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal;font-weight:600}.ibm_plex_sans_93279888-module__EecMPq__variable{--gfr-font-ibm-plex-sans:"IBM Plex Sans", "IBM Plex Sans Fallback"}
.gfr{--paper:#fffaf0;--paper-2:#f8f0df;--coral:#f47770;--pink:#ed5c79;--lav:#9c82e8;--blue:#72bce8;--sun:#f4c95d;--mint:#78c9ad;--ink:#25222a;--navy:#263a63;--red:#c94343;--muted:#6e6670;--rule:#e3d6c2;--wood-1:#6b432f;--wood-2:#98664a;--wood-3:#bd8967;--woodgrain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='600'%3E%3Cfilter id='w'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.0035 .09' numOctaves='4' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 .32 0 0 0 0 .16 0 0 0 0 .1 0 0 0 -1.6 1.05'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23w)'/%3E%3C/svg%3E");--serif:var(--gfr-font-fraunces),Georgia,"Times New Roman",serif;--sans:var(--gfr-font-dm-sans),system-ui,-apple-system,"Segoe UI",sans-serif;--hand:var(--gfr-font-caveat),"Segoe Print","Bradley Hand",cursive;--ease:cubic-bezier(.22,.7,.2,1);--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .4 0 0 0 0 .3 0 0 0 0 .2 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.gfr,.gfr *{box-sizing:border-box;min-width:0;margin:0;padding:0}.gfr{-webkit-text-size-adjust:100%;color:var(--ink);font:400 1rem/1.5 var(--sans);-webkit-font-smoothing:antialiased;overflow-wrap:break-word;background:#6b432f;overflow-x:hidden}.gfr img,.gfr svg{max-width:100%;display:block}.gfr button,.gfr input,.gfr select,.gfr textarea{font:inherit;color:inherit}.gfr :focus-visible{outline:3px solid var(--lav);outline-offset:2px}.gfr [hidden]{display:none!important}.gfr[data-mode=creator] .intro,.gfr[data-mode=creator] .reader,.gfr[data-mode=intro] .creator,.gfr[data-mode=intro] .reader,.gfr[data-mode=reader] .creator,.gfr[data-mode=reader] .intro{display:none}.gfr.locked,.gfr.locked{overscroll-behavior:none;height:100%;overflow:hidden}.gfr .girlfriend-scene{perspective:1600px;isolation:isolate;background:radial-gradient(circle at 50% 18%,#ffe7cd8c,#0000 34%),linear-gradient(135deg,#6b432f 0%,#98664a 28%,#bd8967 55%,#98664a 78%,#6b432f 100%);width:100%;min-height:100cqh;position:relative;overflow:hidden}.gfr .desk-surface{z-index:0;background:repeating-linear-gradient(96deg,#46251814 0 2px,#0000 2px 18px),linear-gradient(90deg,#ffffff0f,#0000 18%,#0000000d 55%,#0000 82%),#98664a;position:absolute;inset:0;overflow:hidden}.gfr .desk-surface:before{content:"";opacity:.45;background:repeating-linear-gradient(8deg,#0000 0 42px,#411f1314 43px,#0000 45px 88px);position:absolute;inset:-10%;transform:rotate(-1deg)}.gfr .desk-surface:after{content:"";opacity:.55;mix-blend-mode:multiply;background:radial-gradient(ellipse 140px 26px at 22% 64%,#46241638,transparent 70%), radial-gradient(ellipse 90px 18px at 78% 30%,#4624162e,transparent 70%), repeating-linear-gradient(93deg,transparent 0 6px,#502a190d 7px,transparent 9px 31px,#ffecd20a 32px,transparent 34px 57px), var(--grain);position:absolute;inset:0}.gfr .desk-light{z-index:1;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(at 48% 12%,#fff2d6b8 0%,#ffdfbb47 25%,#0000 58%);position:absolute;inset:-10%}.gfr .desk-window{z-index:1;pointer-events:none;opacity:.5;mix-blend-mode:soft-light;background:linear-gradient(118deg,#fff6e28c 0%,#fff6e233 22%,#0000 23% 27%,#fff6e22e 28%,#0000 44%);position:absolute;inset:0}.gfr .desk-vignette{z-index:8;pointer-events:none;background:radial-gradient(#0000 48%,#3218111f 100%);position:absolute;inset:0}.gfr[data-mode=creator] .desk-vignette,.gfr[data-mode=creator] .desk-surface,.gfr[data-mode=creator] .desk-light,.gfr[data-mode=creator] .desk-window{position:absolute}.gfr .desk-object{z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(2px 5px 5px #401e1033);height:auto;position:absolute}.gfr .desk-object.on-desk{inset:0 auto auto 0}.gfr .desk-flower{width:min(17cqw,230px);top:5%;left:2%}.gfr .desk-books{width:min(18cqw,240px);top:5%;right:2%}.gfr .desk-candle{width:min(10cqw,135px);bottom:10%;right:4%}.gfr .desk-polaroid{width:min(12cqw,165px);bottom:11%;left:4%;transform:rotate(-8deg)}.gfr .desk-ink{z-index:30;width:min(9cqw,125px);bottom:4%;right:15%}.gfr .desk-quill{z-index:31;transform-origin:82% 80%;width:min(18cqw,260px);transition:transform .85s cubic-bezier(.22,.72,.25,1),filter .5s;bottom:5%;right:8%}.gfr .desk-quill.is-inking{transform:translate(-40px,-18px)rotate(-18deg)}.gfr .desk-quill.is-writing{filter:drop-shadow(0 5px 8px #28140a2e);transform:translate(-190px,-90px)rotate(-34deg)}.gfr .desk-petal{z-index:9;pointer-events:none;opacity:.85;border-radius:60% 40% 55% 45%;width:16px;height:12px;position:absolute}.gfr[data-mode=creator] .desk-object,.gfr[data-mode=creator] .desk-petal{position:absolute}.gfr[data-mode=creator] .desk-ink,.gfr[data-mode=creator] .desk-quill{display:none}.gfr .desk-quill.js-driven{will-change:transform;filter:drop-shadow(3px 6px 4px #28140a47);transition:filter .3s;inset:0 auto auto 0}.gfr .desk-quill.js-driven.is-writing{filter:drop-shadow(1px 2px 2px #28140a40)}.gfr .desk-ink.js-placed{inset:0 auto auto 0}.gfr .creator{z-index:20;max-width:680px;margin:0 auto;padding:28px 14px 120px;position:relative}.gfr .panel{background:var(--paper) var(--grain);border-radius:6px;padding:22px 18px;position:relative;box-shadow:0 1px 2px #28140a1a,0 22px 44px -18px #28140a8c}.gfr .panel:before{content:"";background:#f4c95dd1;width:84px;height:20px;position:absolute;top:-9px;left:50%;transform:translate(-50%)rotate(-2deg);box-shadow:0 2px 3px #321e0f1a}.gfr .c-brand{align-items:center;gap:10px;margin-bottom:14px;display:flex}.gfr .c-brand svg{width:40px;height:40px}.gfr .c-brand b{font:700 .82rem/1.15 var(--serif);letter-spacing:.14em;text-transform:uppercase;color:var(--navy);display:block}.gfr .c-brand span{color:var(--muted);font-size:.72rem}.gfr .c-h{font:700 clamp(1.7rem,6.5cqw,2.4rem)/1.08 var(--serif);color:var(--navy)}.gfr .c-h em{color:var(--pink);font-style:italic}.gfr .c-lead{color:var(--muted);margin:8px 0 18px;font-size:.95rem}.gfr .f{margin-bottom:12px;display:block}.gfr .f>span,.gfr .mini{font:600 .78rem/1.3 var(--sans);color:var(--ink);margin-bottom:5px;display:block}.gfr .f small,.gfr .mini small{color:var(--muted);font-weight:400}.gfr .mini{color:var(--muted);margin:8px 0 3px;font-size:.7rem}.gfr .req{color:var(--pink)}.gfr input,.gfr select,.gfr textarea{background:#fff;border:1.5px solid #e1d3bd;border-radius:10px;width:100%;min-height:46px;padding:10px 12px;font-size:16px;line-height:1.35;transition:border-color .15s,box-shadow .15s;display:block}.gfr select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23263A63' stroke-width='1.8'/%3E%3C/svg%3E") right 12px center no-repeat;padding-right:32px}.gfr textarea{resize:vertical;min-height:110px}.gfr input:focus,.gfr select:focus,.gfr textarea:focus{border-color:var(--lav);outline:none;box-shadow:0 0 0 3px #9c82e838}.gfr .err{color:var(--red);min-height:1.2em;margin:-2px 0 8px;font-size:.85rem}.gfr .btn{cursor:pointer;min-height:50px;font:700 .95rem/1.1 var(--sans);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;text-decoration:none;transition:transform .15s,box-shadow .2s,background .2s;display:inline-flex}.gfr .btn.primary{background:var(--pink);color:#fff;box-shadow:0 6px 16px -6px #ed5c79b3}.gfr .btn.primary:hover{background:#e04a69}.gfr .btn.ghost{color:var(--navy);background:#fff;box-shadow:inset 0 0 0 1.5px #e1d3bd}.gfr .btn.ghost:hover{box-shadow:inset 0 0 0 1.5px var(--lav)}.gfr .btn.block{width:100%}.gfr .btn.sm{min-height:40px;padding:8px 14px;font-size:.84rem}.gfr .linkb{color:var(--navy);font:600 .85rem var(--sans);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:6px 0;text-decoration:underline}.gfr .fine{color:var(--muted);text-align:center;margin-top:10px;font-size:.78rem}.gfr .sec{background:#fff;border:1px solid #eaddc9;border-radius:12px;margin-top:12px;overflow:hidden}.gfr .sec>summary{cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px;list-style:none;display:grid}.gfr .sec>summary::-webkit-details-marker{display:none}.gfr .sec-i{color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:1rem;display:grid}.gfr .sec-t b{font:700 .92rem/1.25 var(--sans);display:block}.gfr .sec-t span{color:var(--muted);font-size:.76rem;display:block}.gfr .sec>summary:after{content:"";border-right:2px solid var(--navy);border-bottom:2px solid var(--navy);width:9px;height:9px;margin:0 4px 4px;transition:transform .2s;transform:rotate(45deg)}.gfr .sec[open]>summary:after{margin-bottom:-4px;transform:rotate(225deg)}.gfr .sec-b{border-top:1px dashed #eaddc9;padding:2px 14px 16px}.gfr .row{background:var(--paper);border:1px solid #f0e5d3;border-radius:10px;margin-top:10px;padding:10px 12px 12px}.gfr .row-h{font:700 .66rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--navy);justify-content:space-between;align-items:center;display:flex}.gfr .x{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;margin:-8px -8px -8px 0;font-size:1.3rem}.gfr .x:hover{color:var(--red);background:#fff}.gfr .g3{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.gfr .adders{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.gfr .thumbs{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;margin-top:10px;display:grid}.gfr .thumb{aspect-ratio:1;background:#f2e8d8;border-radius:6px;position:relative;overflow:hidden;box-shadow:0 2px 6px #28140a26}.gfr .thumb img{object-fit:cover;width:100%;height:100%}.gfr .thumb .x{width:28px;height:28px;color:var(--ink);background:#ffffffeb;margin:0;font-size:1rem;position:absolute;top:4px;right:4px}.gfr .upl{position:relative;overflow:hidden}.gfr .upl input{opacity:0;cursor:pointer;min-height:0;position:absolute;inset:0}.gfr .note{color:var(--muted);margin-top:8px;font-size:.78rem}.gfr .steps{counter-reset:s;gap:6px;margin:0 0 14px;padding:0;list-style:none;display:flex}.gfr .steps li{font:700 .62rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-top:3px solid #eaddc9;flex:1;padding-top:6px}.gfr .steps li.on{color:var(--pink);border-color:var(--pink)}.gfr .steps li.done{color:var(--navy);border-color:var(--navy)}.gfr .thumb .cov{color:#fff;font:700 .58rem/1.9 var(--sans);letter-spacing:.12em;text-transform:uppercase;text-align:center;background:#263a63d9;font-style:normal;position:absolute;bottom:0;left:0;right:0}.gfr .ph-missing .im{background:linear-gradient(160deg,#fce3e8,#e9e2fb 55%,#ddf0fa)}.gfr .c-bar{z-index:40;padding:10px 14px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);background:#fffaf0f2;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -8px 24px -12px #28140a66}.gfr .c-bar .in{align-items:center;gap:10px;max-width:652px;margin:0 auto;display:flex}.gfr .c-bar .btn.primary{flex:1}.gfr .toast{z-index:60;background:var(--ink);color:#fff;border-radius:999px;padding:10px 16px;font-size:.85rem;position:absolute;bottom:86px;left:50%;transform:translate(-50%);box-shadow:0 8px 20px #00000040}.gfr .intro{z-index:20;place-items:center;min-height:100cqh;padding:24px 16px;display:grid;position:relative}.gfr .env{background:var(--paper) var(--grain);text-align:center;border-radius:6px;width:min(420px,92cqw);padding:34px 26px 28px;position:relative;transform:rotate(-1.2deg);box-shadow:0 1px 2px #28140a1a,0 26px 50px -20px #28140a99}.gfr .env:before{content:"";background:#ed5c798c;width:90px;height:22px;position:absolute;top:-10px;left:50%;transform:translate(-50%)rotate(2deg)}.gfr .env .crest{width:64px;height:64px;margin:0 auto 12px}.gfr .env p.k{font:700 .66rem var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.gfr .env h1{font:600 clamp(1.5rem,6cqw,2rem)/1.15 var(--serif);color:var(--navy);margin:10px 0 6px}.gfr .env .for{font:700 1.7rem/1.1 var(--hand);color:var(--pink);margin-bottom:20px}.gfr .env .seal{opacity:.85;width:46px;height:46px;position:absolute;bottom:18px;right:16px;transform:rotate(12deg)}.gfr .back-edit{z-index:70;color:var(--navy);font:600 .78rem var(--sans);cursor:pointer;background:#fffaf0d9;border:0;border-radius:999px;padding:8px 12px;position:absolute;top:10px;left:10px;box-shadow:0 2px 8px #0000002e}.gfr .reader{z-index:20;flex-direction:column;justify-content:center;align-items:center;height:100cqh;display:flex;position:relative}.gfr .stage{perspective:1600px;flex:auto;justify-content:center;align-items:center;width:100%;display:flex;position:relative}.gfr .report-book{z-index:20;aspect-ratio:1.48;width:min(76cqw,1080px);transform-style:preserve-3d;--t:10px;margin:0 auto;position:relative;transform:rotateX(2deg)rotateY(-2deg)rotate(-.4deg)}.gfr .report-book.portrait{transform:rotateX(1deg)rotateY(-1deg)}.gfr .report-shadow{z-index:-1;filter:blur(22px);background:#23110a4d;border-radius:50%;height:12%;position:absolute;bottom:-4%;left:5%;right:5%;transform:translateZ(-35px)}.gfr .book-stack{background:#f3ebda;border-radius:3px 7px 7px 3px;position:absolute;inset:0;box-shadow:1px 1.5px #efe6d3,1.5px 2.5px #5a40262e,2.5px 3.5px #ece2cd,3px 4.5px #5a40262e,4px 5.5px #e8ddc6,4.5px 6.5px #5a402638,0 18px 35px #2e191138,0 4px 10px #2e19111f}.gfr .report-page{background:linear-gradient(90deg,#7856321a,transparent 7%,transparent 94%,#50321e14),var(--grain),#fffaf0;backface-visibility:hidden;visibility:hidden;border-radius:3px 7px 7px 3px;position:absolute;inset:0;overflow:hidden;box-shadow:0 1px 2px #2e19111f}.gfr .report-page:before{content:"";pointer-events:none;opacity:.22;background:repeating-linear-gradient(0deg,#5f462d0a 0 1px,#0000 1px 5px);position:absolute;inset:0}.gfr .report-page:after{content:"";pointer-events:none;opacity:.5;background:linear-gradient(90deg,#0000000a,#ffffff59,#00000012);width:9px;height:100%;position:absolute;top:0;right:0}.gfr .report-page.is-current,.gfr .report-page.is-under{visibility:visible}.gfr .report-page.is-current{z-index:3}.gfr .report-page.is-under{z-index:2}.gfr .binding{width:calc(var(--t)*2.4);z-index:6;pointer-events:none;background:linear-gradient(90deg,#3c261847,#3c261814 45%,#ffffff2e 70%,#3c26180f);border-radius:3px 0 0 3px;position:absolute;top:0;bottom:0;left:0}.gfr .binding:after{content:"";top:6%;bottom:6%;left:calc(var(--t)*1.1);border-left:1.5px dashed #c9434373;position:absolute}.gfr .ribbon{z-index:1;width:calc(var(--t)*1.6);height:calc(var(--t)*5 + 16px);pointer-events:none;clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - 12px),0 100%);filter:drop-shadow(1px 2px 2px #28140a40);background:linear-gradient(90deg,#d8496b,#ed5c79 45%,#c93d60);position:absolute;top:calc(100% - 10px);right:16%;box-shadow:0 2px 3px #00000026}.gfr .pg{--u:calc(var(--t) * var(--fit,1));padding:calc(var(--u)*3.4) calc(var(--u)*4) calc(var(--u)*3) calc(var(--u)*5);font-size:calc(var(--u)*1.35);flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.gfr .report-book.portrait .pg{padding:calc(var(--u)*2.6) calc(var(--u)*2) calc(var(--u)*2.2) calc(var(--u)*3.2)}.gfr .pg-frame{inset:calc(var(--u)*1.4) calc(var(--u)*1.4) calc(var(--u)*1.4) calc(var(--u)*3);outline-offset:calc(var(--u)*-.5);pointer-events:none;border:1.5px solid #263a638c;border-radius:2px;outline:1px solid #ed5c7959;position:absolute}.gfr .report-book.portrait .pg-frame{inset:calc(var(--u)*1) calc(var(--u)*1) calc(var(--u)*1) calc(var(--u)*2.4)}.gfr .pg-head{align-items:center;gap:calc(var(--u)*1);padding-bottom:calc(var(--u)*.8);border-bottom:2px solid var(--navy);margin-bottom:calc(var(--u)*1.2);display:flex}.gfr .pg-head .crest{width:calc(var(--u)*3.6);height:calc(var(--u)*3.6);flex:none}.gfr .pg-head b{font:700 calc(var(--u)*1.25)/1.1 var(--serif);letter-spacing:.12em;text-transform:uppercase;color:var(--navy);display:block}.gfr .pg-head span{font-size:calc(var(--u)*.85);color:var(--muted);display:block}.gfr .pg-head .r{text-align:right;margin-left:auto}.gfr .pg-head .r b{font:700 calc(var(--u)*.78) var(--sans);letter-spacing:.16em;color:var(--pink)}.gfr .pg-title{align-items:baseline;gap:calc(var(--u)*.8);margin-bottom:calc(var(--u)*1);display:flex}.gfr .pg-title i{font:italic 600 calc(var(--u)*1.1) var(--serif);color:var(--pink)}.gfr .pg-title h2{font:700 calc(var(--u)*1.9)/1.05 var(--serif);color:var(--navy);letter-spacing:.01em}.gfr .pg-foot{padding-top:calc(var(--u)*.6);font:500 calc(var(--u)*.72) var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--rule);justify-content:space-between;gap:10px;margin-top:auto;display:flex}.gfr .hand{font-family:var(--hand);color:var(--red);font-weight:700}.gfr .fill{color:var(--navy);font-family:var(--hand);font-size:1.32em;font-weight:700;line-height:1}.gfr .sticker{pointer-events:none;position:absolute}.gfr .off-seals{gap:calc(var(--u)*2.2);margin-top:calc(var(--u)*1.2);align-items:flex-end;display:flex}.gfr .off-seal{text-align:center;position:relative}.gfr .off-seal .bf-crest,.gfr .off-seal .angel-seal{width:calc(var(--u)*8.4);height:calc(var(--u)*8.4);color:var(--red);opacity:.82;mix-blend-mode:multiply;margin:0 auto;display:block;overflow:visible;transform:rotate(-4deg)}.gfr .off-seal .approved{color:var(--red);font:500 calc(var(--u)*1.25)/1 var(--hand);letter-spacing:.08em;text-transform:uppercase;margin-top:2px;display:block;transform:rotate(-3deg)}.gfr .off-seal small{margin-top:calc(var(--u)*.4);border-top:1px solid var(--ink);padding-top:calc(var(--u)*.25);font:700 calc(var(--u)*.58) var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:block}.gfr .signed{font:700 calc(var(--u)*2.1)/1 var(--hand);color:#283c78;margin-top:calc(var(--u)*.6)}.gfr .cover{background:linear-gradient(180deg,#fff0,#fff0),var(--grain),#fffaf0}.gfr .cover .pg{text-align:center;justify-content:center;align-items:center;gap:calc(var(--u)*1.2)}.gfr .cover .cv-top{top:calc(var(--u)*2.6);left:calc(var(--u)*5);right:calc(var(--u)*4);width:auto;position:absolute}.gfr .cv-band{height:calc(var(--t)*1.1);background:linear-gradient(90deg,var(--coral),var(--pink) 30%,var(--lav) 60%,var(--blue) 82%,var(--mint));opacity:.9;position:absolute;top:0;left:0;right:0}.gfr .cv-band:after{content:"";left:0;right:0;top:calc(100% + var(--t)*.5);height:calc(var(--t)*.35);background:var(--sun);opacity:.9;position:absolute}.gfr .cv-top{width:100%;font:600 calc(var(--u)*.72) var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);justify-content:space-between;display:flex}.gfr .cv-crest{z-index:2;width:calc(var(--u)*9);height:calc(var(--u)*9);background:var(--paper);padding:calc(var(--u)*.4);border-radius:50%;position:relative;box-shadow:0 2px 6px #28140a1f}.gfr .cv-uni{font:800 calc(var(--u)*2.1)/1 var(--serif);letter-spacing:.2em;text-transform:uppercase;color:var(--navy);margin-top:calc(var(--u)*.6)}.gfr .cv-dept{font:600 calc(var(--u)*.85) var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--muted);margin-top:calc(var(--u)*.4)}.gfr .cv-title{font:800 calc(var(--u)*4.4)/.95 var(--serif);letter-spacing:.02em;text-transform:uppercase;color:var(--navy);margin-top:calc(var(--u)*1)}.gfr .cv-title span{color:var(--pink)}.gfr .cv-sub{font:italic 400 calc(var(--u)*1.4) var(--serif);color:var(--ink);margin-top:calc(var(--u)*.6)}.gfr .cv-year{margin-top:calc(var(--u)*.8);padding:calc(var(--u)*.35) calc(var(--u)*1.2);border:1.5px solid var(--navy);font:700 calc(var(--u)*.78) var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--navy);background:#f4c95d40;display:inline-block}.gfr .cv-names{gap:calc(var(--u)*3);width:min(100%,calc(var(--u)*62));text-align:left;grid-template-columns:1fr 1fr;display:grid}.gfr .cv-names span{font:700 calc(var(--u)*.72) var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);display:block}.gfr .cv-names b{border-bottom:1.5px dotted var(--ink);padding:calc(var(--u)*.2) 2px calc(var(--u)*.3);font:700 calc(var(--u)*2.4)/1.1 var(--hand);color:var(--navy);overflow-wrap:anywhere;display:block}.gfr .cv-names b.l2{font-size:calc(var(--u)*1.9)}.gfr .cv-names b.l3{font-size:calc(var(--u)*1.5)}.gfr .report-book.portrait .cv-names{gap:calc(var(--u)*1.2);grid-template-columns:1fr}.gfr .report-book.portrait .cover .cv-top{font-size:calc(var(--u)*.62);flex-direction:column;align-items:center;gap:2px;position:static}.gfr .report-book.portrait .cover .sticker.sprig{display:none}.gfr .cv-grid{gap:calc(var(--u)*3);flex:1;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);align-items:center;width:100%;display:grid}.gfr .cv-text{align-items:center;gap:calc(var(--u)*1.1);flex-direction:column;display:flex}.gfr .cv-photo{justify-self:center;width:92%;padding:calc(var(--u)*.8) calc(var(--u)*.8) calc(var(--u)*3)!important}.gfr .cv-photo .im{aspect-ratio:4/5;background:#eadcc6;overflow:hidden}.gfr .cv-photo .cap{font-size:calc(var(--u)*1.35)}.gfr .report-book.portrait .cv-grid{gap:calc(var(--u)*1.2);grid-template-columns:1fr;align-content:center}.gfr .report-book.portrait .cv-photo{order:0;width:48%}.gfr .report-book.portrait .cv-photo .im{aspect-ratio:1}.gfr .report-book.portrait .cv-crest{width:calc(var(--u)*6);height:calc(var(--u)*6)}.gfr .report-book.portrait .cv-title{font-size:calc(var(--u)*3.4)}.gfr .report-book.portrait .cv-uni{font-size:calc(var(--u)*1.7);letter-spacing:.14em}.gfr .report-book.portrait .cv-dept{letter-spacing:.2em}.gfr .p2{gap:calc(var(--u)*2.2);flex:1 0 auto;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) minmax(0,.95fr);align-items:start;display:grid}.gfr .p2-main{gap:calc(var(--u)*1.4);padding-top:calc(var(--u)*.6);justify-items:center;display:grid}.gfr .p2-main .report-photo{width:96%;padding:calc(var(--u)*.8) calc(var(--u)*.8) calc(var(--u)*2.8)}.gfr .p2-main .report-photo .im{aspect-ratio:4/5;background:#eadcc6;overflow:hidden}.gfr .p2-main.two{gap:calc(var(--u)*1);grid-template-columns:1fr 1fr}.gfr .p2-main.two .report-photo{width:100%}.gfr .p2-main.two .report-photo .im{aspect-ratio:3/4}.gfr .hl{border:1.5px solid var(--rule);padding:calc(var(--u)*1) calc(var(--u)*1.2);background:#ffffff8c;border-radius:4px;position:relative}.gfr .hl h3{font:700 calc(var(--u)*.7) var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--pink);margin-bottom:calc(var(--u)*.6)}.gfr .hl ul{gap:calc(var(--u)*.55);list-style:none;display:grid}.gfr .hl li{gap:calc(var(--u)*.6);font-size:calc(var(--u)*1.02);grid-template-columns:auto 1fr;line-height:1.35;display:grid}.gfr .hl li i{color:var(--pink);font-style:normal}.gfr .p2-side{gap:calc(var(--u)*1.2);display:grid}.gfr .badges{gap:calc(var(--u)*.5);flex-wrap:wrap;display:flex}.gfr .badge{padding:calc(var(--u)*.25) calc(var(--u)*.7);font:700 calc(var(--u)*.68) var(--sans);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:4px;display:inline-flex}.gfr .p2-note{font:700 calc(var(--u)*1.35)/1.25 var(--hand);color:var(--red);transform:rotate(-2deg)}.gfr .report-book.portrait .p2{gap:calc(var(--u)*1.2);grid-template-columns:1fr 1fr}.gfr .report-book.portrait .p2-main{grid-area:1/1/auto/-1}.gfr .report-book.portrait .p2-main .report-photo{width:56%}.gfr .report-book.portrait .p2-main.two .report-photo{width:100%}.gfr .att{gap:calc(var(--u)*.6) calc(var(--u)*1.2);margin-top:calc(var(--u)*.9);font-size:calc(var(--u)*.95);flex-wrap:wrap;align-items:center;display:flex}.gfr .att b{font:700 calc(var(--u)*.66) var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--navy)}.gfr .att span{align-items:baseline;gap:6px;display:inline-flex}.gfr .att .fill{font-size:calc(var(--u)*1.25)}.gfr .strip-h{margin-top:calc(var(--u)*1)}.gfr .p4-strip.gal{padding-top:calc(var(--u)*.4)}.gfr .p4-strip .im{aspect-ratio:1!important}.gfr .v-fav{width:calc(var(--u)*11);margin:calc(var(--u)*1.2) auto 0;padding:calc(var(--u)*.6) calc(var(--u)*.6) calc(var(--u)*2.2)!important}.gfr .v-fav .im{aspect-ratio:1;background:#eadcc6;overflow:hidden}.gfr .v-fav .cap{font-size:calc(var(--u)*1.05);bottom:calc(var(--u)*.4)}.gfr .report-book.portrait .v-fav{display:none}.gfr .prof2{gap:calc(var(--u)*2.6);flex:1 0 auto;grid-template-columns:minmax(0,.95fr) minmax(0,1.3fr);align-items:start;display:grid}.gfr .report-book.portrait .prof2{gap:calc(var(--u)*1.2);grid-template-columns:1fr}.gfr .gal{grid-template-columns:repeat(var(--cols,2),minmax(0,1fr));gap:calc(var(--u)*var(--gap,1.4)) calc(var(--u)*var(--gap,1.4));padding-top:calc(var(--u)*.8);align-content:start;display:grid}.gfr .gal .report-photo{padding:calc(var(--u)*.55) calc(var(--u)*.55) calc(var(--u)*2.1)}.gfr .gal .im{aspect-ratio:4/3;background:#eadcc6;overflow:hidden}.gfr .gal.one .im{aspect-ratio:4/3}.gfr .gal .cap{font-size:calc(var(--u)*1.1);bottom:calc(var(--u)*.45)}.gfr .gal .pin{top:calc(var(--u)*-.5);width:calc(var(--u)*1.1);height:calc(var(--u)*1.1);z-index:3;background:radial-gradient(circle at 35% 30%,#fff 0,var(--pink) 45%,#a93556 100%);border-radius:50%;position:absolute;left:50%;transform:translate(-50%);box-shadow:1px 2px 2px #00000040}.gfr .gal .clip{top:calc(var(--u)*-1.2);width:calc(var(--u)*1.4);height:calc(var(--u)*3.6);z-index:3;position:absolute;right:16%}.gfr .gal-note{font:700 calc(var(--u)*1.25)/1.2 var(--hand);color:var(--red);margin-top:calc(var(--u)*.6);text-align:right}.gfr .prof{gap:calc(var(--u)*3);flex:1;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);align-items:start;display:grid}.gfr .report-book.portrait .prof{gap:calc(var(--u)*1.6);grid-template-columns:1fr}.gfr .report-photo{background:#fffdf8;padding:8px;position:relative;box-shadow:0 10px 20px #28190f29,0 2px 5px #28190f1a}.gfr .report-photo img{object-fit:cover;width:100%;height:100%;display:block}.gfr .report-photo.taped:before{content:"";z-index:2;background:#f4c95dd1;width:62px;height:18px;position:absolute;top:-10px;left:50%;transform:translate(-50%)rotate(-2deg);box-shadow:0 2px 3px #321e0f14}.gfr .report-photo.polaroid{padding:10px 10px 34px}.gfr .report-photo.rotate-left{transform:rotate(-3deg)}.gfr .report-photo.rotate-right{transform:rotate(3deg)}.gfr .prof .report-photo{padding:calc(var(--u)*.8) calc(var(--u)*.8) calc(var(--u)*3)}.gfr .prof .report-photo .im{aspect-ratio:4/5;background:#f2e6d3;overflow:hidden}.gfr .report-book.portrait .prof .report-photo{width:52%;margin:0 auto}.gfr .report-photo .cap{left:0;right:0;bottom:calc(var(--u)*.7);text-align:center;font:700 calc(var(--u)*1.3)/1 var(--hand);color:var(--navy);position:absolute}.gfr .ph-default{background:linear-gradient(160deg,#fce3e8,#e9e2fb 55%,#ddf0fa);place-items:center;width:100%;height:100%;display:grid}.gfr .ph-default svg{width:58%}.gfr .k-tb{border-collapse:collapse;width:100%;font-size:calc(var(--u)*1.12)}.gfr .k-tb th,.gfr .k-tb td{border-bottom:1px solid var(--rule);padding:calc(var(--u)*.62) calc(var(--u)*.5);text-align:left;vertical-align:baseline}.gfr .k-tb th{width:38%;font:700 calc(var(--u)*.72) var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.gfr .k-tb .fill{font-size:calc(var(--u)*1.7)}.gfr .status-chip{padding:calc(var(--u)*.15) calc(var(--u)*.7);color:#2f7d62;font:700 calc(var(--u)*.78) var(--sans);letter-spacing:.1em;text-transform:uppercase;background:#78c9ad40;border-radius:999px;display:inline-block}.gfr .acad{border-collapse:collapse;width:100%;font-size:calc(var(--u)*1.06);table-layout:fixed}.gfr .acad th,.gfr .acad td{padding:calc(var(--u)*.42) calc(var(--u)*.6);border-bottom:1px solid var(--rule);text-align:left;vertical-align:middle}.gfr .acad thead th{font:700 calc(var(--u)*.66) var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#fff;background:var(--navy);padding-top:calc(var(--u)*.55);padding-bottom:calc(var(--u)*.55)}.gfr .acad thead th:first-child{border-radius:3px 0 0}.gfr .acad thead th:last-child{border-radius:0 3px 0 0}.gfr .acad tbody tr:nth-child(2n) td{background:#72bce812}.gfr .acad .n{text-align:center;font-variant-numeric:tabular-nums}.gfr .acad .subj{font-weight:600}.gfr .acad .gr{text-align:center;font:700 calc(var(--u)*1.55)/1 var(--hand);color:var(--red)}.gfr .acad .tn{font:italic calc(var(--u)*.9)/1.25 var(--serif);color:var(--muted)}.gfr .acad col.c-max{width:8%}.gfr .acad col.c-obt{width:10%}.gfr .acad col.c-gr{width:9%}.gfr .acad col.c-tn{width:30%}.gfr .acad.no-notes col.c-tn,.gfr .acad.no-notes .tn,.gfr .acad.no-notes .tn-h,.gfr .report-book.portrait .acad col.c-tn,.gfr .report-book.portrait .acad .tn,.gfr .report-book.portrait .acad .tn-h{display:none}.gfr .report-book.portrait .acad col.c-max{width:13%}.gfr .report-book.portrait .acad col.c-obt{width:15%}.gfr .report-book.portrait .acad col.c-gr{width:14%}.gfr .acad-more{font-size:calc(var(--u)*.8);color:var(--muted);margin-top:calc(var(--u)*.3)}.gfr .summary{gap:calc(var(--u)*1);margin-top:calc(var(--u)*1.1);grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;display:grid}.gfr .sum{border:1.5px solid var(--rule);padding:calc(var(--u)*.55) calc(var(--u)*.9);background:#ffffff8c;border-radius:4px;position:relative}.gfr .sum>span{font:700 calc(var(--u)*.62) var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);display:block}.gfr .sum b{font:700 calc(var(--u)*1.7)/1.15 var(--serif);color:var(--navy);display:block}.gfr .sum.og{border-color:var(--pink);background:#ed5c790f}.gfr .circ{padding:0 calc(var(--u)*.8);display:inline-block;position:relative}.gfr .circ svg{pointer-events:none;width:136%;height:156%;position:absolute;inset:-28% -18%;overflow:visible}.gfr .circ path{fill:none;stroke:var(--red);stroke-width:1.7px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}.gfr .circ .g{color:var(--red);font-family:var(--hand);font-size:1.25em;display:inline-block}.gfr .annot{z-index:2;font:700 calc(var(--u)*1.5)/1 var(--hand);color:var(--red);white-space:nowrap;position:absolute;transform:rotate(-6deg)}.gfr .annot.flow{margin:calc(var(--u)*.9) calc(var(--u)*1) 0 0;align-self:flex-end;position:static}.gfr .annot svg{width:calc(var(--u)*2.4);vertical-align:middle;height:auto;margin-left:calc(var(--u)*.2);display:inline-block}.gfr .p4{gap:calc(var(--u)*1.5) calc(var(--u)*2.6);flex:1 0 auto;grid-template:"aw rv""tl tl""mo mo"1fr/minmax(0,1.32fr) minmax(0,1fr);align-content:space-between;display:grid}.gfr .p4-awards{grid-area:aw}.gfr .p4-review{flex-direction:column;grid-area:rv;display:flex}.gfr .p4-talents{grid-area:tl}.gfr .p4-moments{grid-area:mo}.gfr .p4 .awards{gap:calc(var(--u)*1) calc(var(--u)*1.2);grid-template-columns:repeat(2,minmax(0,1fr))}.gfr .p4 .aw{padding:calc(var(--u)*.8) calc(var(--u)*.9);gap:calc(var(--u)*.8)}.gfr .p4 .aw b{font-size:calc(var(--u)*.98)}.gfr .p4 .aw span{font-size:calc(var(--u)*.9)}.gfr .p4 .aw .ros{width:calc(var(--u)*3.9);height:calc(var(--u)*4.8)}.gfr .p4-review .notecard{margin-top:calc(var(--u)*.2);padding-bottom:calc(var(--u)*1.2);flex-direction:column;flex:1;display:flex}.gfr .p4-review .remark{flex:1}.gfr .p4-review .sigblock{margin:calc(var(--u)*.8) 0 0 auto;align-self:flex-end;width:max-content}.gfr .p4-talents{padding:calc(var(--u)*.9) calc(var(--u)*1.2);border-top:1.5px solid var(--rule);border-bottom:1.5px solid var(--rule);gap:calc(var(--u)*1.6);grid-template-columns:auto 1fr;align-items:center;margin:0;display:grid}.gfr .p4-talents h3{white-space:nowrap;padding:0}.gfr .p4-talents ul{gap:calc(var(--u)*.6) calc(var(--u)*1.6);grid-template-columns:repeat(3,minmax(0,1fr))}.gfr .p4-talents li{font-size:calc(var(--u)*1.08);line-height:1.35}.gfr .mo-row{align-items:center;gap:calc(var(--u)*2.2);padding:calc(var(--u)*.6) calc(var(--u)*.4) 0;display:flex}.gfr .mo-row .report-photo{width:calc(var(--u)*var(--mw,19));padding:calc(var(--u)*.7) calc(var(--u)*.7) calc(var(--u)*2.4);flex:0 auto}.gfr .mo-row .im{aspect-ratio:4/3;background:#eadcc6;overflow:hidden}.gfr .mo-row .cap{font-size:calc(var(--u)*1.15)}.gfr .mo-row .clip{top:calc(var(--u)*-1.2);width:calc(var(--u)*1.4);height:calc(var(--u)*3.6);z-index:3;position:absolute;right:16%}.gfr .mo-note{font:700 calc(var(--u)*1.55)/1.3 var(--hand);color:var(--red);min-width:calc(var(--u)*12);flex:1;transform:rotate(-2deg)}.gfr .report-book.portrait .p4{grid-template-columns:1fr;grid-template-areas:"aw""rv""tl""mo"}.gfr .report-book.portrait .p4-talents,.gfr .report-book.portrait .p4-talents ul{grid-template-columns:1fr}.gfr .hon2{gap:calc(var(--u)*2.4);flex:1 0 auto;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;display:grid}.gfr .report-book.portrait .hon2{gap:calc(var(--u)*1.2);grid-template-columns:1fr}.gfr .hon2 .awards{grid-template-columns:repeat(2,minmax(0,1fr))}.gfr .hon2 .notecard{margin-top:calc(var(--u)*.8)}.gfr .sub-h{font:700 calc(var(--u)*.7) var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--pink);margin-bottom:calc(var(--u)*.6)}.gfr .hon2 .sigblock{margin:calc(var(--u)*1) 0 0 auto;width:max-content}.gfr .awards{gap:calc(var(--u)*1) calc(var(--u)*1.4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.gfr .report-book.portrait .awards{grid-template-columns:repeat(2,minmax(0,1fr))}.gfr .aw{gap:calc(var(--u)*.7);padding:calc(var(--u)*.6) calc(var(--u)*.7);border:1px solid var(--rule);background:#ffffff8c;border-radius:4px;grid-template-columns:auto 1fr;align-items:center;display:grid}.gfr .report-book.portrait .aw{padding:calc(var(--u)*.5);grid-template-columns:auto 1fr}.gfr .report-book.portrait .hon2 .aw span{display:none}.gfr .aw .ros{width:calc(var(--u)*3.6);height:calc(var(--u)*4.4)}.gfr .aw b{font:700 calc(var(--u)*.9)/1.2 var(--serif);letter-spacing:.06em;text-transform:uppercase;color:var(--navy);display:block}.gfr .aw span{font:italic calc(var(--u)*.84)/1.3 var(--serif);color:var(--muted);margin-top:2px;display:block}.gfr .talents{margin-top:calc(var(--u)*1.2);gap:calc(var(--u)*.4) calc(var(--u)*1.2);grid-template-columns:auto 1fr;align-items:start;display:grid}.gfr .talents h3{font:700 calc(var(--u)*.7) var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--pink);padding-top:calc(var(--u)*.2)}.gfr .report-book.portrait .talents{grid-template-columns:1fr}.gfr .talents ul{gap:calc(var(--u)*.3);list-style:none;display:grid}.gfr .talents li{gap:calc(var(--u)*.6);font-size:calc(var(--u)*1.02);align-items:baseline;display:flex}.gfr .tick{width:calc(var(--u)*1.2);height:calc(var(--u)*1);flex:none;overflow:visible}.gfr .tick path{fill:none;stroke:var(--red);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.gfr .review{gap:calc(var(--u)*2);flex:1;grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.gfr .report-book.portrait .review{grid-template-columns:1fr}.gfr .notecard{padding:calc(var(--u)*1.4) calc(var(--u)*2) calc(var(--u)*1.2) calc(var(--u)*3);background:#fffdf7;background-image:linear-gradient(90deg,transparent calc(var(--u)*2.2),#ed5c7973 calc(var(--u)*2.2),#ed5c7973 calc(var(--u)*2.2 + 1px),transparent calc(var(--u)*2.2 + 1px)), repeating-linear-gradient(180deg,transparent 0 calc(var(--lh) - 1px),#72bce873 calc(var(--lh) - 1px) var(--lh));--lh:calc(var(--u)*2.6);background-position:0 calc(var(--u)*1.4);border-radius:3px;position:relative;box-shadow:0 6px 16px #28190f1f}.gfr .notecard:before{content:"";background:#9c82e88c;width:70px;height:18px;position:absolute;top:-9px;left:30%;transform:rotate(-3deg)}.gfr .remark{font:600 calc(var(--u)*1.75)/var(--lh) var(--hand);color:#283c78}.gfr .remark p+p{margin-top:var(--lh)}.gfr .sigblock{text-align:center;min-width:calc(var(--u)*14);align-self:end}.gfr .report-book.portrait .sigblock{justify-self:end}.gfr .sigblock .sig{font:700 calc(var(--u)*2.6)/1 var(--hand);color:#283c78;padding:0 calc(var(--u)*.6) calc(var(--u)*.2)}.gfr .sigblock small{border-top:1px solid var(--ink);padding-top:calc(var(--u)*.3);font:700 calc(var(--u)*.66) var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);display:block}.gfr .mem{gap:calc(var(--u)*1.6);padding:calc(var(--u)*.6) calc(var(--u)*1);flex:1;place-items:center;display:grid;position:relative}.gfr .mem .report-photo{padding:calc(var(--u)*.7) calc(var(--u)*.7) calc(var(--u)*2.6);width:100%}.gfr .mem .report-photo .im{aspect-ratio:4/3;background:#f2e6d3;overflow:hidden}.gfr .mem .cap{font-size:calc(var(--u)*1.2)}.gfr .mem.n1{grid-template-columns:minmax(0,.62fr)}.gfr .mem.n1 .im{aspect-ratio:3/2}.gfr .mem.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.gfr .mem.n3{grid-template-columns:repeat(3,minmax(0,1fr))}.gfr .mem.n4,.gfr .mem.n5,.gfr .mem.n6{gap:calc(var(--u)*1.1);grid-template-columns:repeat(3,minmax(0,1fr))}.gfr .mem.n4{grid-template-columns:repeat(4,minmax(0,1fr))}.gfr .report-book.portrait .mem.n1{grid-template-columns:minmax(0,.9fr)}.gfr .report-book.portrait .mem.n2,.gfr .report-book.portrait .mem.n3,.gfr .report-book.portrait .mem.n4,.gfr .report-book.portrait .mem.n5,.gfr .report-book.portrait .mem.n6{grid-template-columns:repeat(2,minmax(0,1fr))}.gfr .report-book.portrait .mem.n3 .report-photo:last-child{grid-column:1/-1;width:55%}.gfr .mem .clip{top:calc(var(--u)*-1.2);width:calc(var(--u)*1.4);height:calc(var(--u)*3.6);z-index:3;position:absolute;right:16%}.gfr .mem .pin{top:calc(var(--u)*-.5);width:calc(var(--u)*1.1);height:calc(var(--u)*1.1);z-index:3;background:radial-gradient(circle at 35% 30%,#fff 0,var(--pink) 45%,#a93556 100%);border-radius:50%;position:absolute;left:50%;transform:translate(-50%);box-shadow:1px 2px 2px #00000040}.gfr .ph-wash{place-items:center;width:100%;height:100%;display:grid}.gfr .ph-wash svg{opacity:.9;width:46%}.gfr .mem-note{font:700 calc(var(--u)*1.45)/1.2 var(--hand);color:var(--red);text-align:center;margin-top:calc(var(--u)*.2)}.gfr .verdict{gap:calc(var(--u)*3);flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;display:grid}.gfr .report-book.portrait .verdict{gap:calc(var(--u)*1.2);grid-template-columns:1fr;align-items:start}.gfr .v-grade{text-align:center}.gfr .v-grade span,.gfr .v-row span{font:700 calc(var(--u)*.7) var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);display:block}.gfr .v-big{font:700 calc(var(--u)*8)/1 var(--hand);color:var(--red);margin:calc(var(--u)*.2) 0;display:inline-block}.gfr .report-book.portrait .v-big{font-size:calc(var(--u)*6)}.gfr .v-row{margin-top:calc(var(--u)*.8)}.gfr .v-row b{font:800 calc(var(--u)*1.6)/1.15 var(--serif);letter-spacing:.06em;text-transform:uppercase;color:var(--navy);display:block}.gfr .v-row b.ex{color:var(--pink)}.gfr .v-elig{font:italic calc(var(--u)*1) var(--serif);color:var(--muted);margin-top:calc(var(--u)*.6)}.gfr .v-photo{right:calc(var(--u)*5);top:calc(var(--u)*6.6);width:calc(var(--u)*10);position:absolute;transform:rotate(5deg)}.gfr .v-msg{font:italic 400 calc(var(--u)*1.75)/1.45 var(--serif);color:var(--ink);white-space:pre-line}.gfr .seals{gap:calc(var(--u)*2.4);margin-top:calc(var(--u)*1.4);align-items:flex-end;display:flex}.gfr .seal-slot{text-align:center}.gfr .seal-slot .seal{width:calc(var(--u)*8.2);height:calc(var(--u)*8.2);color:var(--red);opacity:.86;mix-blend-mode:multiply;margin:0 auto;transform:rotate(-8deg)}.gfr .seal-slot:nth-child(2) .seal{color:#7c5bd6;transform:rotate(7deg)}.gfr .seal-slot small{margin-top:calc(var(--u)*.5);font:700 calc(var(--u)*.6) var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:block}.gfr .keep{margin-top:calc(var(--u)*1.4);cursor:pointer;padding:calc(var(--u)*.8) calc(var(--u)*1.8);background:var(--navy);color:#fff;font:700 calc(var(--u)*.85) var(--sans);letter-spacing:.18em;text-transform:uppercase;border:0;border-radius:999px;align-items:center;gap:8px;min-height:40px;display:inline-flex;box-shadow:0 6px 14px -6px #263a6399}.gfr .keep.kept{background:var(--pink)}.gfr .keep .h{display:inline-block}.gfr .keep.kept .h{animation:1.6s ease-in-out 2 gfr-pulse}@keyframes gfr-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}.gfr .pending{opacity:0!important;visibility:hidden!important}.gfr .pending-write{clip-path:inset(-20px 100% -20px -20px)}.gfr .pending-path path{stroke-dashoffset:1px}.gfr .settle{animation:gfr-settle .55s var(--ease) backwards}@keyframes gfr-settle{0%{opacity:0;transform:translateY(-10px) scale(1.06) rotate(var(--r,0deg));filter:drop-shadow(0 18px 14px #28140a40)}}.gfr .stamper{z-index:9;pointer-events:none;opacity:0;background:radial-gradient(circle at 36% 30%,#6a4e3c 0,#3e2e25 55%,#261c17 100%);border-radius:50%;position:absolute}.gfr .stamper.rect{background:linear-gradient(160deg,#6a4e3c,#3e2e25 50%,#261c17);border-radius:6px}.gfr .stamper:after{content:"";aspect-ratio:1;background:radial-gradient(circle at 34% 28%,#9a8070 0,#4a382e 60%,#2e231d 100%);border-radius:50%;width:32%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 3px 5px #0006}.gfr .stamper.rect:after{width:auto;height:56%}.gfr .curl{z-index:5;pointer-events:none;perspective:2600px;perspective-origin:0;clip-path:inset(-60% -60% -60% 0);position:absolute;inset:0}.gfr .curl-strip{height:100%;transform-style:preserve-3d;transform-origin:0;position:absolute;top:0}.gfr .curl-face{backface-visibility:hidden;background:#fffaf0;width:calc(100% + 1px);position:absolute;inset:0;overflow:hidden}.gfr .curl-back{background:#f6eedd var(--grain);transform:rotateY(180deg)}.gfr .curl-edge>.curl-face{box-shadow:inset -1px 0 #ffffffe6,inset -2.5px 0 #5a402633}.gfr .curl-shade{opacity:0;pointer-events:none;background:#2a1a0e;position:absolute;inset:0}.gfr .turn-cast{z-index:4;pointer-events:none;opacity:0;border-radius:inherit;background:linear-gradient(90deg,#28160c52 0,#28160c1f 30%,#28160c00 70%);position:absolute;inset:0}.gfr .page-turn-forward{transform-origin:0;animation:.78s cubic-bezier(.2,.72,.2,1) gfr-girlfriendPageForward}.gfr .page-turn-back{transform-origin:100%;animation:.78s cubic-bezier(.2,.72,.2,1) gfr-girlfriendPageBack}@keyframes gfr-girlfriendPageForward{0%{transform:rotateY(0)skewY(0)scaleX(1)}35%{transform:rotateY(-42deg)skewY(1.4deg)scaleX(.96)}68%{transform:rotateY(-78deg)skewY(2deg)scaleX(.91)}to{transform:rotateY(-180deg)skewY(0)scaleX(.98)}}@keyframes gfr-girlfriendPageBack{0%{transform:rotateY(-180deg)skewY(0)scaleX(.98)}35%{transform:rotateY(-125deg)skewY(-1.4deg)scaleX(.94)}70%{transform:rotateY(-55deg)skewY(-2deg)scaleX(.91)}to{transform:rotateY(0)skewY(0)scaleX(1)}}.gfr .rotate{z-index:80;text-align:center;color:var(--navy);background:radial-gradient(at 50% 40%,#fff0def0,#ffece2f7);place-items:center;padding:24px;display:none;position:absolute;inset:0}.gfr.need-rotate .rotate{display:grid}.gfr .rotate .ph{border:3px solid var(--navy);border-radius:12px;width:64px;height:96px;margin:0 auto 18px;animation:2.4s ease-in-out infinite gfr-tilt;position:relative}.gfr .rotate .ph:after{content:"";background:var(--navy);border-radius:2px;width:14px;height:3px;margin-left:-7px;position:absolute;bottom:6px;left:50%}@keyframes gfr-tilt{0%,25%{transform:rotate(0)}55%,85%{transform:rotate(-90deg)}to{transform:rotate(0)}}.gfr .rotate b{font:700 1.25rem/1.25 var(--serif);max-width:15em;margin:0 auto;display:block}.gfr .rotate span{color:var(--muted);margin-top:6px;font-size:.9rem;display:block}.gfr .rotate button{color:var(--muted);font:600 .82rem var(--sans);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;min-height:44px;margin-top:22px;text-decoration:underline}@media (prefers-reduced-motion:reduce){.gfr .rotate .ph{animation:none;transform:rotate(-90deg)}}@container (max-height:520px) and (orientation:landscape){.gfr .gf-nav{height:44px}.gfr .nav-btn{min-height:38px;padding:4px 14px;font-size:.66rem}.gfr .snd-btn{min-width:38px;min-height:38px}.gfr .back-edit{padding:6px 10px;font-size:.7rem;top:6px;left:6px}}.gfr .gf-nav{z-index:40;height:58px;padding-bottom:env(safe-area-inset-bottom);flex:none;justify-content:center;align-items:center;gap:clamp(10px,4cqw,34px);display:flex;position:relative}.gfr .nav-btn{cursor:pointer;min-height:44px;color:var(--navy);font:700 .74rem var(--sans);letter-spacing:.16em;text-transform:uppercase;background:#fffaf0e6;border:0;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;transition:opacity .2s,transform .15s;display:inline-flex;box-shadow:0 4px 12px -4px #28140a80}.gfr .nav-btn:hover:not(:disabled){transform:translateY(-1px)}.gfr .nav-btn:disabled{opacity:.35;cursor:default}.gfr .nav-btn span{font:400 1.05rem var(--serif);letter-spacing:0}.gfr .snd-btn{cursor:pointer;min-width:44px;min-height:44px;color:var(--navy);font:600 .9rem var(--sans);background:#fffaf0e6;border:0;border-radius:999px;padding:0 12px;box-shadow:0 4px 12px -4px #28140a80}.gfr .snd-btn[aria-pressed=false]{opacity:.65}.gfr .pg-ind{font:700 .82rem var(--serif);color:#fff4e2;letter-spacing:.12em;text-align:center;text-shadow:0 1px 2px #00000059;min-width:50px}@container (max-width:1100px){.gfr .report-book{width:88cqw}}@container (max-width:700px){.gfr .girlfriend-scene{min-height:100cqh}.gfr .desk-flower{width:24cqw;left:-2%}.gfr .desk-books{width:25cqw;right:-2%}.gfr .desk-candle{width:15cqw;right:1%}.gfr .desk-polaroid{width:18cqw;left:1%}.gfr .desk-ink{width:15cqw;right:12%}.gfr .desk-quill{width:28cqw;right:0}.gfr .desk-quill.is-writing{transform:translate(-18cqw,-8cqw)rotate(-30deg)}.gfr .nav-btn{padding:8px 12px;font-size:.68rem}}@media (prefers-reduced-motion:reduce){.gfr .desk-quill,.gfr .report-page{transition:none!important;animation-duration:1ms!important;animation-iteration-count:1!important}.gfr .desk-quill.is-inking,.gfr .desk-quill.is-writing{transform:none}.gfr .settle,.gfr .keep.kept .h{animation:none}}:where(.gfr-host){min-height:100dvh}[data-card-screen]>.gfr-host{min-height:100%}.gfr-host{width:100%;position:relative;overflow:hidden}.gfr{position:absolute;inset:0;overflow:hidden;container-type:size}.gfr .env .for{margin-bottom:6px}.gfr .env .from{font:500 .8rem var(--sans);color:var(--muted);margin-bottom:18px}.gfr .env .from b{color:var(--navy);font-weight:700}.gfr .env .env-photo{background:#fff;border-radius:2px;width:clamp(72px,22cqw,104px);margin:0;padding:5px 5px 16px;position:absolute;top:-22px;left:-16px;transform:rotate(-9deg);box-shadow:0 8px 18px -8px #28141480}.gfr .env .env-photo img{aspect-ratio:1;object-fit:cover;width:100%;display:block}
